From ee6702e5e007ee1fd291c79309a5f6cb8389b6a0 Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Wed, 26 Apr 2017 12:19:21 -0700 Subject: [PATCH] Support indexing 1-entry Seqs It's a zero-width wire special case. Closes #706. --- src/main/scala/util/Package.scala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/scala/util/Package.scala b/src/main/scala/util/Package.scala index 85667677..33907996 100644 --- a/src/main/scala/util/Package.scala +++ b/src/main/scala/util/Package.scala @@ -11,7 +11,9 @@ package object util { implicit class SeqToAugmentedSeq[T <: Data](val x: Seq[T]) extends AnyVal { def apply(idx: UInt): T = { - if (!isPow2(x.size)) { + if (x.size == 1) { + x.head + } else if (!isPow2(x.size)) { // For non-power-of-2 seqs, reflect elements to simplify decoder (x ++ x.takeRight(x.size & -x.size)).toSeq(idx) } else {