summaryrefslogtreecommitdiff
path: root/src/main/scala/chisel3/util/OneHot.scala
diff options
context:
space:
mode:
authorWesley W. Terpstra2018-06-18 19:40:17 +0200
committerJack Koenig2018-06-18 10:40:17 -0700
commit4cccd877c25116a1f0b90824aabfc689d7fe50ea (patch)
tree6edf8b11b877995534bd202ecd95ccb2eb83468c /src/main/scala/chisel3/util/OneHot.scala
parentd0cdd3b4c3713bb7454868fac7fa9c43bae2332c (diff)
Fixed UIntToOH(x, 1) invocation with x.width == 0 (#778)
Diffstat (limited to 'src/main/scala/chisel3/util/OneHot.scala')
-rw-r--r--src/main/scala/chisel3/util/OneHot.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/main/scala/chisel3/util/OneHot.scala b/src/main/scala/chisel3/util/OneHot.scala
index 8a0bb9fc..a6af0d99 100644
--- a/src/main/scala/chisel3/util/OneHot.scala
+++ b/src/main/scala/chisel3/util/OneHot.scala
@@ -45,9 +45,10 @@ object UIntToOH {
def apply(in: UInt): UInt = 1.U << in
def apply(in: UInt, width: Int): UInt = width match {
case 0 => 0.U(0.W)
+ case 1 => 1.U(1.W)
case _ =>
val shiftAmountWidth = log2Ceil(width)
- val shiftAmount = in.pad(shiftAmountWidth)((shiftAmountWidth - 1) max 0, 0)
+ val shiftAmount = in.pad(shiftAmountWidth)(shiftAmountWidth - 1, 0)
(1.U << shiftAmount)(width - 1, 0)
}
}