aboutsummaryrefslogtreecommitdiff
path: root/test/passes/initialize-register/when.fir
blob: e4749abe5c603041789f47780dca21c715160abf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
; RUN: firrtl %s abcd | tee %s.out | FileCheck %s 
; CHECK: circuit top :
         circuit top :
            module top :
               input a : UInt(16)
               input b : UInt(16)
               output z : UInt
               when greater(1, 2) :
                  reg r1: UInt
                  r1.init := UInt(12)
; CHECK:          wire [[R1:gen[0-9]*]] : UInt
; CHECK-NOT:      reg:r1 := n:[[R1]]
; CHECK:          n:[[R1]] := Null
; CHECK:          n:[[R1]] := UInt(12)
; CHECK-NOT:      r1.init := UInt(12)
                  reg r2: UInt
; CHECK:          wire [[R2:gen[0-9]*]] : UInt
; CHECK-NOT:      reg:r2 := n:[[R2]]
; CHECK:          n:[[R2]] := Null

; CHECK:          when port:reset :
; CHECK-DAG:         reg:r2 := n:[[R2]]
; CHECK-DAG:         reg:r1 := n:[[R1]]
               else :
                  reg r1: UInt
                  r1.init := UInt(12)
; CHECK:          wire [[R1:gen[0-9]*]] : UInt
; CHECK-NOT:      reg:r1 := n:[[R1]]
; CHECK:          n:[[R1]] := Null
; CHECK:          n:[[R1]] := UInt(12)
; CHECK-NOT:      r1.init := UInt(12)

                  reg r2: UInt
; CHECK:          wire [[R2:gen[0-9]*]] : UInt
; CHECK-NOT:      reg:r2 := n:[[R2]]
; CHECK:          n:[[R2]] := Null

; CHECK:          when port:reset :
; CHECK-DAG:         reg:r2 := n:[[R2]]
; CHECK-DAG:         reg:r1 := n:[[R1]]