diff options
author | Miodrag Milanović <mmicko@gmail.com> | 2021-01-20 18:31:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-20 18:31:49 +0100 |
commit | 00f02e05899550be0d6e2154faa30546eefd4c31 (patch) | |
tree | 9f6fc3b77e4aa65f4184dacca4871bb318280827 /tests | |
parent | 4762cc06c6b7cd36dda2e6eddf15b9782334ccd4 (diff) | |
parent | 006c18fc112a686a20b2b138ddc3bf773ee2f2f5 (diff) | |
download | yosys-00f02e05899550be0d6e2154faa30546eefd4c31.tar.gz yosys-00f02e05899550be0d6e2154faa30546eefd4c31.tar.bz2 yosys-00f02e05899550be0d6e2154faa30546eefd4c31.zip |
Merge pull request #2551 from zachjs/wire-logic
sv: fix support wire and var data type modifiers
Diffstat (limited to 'tests')
-rw-r--r-- | tests/verilog/wire_and_var.sv | 33 | ||||
-rw-r--r-- | tests/verilog/wire_and_var.ys | 9 |
2 files changed, 42 insertions, 0 deletions
diff --git a/tests/verilog/wire_and_var.sv b/tests/verilog/wire_and_var.sv new file mode 100644 index 000000000..79c7c04c6 --- /dev/null +++ b/tests/verilog/wire_and_var.sv @@ -0,0 +1,33 @@ +`define TEST(kwd) \ + kwd kwd``_1; \ + kwd kwd``_2; \ + initial kwd``_1 = 1; \ + assign kwd``_2 = 1; + +`define TEST_VAR(kwd) \ + var kwd var_``kwd``_1; \ + var kwd var_``kwd``_2; \ + initial var_``kwd``_1 = 1; \ + assign var_``kwd``_2 = 1; + +`define TEST_WIRE(kwd) \ + wire kwd wire_``kwd``_1; \ + wire kwd wire_``kwd``_2; \ + initial wire_``kwd``_1 = 1; \ + assign wire_``kwd``_2 = 1; + +module top; + +`TEST(wire) // wire assigned in a block +`TEST(reg) // reg assigned in a continuous assignment +`TEST(logic) +`TEST(integer) + +`TEST_VAR(reg) // reg assigned in a continuous assignment +`TEST_VAR(logic) +`TEST_VAR(integer) + +`TEST_WIRE(logic) // wire assigned in a block +`TEST_WIRE(integer) // wire assigned in a block + +endmodule diff --git a/tests/verilog/wire_and_var.ys b/tests/verilog/wire_and_var.ys new file mode 100644 index 000000000..9359a9d55 --- /dev/null +++ b/tests/verilog/wire_and_var.ys @@ -0,0 +1,9 @@ +logger -expect warning "wire '\\wire_1' is assigned in a block" 1 +logger -expect warning "reg '\\reg_2' is assigned in a continuous assignment" 1 + +logger -expect warning "reg '\\var_reg_2' is assigned in a continuous assignment" 1 + +logger -expect warning "wire '\\wire_logic_1' is assigned in a block" 1 +logger -expect warning "wire '\\wire_integer_1' is assigned in a block" 1 + +read_verilog -sv wire_and_var.sv |