|
| 1 | +package test_module |
| 2 | + |
| 3 | +file_number 0 "test_module.x" |
| 4 | + |
| 5 | +proc __test_module__Loopback__32_next<_c_in: bits[32] in, _c_out: bits[32] out>() { |
| 6 | + chan_interface _c_in(direction=receive, kind=streaming, strictness=proven_mutually_exclusive, flow_control=ready_valid, flop_kind=none) |
| 7 | + chan_interface _c_out(direction=send, kind=streaming, strictness=proven_mutually_exclusive, flow_control=ready_valid, flop_kind=none) |
| 8 | + after_all.3: token = after_all(id=3) |
| 9 | + literal.2: bits[1] = literal(value=1, id=2) |
| 10 | + receive.4: (token, bits[32]) = receive(after_all.3, predicate=literal.2, channel=_c_in, id=4) |
| 11 | + t: token = tuple_index(receive.4, index=0, id=6) |
| 12 | + val: bits[32] = tuple_index(receive.4, index=1, id=7) |
| 13 | + __token: token = literal(value=token, id=1) |
| 14 | + tuple_index.5: token = tuple_index(receive.4, index=0, id=5) |
| 15 | + send.8: token = send(t, val, predicate=literal.2, channel=_c_out, id=8) |
| 16 | + tuple.9: () = tuple(id=9) |
| 17 | +} |
| 18 | + |
| 19 | +proc __test_module__Main_next<_c_in: bits[32] in, _c_out: bits[32] out>(__i: bits[32], init={1}) { |
| 20 | + chan_interface _c_in(direction=receive, kind=streaming, strictness=proven_mutually_exclusive, flow_control=ready_valid, flop_kind=none) |
| 21 | + chan_interface _c_out(direction=send, kind=streaming, strictness=proven_mutually_exclusive, flow_control=ready_valid, flop_kind=none) |
| 22 | + chan _loopback_to_main(bits[32], id=0, kind=streaming, ops=send_receive, flow_control=ready_valid, strictness=proven_mutually_exclusive) |
| 23 | + chan_interface _loopback_to_main(direction=send, kind=streaming, strictness=proven_mutually_exclusive, flow_control=none, flop_kind=none) |
| 24 | + chan_interface _loopback_to_main(direction=receive, kind=streaming, strictness=proven_mutually_exclusive, flow_control=none, flop_kind=none) |
| 25 | + chan _main_to_loopback(bits[32], id=1, kind=streaming, ops=send_receive, flow_control=ready_valid, strictness=proven_mutually_exclusive) |
| 26 | + chan_interface _main_to_loopback(direction=send, kind=streaming, strictness=proven_mutually_exclusive, flow_control=none, flop_kind=none) |
| 27 | + chan_interface _main_to_loopback(direction=receive, kind=streaming, strictness=proven_mutually_exclusive, flow_control=none, flop_kind=none) |
| 28 | + proc_instantiation __test_module__Loopback__32_next_inst(_main_to_loopback, _loopback_to_main, proc=__test_module__Loopback__32_next) |
| 29 | + after_all.23: token = after_all(id=23) |
| 30 | + literal.11: bits[1] = literal(value=1, id=11) |
| 31 | + receive.24: (token, bits[32]) = receive(after_all.23, predicate=literal.11, channel=_c_in, id=24) |
| 32 | + after_all.28: token = after_all(id=28) |
| 33 | + j: bits[32] = tuple_index(receive.24, index=1, id=27) |
| 34 | + literal.12: bits[1] = literal(value=0, id=12) |
| 35 | + loopback_tok: token = send(after_all.28, j, predicate=literal.11, channel=_main_to_loopback, id=29) |
| 36 | + not.15: bits[1] = not(literal.11, id=15) |
| 37 | + not.16: bits[1] = not(literal.12, id=16) |
| 38 | + __i__1: bits[32] = state_read(state_element=__i, predicate=literal.11, id=20) |
| 39 | + receive.30: (token, bits[32]) = receive(loopback_tok, predicate=literal.11, channel=_loopback_to_main, id=30) |
| 40 | + __token: token = literal(value=token, id=10) |
| 41 | + or.17: bits[1] = or(not.15, not.16, id=17) |
| 42 | + not.38: bits[1] = not(literal.11, id=38) |
| 43 | + or.19: bits[1] = or(literal.12, literal.11, id=19) |
| 44 | + literal.13: bits[1] = literal(value=0, id=13) |
| 45 | + i_val: bits[32] = identity(__i__1, id=21) |
| 46 | + loopback_val: bits[32] = tuple_index(receive.30, index=1, id=33) |
| 47 | + assert.18: token = assert(__token, or.17, message="State element read after read in same activation.", id=18) |
| 48 | + or.39: bits[1] = or(not.38, or.19, id=39) |
| 49 | + not.41: bits[1] = not(literal.11, id=41) |
| 50 | + not.42: bits[1] = not(literal.13, id=42) |
| 51 | + after_all.34: token = after_all(id=34) |
| 52 | + add.35: bits[32] = add(i_val, loopback_val, id=35) |
| 53 | + assert.40: token = assert(assert.18, or.39, message="State element written before read in same activation.", id=40) |
| 54 | + or.43: bits[1] = or(not.41, not.42, id=43) |
| 55 | + __i: bits[32] = state_read(state_element=__i, id=14) |
| 56 | + add.37: bits[32] = add(i_val, loopback_val, id=37) |
| 57 | + or.22: bits[1] = or(literal.12, literal.11, id=22) |
| 58 | + tuple_index.25: token = tuple_index(receive.24, index=0, id=25) |
| 59 | + tuple_index.26: token = tuple_index(receive.24, index=0, id=26) |
| 60 | + tuple_index.31: token = tuple_index(receive.30, index=0, id=31) |
| 61 | + tuple_index.32: token = tuple_index(receive.30, index=0, id=32) |
| 62 | + send.36: token = send(after_all.34, add.35, predicate=literal.11, channel=_c_out, id=36) |
| 63 | + assert.44: token = assert(assert.40, or.43, message="State element written after write in same activation.", id=44) |
| 64 | + or.45: bits[1] = or(literal.13, literal.11, id=45) |
| 65 | + next_value.46: () = next_value(param=__i, value=add.37, predicate=literal.11, id=46) |
| 66 | + tuple.47: () = tuple(id=47) |
| 67 | + tuple.48: () = tuple(id=48) |
| 68 | +} |
0 commit comments