blob: e0175f345786d1fabf31f45f58180cf0f77b6b7e (
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
41
|
; RUN: firrtl -i %s -o %s.v -X verilog -p cdg 2>&1 | tee %s.out | FileCheck %s
circuit top :
module source :
output data : UInt<16>
input ready : UInt<1>
data <= UInt(16)
module sink :
input data : UInt<16>
output ready : UInt<1>
ready <= UInt(1)
module top:
wire connect : { data : UInt<16>, flip ready: UInt<1> }
connect.ready <= UInt(1)
connect.data <= UInt(1)
wire connect2 : { flip data : UInt<16>, ready: UInt<1> }
connect2.ready <= UInt(1)
connect2.data <= UInt(1)
inst src of source
inst snk of sink
connect <= src
connect2 <= snk
; CHECK: Resolve Genders
; CHECK: connect@<g:f> <= src@<g:m>
; CHECK: connect2@<g:f> <= snk@<g:m>
; CHECK: Finished Resolve Genders
; CHECK: Lower Types
; CHECK: connect{{[_$]+}}data@<g:f> <= src@<g:m>.data@<g:m>
; CHECK: connect2{{[_$]+}}ready@<g:f> <= snk@<g:m>.ready@<g:m>
; CHECK: src@<g:m>.ready@<g:f> <= connect{{[_$]+}}ready@<g:m>
; CHECK: snk@<g:m>.data@<g:f> <= connect2{{[_$]+}}data@<g:m>
; CHECK: Finished Lower Types
; CHECK: Done!
|