From cde7c9d869b55a6ae8a09ee66e407200d96e38a9 Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Fri, 3 Oct 2014 14:31:01 -0700 Subject: [PATCH] simplify CSR decoding code --- rocket/src/main/scala/csr.scala | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/rocket/src/main/scala/csr.scala b/rocket/src/main/scala/csr.scala index b1e76254..590752e5 100644 --- a/rocket/src/main/scala/csr.scala +++ b/rocket/src/main/scala/csr.scala @@ -113,10 +113,7 @@ class CSRFile extends Module val map = for ((v, i) <- CSRs.all.zipWithIndex) yield v -> UInt(BigInt(1) << i) val out = ROM(map)(addr) - val a = Array.fill(CSRs.all.max+1)(null.asInstanceOf[Bool]) - for (i <- 0 until CSRs.all.size) - a(CSRs.all(i)) = out(i) - a + Map((CSRs.all zip out.toBools):_*) } val wen = cpu_req_valid || host_pcr_req_fire && host_pcr_bits.rw