aboutsummaryrefslogtreecommitdiff
path: root/test/passes/lower-to-ground/accessor.fir
blob: 296632346d18d78922000a29610f4742ed439015 (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
; RUN: firrtl -i %s -o %s.flo -X flo -p cd | tee %s.out | FileCheck %s

; CHECK: Lower To Ground
circuit top :
   module top :
      wire i : UInt<2>
      wire j : UInt<32>

      wire a : UInt<32>[4]
      ; CHECK: wire a$0 : UInt<32>
      ; CHECK: wire a$1 : UInt<32>
      ; CHECK: wire a$2 : UInt<32>
      ; CHECK: wire a$3 : UInt<32>

      accessor b = a[i]
      ; CHECK: wire b : UInt<32>
      ; CHECK: b := (a$0 a$1 a$2 a$3)[i]
      j := b

      accessor c = a[i]
      ; CHECK: wire c : UInt<32>
      ; CHECK: (a$0 a$1 a$2 a$3)[i] := c
      c := j
      
      mem p : UInt<32>[4]
      accessor t = p[i]
      ; CHECK: accessor t = p[i]
      j := t
      accessor r = p[i]
      ; CHECK: accessor r = p[i]
      r := j

; CHECK: Finished Lower To Ground