aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/chirrtl/wacc-wdc.fir67
1 files changed, 43 insertions, 24 deletions
diff --git a/test/chirrtl/wacc-wdc.fir b/test/chirrtl/wacc-wdc.fir
index 32b61c3b..11afdd31 100644
--- a/test/chirrtl/wacc-wdc.fir
+++ b/test/chirrtl/wacc-wdc.fir
@@ -3,35 +3,54 @@ circuit top :
module top :
input clk : Clock
wire p : UInt
- cmem m : UInt<4>[10]
+ wire q : UInt
+ cmem m : {a:UInt<4>,b:UInt<4>}[10]
p <= UInt(1)
+ q <= UInt(1)
+ wire x : {a:UInt<4>,b:UInt<4>}
+ x.a <= UInt(1)
+ x.b <= UInt(1)
when p :
- write mport a = m[UInt(3)],clk,UInt(1)
- a <= UInt(2)
+ write mport a = m[UInt(3)],clk
+ when q :
+ a <= x
-; CHECK: To FIRRTL
-; CHECK: mem m :
-; CHECK: data-type: UInt<4>
-; CHECK: depth: 10
-; CHECK: write-latency: 1
-; CHECK: read-latency: 0
-; CHECK: writer: a
-; CHECK: poison GEN : UInt<4>
-; CHECK: poison GEN_1 : UInt<4>
-; CHECK: m.a.addr <= GEN
-; CHECK: m.a.clk <= clk
-; CHECK: m.a.en <= UInt("h0")
-; CHECK: m.a.data <= GEN_1
-; CHECK: m.a.mask <= UInt("h0")
-; CHECK: p <= UInt("h1")
-; CHECK: when p :
-; CHECK: m.a.addr <= UInt("h3")
-; CHECK: m.a.en <= UInt("h1")
-; CHECK: m.a.mask <= UInt("h1")
-; CHECK: m.a.data <= UInt("h2")
+; CHECK: Remove CHIRRTL
-; CHECK: Finished To FIRRTL
+; CHECK: circuit top :
+; CHECK: module top :
+; CHECK: input clk : Clock
+; CHECK: wire p : UInt
+; CHECK: wire q : UInt
+; CHECK: mem m :
+; CHECK: data-type: { a : UInt<4>, b : UInt<4>}
+; CHECK: depth: 10
+; CHECK: write-latency: 1
+; CHECK: read-latency: 0
+; CHECK: writer: a
+; CHECK: poison GEN : UInt<4>
+; CHECK: poison GEN_1 : { a : UInt<4>, b : UInt<4>}
+; CHECK: m.a.addr <= GEN
+; CHECK: m.a.clk <= clk
+; CHECK: m.a.en <= UInt("h0")
+; CHECK: m.a.data <= GEN_1
+; CHECK: m.a.mask.a <= UInt("h0")
+; CHECK: m.a.mask.b <= UInt("h0")
+; CHECK: p <= UInt("h1")
+; CHECK: q <= UInt("h1")
+; CHECK: wire x : { a : UInt<4>, b : UInt<4>}
+; CHECK: x.a <= UInt("h1")
+; CHECK: x.b <= UInt("h1")
+; CHECK: when p :
+; CHECK: m.a.addr <= UInt("h3")
+; CHECK: m.a.en <= UInt("h1")
+; CHECK: when q :
+; CHECK: m.a.data <= x
+; CHECK: m.a.mask.a <= UInt("h1")
+; CHECK: m.a.mask.b <= UInt("h1")
+
+; CHECK: Finished Remove CHIRRTL
; CHECK: Done!