diff --git a/ivtest/ivltests/struct_field_left_right.v b/ivtest/ivltests/struct_field_left_right.v new file mode 100644 index 000000000..a7f138376 --- /dev/null +++ b/ivtest/ivltests/struct_field_left_right.v @@ -0,0 +1,23 @@ +module main; + + typedef struct packed { + logic [15:8] f; + } structtype; + + structtype s; + + initial + begin + $display("$left(s.f) = %2d, $right(s.f) = %2d", $left(s.f), $right(s.f)); + if ($left(s.f) !== 15) begin + $display("FAILED -- $left(s.f) = %2d", $left(s.f)); + $finish; + end + if ($right(s.f) !== 8) begin + $display("FAILED -- $right(s.f) = %2d", $right(s.f)); + $finish; + end + $display("PASSED"); + end + +endmodule diff --git a/ivtest/regress-vvp.list b/ivtest/regress-vvp.list index 1cb5a3912..1c5f24bb5 100644 --- a/ivtest/regress-vvp.list +++ b/ivtest/regress-vvp.list @@ -46,6 +46,7 @@ pr903 vvp_tests/pr903.json pr903-vlog95 vvp_tests/pr903-vlog95.json pv_wr_fn_vec2 vvp_tests/pv_wr_fn_vec2.json pv_wr_fn_vec4 vvp_tests/pv_wr_fn_vec4.json +struct_field_left_right vvp_tests/struct_field_left_right.json struct_packed_write_read vvp_tests/struct_packed_write_read.json struct_packed_write_read2 vvp_tests/struct_packed_write_read2.json sv_2state_array_init_prop vvp_tests/sv_2state_array_init_prop.json diff --git a/ivtest/vvp_tests/struct_field_left_right.json b/ivtest/vvp_tests/struct_field_left_right.json new file mode 100644 index 000000000..a3cdb9f34 --- /dev/null +++ b/ivtest/vvp_tests/struct_field_left_right.json @@ -0,0 +1,5 @@ +{ + "type" : "normal", + "source" : "struct_field_left_right.v", + "iverilog-args" : [ "-g2009" ] +}