yosys/tests/verilog/sbvector.ys

31 lines
795 B
Plaintext
Raw Normal View History

2025-05-06 12:02:00 +02:00
read_verilog <<EOT
module foo(
output o,
input [0:0] i1,
input i2
);
2025-05-12 13:23:02 +02:00
wire [0:0] w1 = i1 ^ i2;
wire w2 = ~i1;
assign o = w1 ^ w2;
2025-05-06 12:02:00 +02:00
endmodule
EOT
2025-05-12 13:23:02 +02:00
hierarchy
proc
select -assert-count 1 w:i1
select -assert-count 1 w:i1 a:single_bit_vector %i
select -assert-count 1 w:i2
select -assert-count 0 w:i2 a:single_bit_vector %i
select -assert-count 1 w:w1
select -assert-count 1 w:w1 a:single_bit_vector %i
select -assert-count 1 w:w2
select -assert-count 0 w:w2 a:single_bit_vector %i
2025-05-06 12:02:00 +02:00
write_verilog verilog_sbvector.out
!grep -qF 'wire [0:0] i1;' verilog_sbvector.out
!grep -qF 'input [0:0] i1;' verilog_sbvector.out
!grep -qF 'wire i2;' verilog_sbvector.out
!grep -qF 'input i2;' verilog_sbvector.out
2025-05-12 13:23:02 +02:00
!grep -qF 'wire [0:0] w1;' verilog_sbvector.out
!grep -qF 'wire w2;' verilog_sbvector.out