aboutsummaryrefslogtreecommitdiff
path: root/test/passes/jacktest/LFSR16.fir
diff options
context:
space:
mode:
Diffstat (limited to 'test/passes/jacktest/LFSR16.fir')
-rw-r--r--test/passes/jacktest/LFSR16.fir21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/passes/jacktest/LFSR16.fir b/test/passes/jacktest/LFSR16.fir
new file mode 100644
index 00000000..f45002f5
--- /dev/null
+++ b/test/passes/jacktest/LFSR16.fir
@@ -0,0 +1,21 @@
+; RUN: firrtl -i %s -o %s.flo -X flo -p c | tee %s.out | FileCheck %s
+;CHECK: Done!
+circuit LFSR16 :
+ module LFSR16 :
+ output out : UInt<16>
+ input inc : UInt<1>
+
+ reg res : UInt<16>
+ on-reset res := UInt<16>(1)
+ when inc :
+ node T_16 = bit(res, 0)
+ node T_17 = bit(res, 2)
+ node T_18 = bit-xor(T_16, T_17)
+ node T_19 = bit(res, 3)
+ node T_20 = bit-xor(T_18, T_19)
+ node T_21 = bit(res, 5)
+ node T_22 = bit-xor(T_20, T_21)
+ node T_23 = bits(res, 15, 1)
+ node T_24 = cat(T_22, T_23)
+ res := T_24
+ out := res