aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/gna/issue1131
diff options
context:
space:
mode:
authorumarcor <unai.martinezcorral@ehu.eus>2021-04-23 01:42:48 +0200
committertgingold <tgingold@users.noreply.github.com>2021-04-23 20:38:47 +0200
commit1ef548dea6ad8f8e2b445dc96fe9eca1e5bcac88 (patch)
tree79dc323fc1dc3862ef71bcbabfe2d45552e5688b /testsuite/gna/issue1131
parent4a11f41e67adb67f7b29a4492ca3a2b8ddef2b91 (diff)
downloadghdl-1ef548dea6ad8f8e2b445dc96fe9eca1e5bcac88.tar.gz
ghdl-1ef548dea6ad8f8e2b445dc96fe9eca1e5bcac88.tar.bz2
ghdl-1ef548dea6ad8f8e2b445dc96fe9eca1e5bcac88.zip
testsuite/gna: cleanup ghw related issues
Diffstat (limited to 'testsuite/gna/issue1131')
-rw-r--r--testsuite/gna/issue1131/golden_dut.txt160
-rw-r--r--testsuite/gna/issue1131/golden_repro2.txt244
-rwxr-xr-xtestsuite/gna/issue1131/testsuite.sh13
3 files changed, 411 insertions, 6 deletions
diff --git a/testsuite/gna/issue1131/golden_dut.txt b/testsuite/gna/issue1131/golden_dut.txt
new file mode 100644
index 000000000..7ad93b03d
--- /dev/null
+++ b/testsuite/gna/issue1131/golden_dut.txt
@@ -0,0 +1,160 @@
+type std_ulogic is ('U', 'X', '0', '1', 'Z', 'W', 'L', 'H', '-'); -- WKT:3
+subtype std_logic is std_ulogic range 'U' to '-';
+type integer is range <>;
+subtype natural is integer range 0 to 2147483647;
+type std_ulogic_vector is array (natural range <>) of std_ulogic;
+subtype std_logic_vector is std_ulogic_vector;
+type bust is record
+ a: std_logic_vector;
+ f: std_logic_vector;
+end record;
+design
+ package standard:
+ package textio:
+ package std_logic_1164:
+ instance dut:
+ port-in clk: std_logic: #1
+ port-in reset: std_logic: #2
+ signal businst: bust(a (63 downto 0), f (3 downto 0)): #3-#70
+Time is 0 fs
+#1: 'U' (0)
+#2: 'U' (0)
+#3: 'U' (0)
+#4: 'U' (0)
+#5: 'U' (0)
+#6: 'U' (0)
+#7: 'U' (0)
+#8: 'U' (0)
+#9: 'U' (0)
+#10: 'U' (0)
+#11: 'U' (0)
+#12: 'U' (0)
+#13: 'U' (0)
+#14: 'U' (0)
+#15: 'U' (0)
+#16: 'U' (0)
+#17: 'U' (0)
+#18: 'U' (0)
+#19: 'U' (0)
+#20: 'U' (0)
+#21: 'U' (0)
+#22: 'U' (0)
+#23: 'U' (0)
+#24: 'U' (0)
+#25: 'U' (0)
+#26: 'U' (0)
+#27: 'U' (0)
+#28: 'U' (0)
+#29: 'U' (0)
+#30: 'U' (0)
+#31: 'U' (0)
+#32: 'U' (0)
+#33: 'U' (0)
+#34: 'U' (0)
+#35: 'U' (0)
+#36: 'U' (0)
+#37: 'U' (0)
+#38: 'U' (0)
+#39: 'U' (0)
+#40: 'U' (0)
+#41: 'U' (0)
+#42: 'U' (0)
+#43: 'U' (0)
+#44: 'U' (0)
+#45: 'U' (0)
+#46: 'U' (0)
+#47: 'U' (0)
+#48: 'U' (0)
+#49: 'U' (0)
+#50: 'U' (0)
+#51: 'U' (0)
+#52: 'U' (0)
+#53: 'U' (0)
+#54: 'U' (0)
+#55: 'U' (0)
+#56: 'U' (0)
+#57: 'U' (0)
+#58: 'U' (0)
+#59: 'U' (0)
+#60: 'U' (0)
+#61: 'U' (0)
+#62: 'U' (0)
+#63: 'U' (0)
+#64: 'U' (0)
+#65: 'U' (0)
+#66: 'U' (0)
+#67: 'U' (0)
+#68: 'U' (0)
+#69: 'U' (0)
+#70: 'U' (0)
+Time is 0 fs
+#1: 'U' (0)
+#2: 'U' (0)
+#3: 'U' (0)
+#4: 'U' (0)
+#5: 'U' (0)
+#6: 'U' (0)
+#7: 'U' (0)
+#8: 'U' (0)
+#9: 'U' (0)
+#10: 'U' (0)
+#11: 'U' (0)
+#12: 'U' (0)
+#13: 'U' (0)
+#14: 'U' (0)
+#15: 'U' (0)
+#16: 'U' (0)
+#17: 'U' (0)
+#18: 'U' (0)
+#19: 'U' (0)
+#20: 'U' (0)
+#21: 'U' (0)
+#22: 'U' (0)
+#23: 'U' (0)
+#24: 'U' (0)
+#25: 'U' (0)
+#26: 'U' (0)
+#27: 'U' (0)
+#28: 'U' (0)
+#29: 'U' (0)
+#30: 'U' (0)
+#31: 'U' (0)
+#32: 'U' (0)
+#33: 'U' (0)
+#34: 'U' (0)
+#35: 'U' (0)
+#36: 'U' (0)
+#37: 'U' (0)
+#38: 'U' (0)
+#39: 'U' (0)
+#40: 'U' (0)
+#41: 'U' (0)
+#42: 'U' (0)
+#43: 'U' (0)
+#44: 'U' (0)
+#45: 'U' (0)
+#46: 'U' (0)
+#47: 'U' (0)
+#48: 'U' (0)
+#49: 'U' (0)
+#50: 'U' (0)
+#51: 'U' (0)
+#52: 'U' (0)
+#53: 'U' (0)
+#54: 'U' (0)
+#55: 'U' (0)
+#56: 'U' (0)
+#57: 'U' (0)
+#58: 'U' (0)
+#59: 'U' (0)
+#60: 'U' (0)
+#61: 'U' (0)
+#62: 'U' (0)
+#63: 'U' (0)
+#64: 'U' (0)
+#65: 'U' (0)
+#66: 'U' (0)
+#67: 'U' (0)
+#68: 'U' (0)
+#69: 'U' (0)
+#70: 'U' (0)
diff --git a/testsuite/gna/issue1131/golden_repro2.txt b/testsuite/gna/issue1131/golden_repro2.txt
new file mode 100644
index 000000000..ff43e3a34
--- /dev/null
+++ b/testsuite/gna/issue1131/golden_repro2.txt
@@ -0,0 +1,244 @@
+type std_ulogic is ('U', 'X', '0', '1', 'Z', 'W', 'L', 'H', '-'); -- WKT:3
+type integer is range <>;
+subtype natural is integer range 0 to 2147483647;
+type std_ulogic_vector is array (natural range <>) of std_ulogic;
+subtype std_logic_vector is std_ulogic_vector;
+type bust is record
+ a: std_logic_vector;
+ f: std_logic_vector;
+end record;
+type bust_arr is array (natural range <>) of bust;
+subtype my_bust_arr is bust_arr (0 to 1);
+type bit is ('0', '1'); -- WKT:2
+design
+ package standard:
+ package textio:
+ package std_logic_1164:
+ instance repro2:
+ signal businst: bust(a (7 downto 0), f (3 downto 0)): #1-#12
+ signal barr1: my_bust_arr: #13-#26
+ signal barr2: bust_arr (1 downto 0): #27-#42
+ signal s: bit: #43
+ process P0:
+ process P1:
+ process P2:
+Time is 0 fs
+#1: 'U' (0)
+#2: 'U' (0)
+#3: 'U' (0)
+#4: 'U' (0)
+#5: 'U' (0)
+#6: 'U' (0)
+#7: 'U' (0)
+#8: 'U' (0)
+#9: 'U' (0)
+#10: 'U' (0)
+#11: 'U' (0)
+#12: 'U' (0)
+#13: 'U' (0)
+#14: 'U' (0)
+#15: 'U' (0)
+#16: 'U' (0)
+#17: 'U' (0)
+#18: 'U' (0)
+#19: 'U' (0)
+#20: 'U' (0)
+#21: 'U' (0)
+#22: 'U' (0)
+#23: 'U' (0)
+#24: 'U' (0)
+#25: 'U' (0)
+#26: 'U' (0)
+#27: 'U' (0)
+#28: 'U' (0)
+#29: 'U' (0)
+#30: 'U' (0)
+#31: 'U' (0)
+#32: 'U' (0)
+#33: 'U' (0)
+#34: 'U' (0)
+#35: 'U' (0)
+#36: 'U' (0)
+#37: 'U' (0)
+#38: 'U' (0)
+#39: 'U' (0)
+#40: 'U' (0)
+#41: 'U' (0)
+#42: 'U' (0)
+#43: '0' (0)
+Time is 0 fs
+#1: 'U' (0)
+#2: 'U' (0)
+#3: 'U' (0)
+#4: 'U' (0)
+#5: 'U' (0)
+#6: 'U' (0)
+#7: 'U' (0)
+#8: 'U' (0)
+#9: 'U' (0)
+#10: 'U' (0)
+#11: 'U' (0)
+#12: 'U' (0)
+#13: 'U' (0)
+#14: 'U' (0)
+#15: 'U' (0)
+#16: 'U' (0)
+#17: 'U' (0)
+#18: 'U' (0)
+#19: 'U' (0)
+#20: 'U' (0)
+#21: 'U' (0)
+#22: 'U' (0)
+#23: 'U' (0)
+#24: 'U' (0)
+#25: 'U' (0)
+#26: 'U' (0)
+#27: 'U' (0)
+#28: 'U' (0)
+#29: 'U' (0)
+#30: 'U' (0)
+#31: 'U' (0)
+#32: 'U' (0)
+#33: 'U' (0)
+#34: 'U' (0)
+#35: 'U' (0)
+#36: 'U' (0)
+#37: 'U' (0)
+#38: 'U' (0)
+#39: 'U' (0)
+#40: 'U' (0)
+#41: 'U' (0)
+#42: 'U' (0)
+#43: '0' (0)
+Time is 200000 fs
+#1: 'U' (0)
+#2: 'U' (0)
+#3: 'U' (0)
+#4: 'U' (0)
+#5: 'U' (0)
+#6: 'U' (0)
+#7: 'U' (0)
+#8: 'U' (0)
+#9: 'U' (0)
+#10: 'U' (0)
+#11: 'U' (0)
+#12: '1' (3)
+#13: 'U' (0)
+#14: 'U' (0)
+#15: 'U' (0)
+#16: 'U' (0)
+#17: 'U' (0)
+#18: 'U' (0)
+#19: 'U' (0)
+#20: 'U' (0)
+#21: '1' (3)
+#22: 'U' (0)
+#23: 'U' (0)
+#24: 'U' (0)
+#25: 'U' (0)
+#26: 'U' (0)
+#27: 'U' (0)
+#28: 'U' (0)
+#29: 'U' (0)
+#30: 'U' (0)
+#31: 'U' (0)
+#32: 'U' (0)
+#33: 'U' (0)
+#34: 'U' (0)
+#35: 'U' (0)
+#36: 'U' (0)
+#37: 'U' (0)
+#38: 'U' (0)
+#39: 'U' (0)
+#40: 'U' (0)
+#41: 'U' (0)
+#42: 'U' (0)
+#43: '0' (0)
+Time is 1000000 fs
+#1: 'U' (0)
+#2: 'U' (0)
+#3: 'U' (0)
+#4: 'U' (0)
+#5: 'U' (0)
+#6: 'U' (0)
+#7: 'U' (0)
+#8: 'U' (0)
+#9: 'U' (0)
+#10: 'U' (0)
+#11: 'U' (0)
+#12: '1' (3)
+#13: 'U' (0)
+#14: 'U' (0)
+#15: 'U' (0)
+#16: 'U' (0)
+#17: 'U' (0)
+#18: 'U' (0)
+#19: 'U' (0)
+#20: 'U' (0)
+#21: '1' (3)
+#22: 'U' (0)
+#23: 'U' (0)
+#24: 'U' (0)
+#25: 'U' (0)
+#26: 'U' (0)
+#27: 'U' (0)
+#28: 'U' (0)
+#29: 'U' (0)
+#30: 'U' (0)
+#31: 'U' (0)
+#32: 'U' (0)
+#33: 'U' (0)
+#34: 'U' (0)
+#35: 'U' (0)
+#36: 'U' (0)
+#37: 'U' (0)
+#38: 'U' (0)
+#39: 'U' (0)
+#40: 'U' (0)
+#41: 'U' (0)
+#42: 'U' (0)
+#43: '1' (1)
+Time is 2000000 fs
+#1: 'U' (0)
+#2: 'U' (0)
+#3: 'U' (0)
+#4: 'U' (0)
+#5: 'U' (0)
+#6: 'U' (0)
+#7: 'U' (0)
+#8: 'U' (0)
+#9: 'U' (0)
+#10: 'U' (0)
+#11: 'U' (0)
+#12: '1' (3)
+#13: 'U' (0)
+#14: 'U' (0)
+#15: 'U' (0)
+#16: 'U' (0)
+#17: 'U' (0)
+#18: 'U' (0)
+#19: 'U' (0)
+#20: 'U' (0)
+#21: '1' (3)
+#22: 'U' (0)
+#23: 'U' (0)
+#24: 'U' (0)
+#25: 'U' (0)
+#26: 'U' (0)
+#27: 'U' (0)
+#28: 'U' (0)
+#29: 'U' (0)
+#30: 'U' (0)
+#31: 'U' (0)
+#32: 'U' (0)
+#33: 'U' (0)
+#34: 'U' (0)
+#35: 'U' (0)
+#36: 'U' (0)
+#37: 'U' (0)
+#38: 'U' (0)
+#39: 'U' (0)
+#40: 'U' (0)
+#41: 'U' (0)
+#42: 'U' (0)
+#43: '0' (0)
diff --git a/testsuite/gna/issue1131/testsuite.sh b/testsuite/gna/issue1131/testsuite.sh
index f5ecbbc3e..7837b9bdb 100755
--- a/testsuite/gna/issue1131/testsuite.sh
+++ b/testsuite/gna/issue1131/testsuite.sh
@@ -5,13 +5,14 @@
export GHDL_STD_FLAGS=--std=08
for f in dut repro2; do
- analyze $f.vhdl
- elab $f
+ analyze "$f".vhdl
+ elab "$f"
- if ghdl_has_feature $f ghw; then
- simulate $f --dump-rti
- simulate $f --wave=$f.ghw
- rm -f $f.ghw
+ if ghdl_has_feature "$f" ghw; then
+ simulate "$f" --dump-rti
+ simulate "$f" --wave="$f".ghw
+ ghw_diff "$f"
+ rm -f "$f".txt "$f".ghw
fi
done