From 0a6fa449deb551538b50c67f8c8a464f7d3401ee Mon Sep 17 00:00:00 2001 From: Lars-Peter Clausen Date: Sat, 16 May 2026 14:09:00 -0700 Subject: [PATCH] Add regression tests for `begin_keywords` versions Check that each valid `begin_keywords` selector is accepted. Only check that the selector itself is accepted, in these tests there is no check if the correct keywords are actually accepted or rejected since that would get pretty exhaustive. Signed-off-by: Lars-Peter Clausen --- ivtest/ivltests/begin_keywords_1364_1995.v | 9 +++++++++ ivtest/ivltests/begin_keywords_1364_2001.v | 9 +++++++++ ivtest/ivltests/begin_keywords_1364_2001_noconfig.v | 9 +++++++++ ivtest/ivltests/begin_keywords_1364_2005.v | 9 +++++++++ ivtest/ivltests/begin_keywords_1800_2005.v | 9 +++++++++ ivtest/ivltests/begin_keywords_1800_2009.v | 9 +++++++++ ivtest/ivltests/begin_keywords_1800_2012.v | 9 +++++++++ ivtest/ivltests/begin_keywords_1800_2017.v | 9 +++++++++ ivtest/ivltests/begin_keywords_1800_2023.v | 9 +++++++++ ivtest/ivltests/begin_keywords_vams_2_3.v | 9 +++++++++ ivtest/regress-vvp.list | 10 ++++++++++ ivtest/vvp_tests/begin_keywords_1364_1995.json | 5 +++++ ivtest/vvp_tests/begin_keywords_1364_2001.json | 5 +++++ .../vvp_tests/begin_keywords_1364_2001_noconfig.json | 5 +++++ ivtest/vvp_tests/begin_keywords_1364_2005.json | 5 +++++ ivtest/vvp_tests/begin_keywords_1800_2005.json | 5 +++++ ivtest/vvp_tests/begin_keywords_1800_2009.json | 5 +++++ ivtest/vvp_tests/begin_keywords_1800_2012.json | 5 +++++ ivtest/vvp_tests/begin_keywords_1800_2017.json | 5 +++++ ivtest/vvp_tests/begin_keywords_1800_2023.json | 5 +++++ ivtest/vvp_tests/begin_keywords_vams_2_3.json | 5 +++++ 21 files changed, 150 insertions(+) create mode 100644 ivtest/ivltests/begin_keywords_1364_1995.v create mode 100644 ivtest/ivltests/begin_keywords_1364_2001.v create mode 100644 ivtest/ivltests/begin_keywords_1364_2001_noconfig.v create mode 100644 ivtest/ivltests/begin_keywords_1364_2005.v create mode 100644 ivtest/ivltests/begin_keywords_1800_2005.v create mode 100644 ivtest/ivltests/begin_keywords_1800_2009.v create mode 100644 ivtest/ivltests/begin_keywords_1800_2012.v create mode 100644 ivtest/ivltests/begin_keywords_1800_2017.v create mode 100644 ivtest/ivltests/begin_keywords_1800_2023.v create mode 100644 ivtest/ivltests/begin_keywords_vams_2_3.v create mode 100644 ivtest/vvp_tests/begin_keywords_1364_1995.json create mode 100644 ivtest/vvp_tests/begin_keywords_1364_2001.json create mode 100644 ivtest/vvp_tests/begin_keywords_1364_2001_noconfig.json create mode 100644 ivtest/vvp_tests/begin_keywords_1364_2005.json create mode 100644 ivtest/vvp_tests/begin_keywords_1800_2005.json create mode 100644 ivtest/vvp_tests/begin_keywords_1800_2009.json create mode 100644 ivtest/vvp_tests/begin_keywords_1800_2012.json create mode 100644 ivtest/vvp_tests/begin_keywords_1800_2017.json create mode 100644 ivtest/vvp_tests/begin_keywords_1800_2023.json create mode 100644 ivtest/vvp_tests/begin_keywords_vams_2_3.json diff --git a/ivtest/ivltests/begin_keywords_1364_1995.v b/ivtest/ivltests/begin_keywords_1364_1995.v new file mode 100644 index 000000000..ab0209665 --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1364_1995.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1364-1995 keyword set. + +`begin_keywords "1364-1995" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_1364_2001.v b/ivtest/ivltests/begin_keywords_1364_2001.v new file mode 100644 index 000000000..e3873759d --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1364_2001.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1364-2001 keyword set. + +`begin_keywords "1364-2001" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_1364_2001_noconfig.v b/ivtest/ivltests/begin_keywords_1364_2001_noconfig.v new file mode 100644 index 000000000..d75c4d2e0 --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1364_2001_noconfig.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1364-2001-noconfig keyword set. + +`begin_keywords "1364-2001-noconfig" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_1364_2005.v b/ivtest/ivltests/begin_keywords_1364_2005.v new file mode 100644 index 000000000..4f759305a --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1364_2005.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1364-2005 keyword set. + +`begin_keywords "1364-2005" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_1800_2005.v b/ivtest/ivltests/begin_keywords_1800_2005.v new file mode 100644 index 000000000..7cced42c1 --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1800_2005.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1800-2005 keyword set. + +`begin_keywords "1800-2005" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_1800_2009.v b/ivtest/ivltests/begin_keywords_1800_2009.v new file mode 100644 index 000000000..a1add0a40 --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1800_2009.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1800-2009 keyword set. + +`begin_keywords "1800-2009" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_1800_2012.v b/ivtest/ivltests/begin_keywords_1800_2012.v new file mode 100644 index 000000000..61e4707a3 --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1800_2012.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1800-2012 keyword set. + +`begin_keywords "1800-2012" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_1800_2017.v b/ivtest/ivltests/begin_keywords_1800_2017.v new file mode 100644 index 000000000..08befd948 --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1800_2017.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1800-2017 keyword set. + +`begin_keywords "1800-2017" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_1800_2023.v b/ivtest/ivltests/begin_keywords_1800_2023.v new file mode 100644 index 000000000..f665f7504 --- /dev/null +++ b/ivtest/ivltests/begin_keywords_1800_2023.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the 1800-2023 keyword set. + +`begin_keywords "1800-2023" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/ivltests/begin_keywords_vams_2_3.v b/ivtest/ivltests/begin_keywords_vams_2_3.v new file mode 100644 index 000000000..b4bd9709e --- /dev/null +++ b/ivtest/ivltests/begin_keywords_vams_2_3.v @@ -0,0 +1,9 @@ +// Check that `begin_keywords accepts the VAMS-2.3 keyword set. + +`begin_keywords "VAMS-2.3" +module test; + initial begin + $display("PASSED"); + end +endmodule +`end_keywords diff --git a/ivtest/regress-vvp.list b/ivtest/regress-vvp.list index 3f78202bb..412f724d4 100644 --- a/ivtest/regress-vvp.list +++ b/ivtest/regress-vvp.list @@ -14,6 +14,16 @@ array_slice_concat vvp_tests/array_slice_concat.json automatic_error11 vvp_tests/automatic_error11.json automatic_error12 vvp_tests/automatic_error12.json automatic_error13 vvp_tests/automatic_error13.json +begin_keywords_1364_1995 vvp_tests/begin_keywords_1364_1995.json +begin_keywords_1364_2001 vvp_tests/begin_keywords_1364_2001.json +begin_keywords_1364_2001_noconfig vvp_tests/begin_keywords_1364_2001_noconfig.json +begin_keywords_1364_2005 vvp_tests/begin_keywords_1364_2005.json +begin_keywords_1800_2005 vvp_tests/begin_keywords_1800_2005.json +begin_keywords_1800_2009 vvp_tests/begin_keywords_1800_2009.json +begin_keywords_1800_2012 vvp_tests/begin_keywords_1800_2012.json +begin_keywords_1800_2017 vvp_tests/begin_keywords_1800_2017.json +begin_keywords_1800_2023 vvp_tests/begin_keywords_1800_2023.json +begin_keywords_vams_2_3 vvp_tests/begin_keywords_vams_2_3.json bits4 vvp_tests/bits4.json bitsel11 vvp_tests/bitsel11.json br_gh13a vvp_tests/br_gh13a.json diff --git a/ivtest/vvp_tests/begin_keywords_1364_1995.json b/ivtest/vvp_tests/begin_keywords_1364_1995.json new file mode 100644 index 000000000..4714ae520 --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1364_1995.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1364_1995.v", + "iverilog-args" : [ "-g2005-sv" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_1364_2001.json b/ivtest/vvp_tests/begin_keywords_1364_2001.json new file mode 100644 index 000000000..a51d48856 --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1364_2001.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1364_2001.v", + "iverilog-args" : [ "-g2005-sv" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_1364_2001_noconfig.json b/ivtest/vvp_tests/begin_keywords_1364_2001_noconfig.json new file mode 100644 index 000000000..ac1342d7d --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1364_2001_noconfig.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1364_2001_noconfig.v", + "iverilog-args" : [ "-g2005-sv" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_1364_2005.json b/ivtest/vvp_tests/begin_keywords_1364_2005.json new file mode 100644 index 000000000..50d7b65f6 --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1364_2005.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1364_2005.v", + "iverilog-args" : [ "-g2005-sv" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_1800_2005.json b/ivtest/vvp_tests/begin_keywords_1800_2005.json new file mode 100644 index 000000000..6fadb9da6 --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1800_2005.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1800_2005.v", + "iverilog-args" : [ "-g2005-sv" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_1800_2009.json b/ivtest/vvp_tests/begin_keywords_1800_2009.json new file mode 100644 index 000000000..84460a9db --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1800_2009.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1800_2009.v", + "iverilog-args" : [ "-g2009" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_1800_2012.json b/ivtest/vvp_tests/begin_keywords_1800_2012.json new file mode 100644 index 000000000..c83b42cf4 --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1800_2012.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1800_2012.v", + "iverilog-args" : [ "-g2012" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_1800_2017.json b/ivtest/vvp_tests/begin_keywords_1800_2017.json new file mode 100644 index 000000000..0545c5f39 --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1800_2017.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1800_2017.v", + "iverilog-args" : [ "-g2017" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_1800_2023.json b/ivtest/vvp_tests/begin_keywords_1800_2023.json new file mode 100644 index 000000000..22a3b51e8 --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_1800_2023.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_1800_2023.v", + "iverilog-args" : [ "-g2023" ] +} diff --git a/ivtest/vvp_tests/begin_keywords_vams_2_3.json b/ivtest/vvp_tests/begin_keywords_vams_2_3.json new file mode 100644 index 000000000..fe44aca3f --- /dev/null +++ b/ivtest/vvp_tests/begin_keywords_vams_2_3.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "begin_keywords_vams_2_3.v", + "iverilog-args" : [ "-g2005-sv", "-gverilog-ams" ] +}