1
0
mirror of synced 2026-02-06 16:54:36 +00:00

Merge remote-tracking branch 'origin/eddie/fix1115' into xc7mux

This commit is contained in:
Eddie Hung
2019-06-20 10:18:10 -07:00
2 changed files with 22 additions and 1 deletions

View File

@@ -3438,7 +3438,7 @@ void RTLIL::SigSpec::extend_u0(int width, bool is_signed)
if (width_ < width) {
RTLIL::SigBit padding = width_ > 0 ? (*this)[width_ - 1] : RTLIL::State::Sx;
if (!is_signed)
if (padding != RTLIL::State::Sx && !is_signed)
padding = RTLIL::State::S0;
while (width_ < width)
append(padding);

21
tests/various/signext.ys Normal file
View File

@@ -0,0 +1,21 @@
read_verilog -formal <<EOT
module gate(input clk, output [1:0] o);
assign o = 1'bx;
endmodule
EOT
proc
## Equivalence checking
read_verilog -formal <<EOT
module gold(input clk, output [1:0] o);
assign o = 2'bxx;
endmodule
EOT
proc
miter -equiv -flatten -make_assert -make_outputs gold gate miter
sat -verify -prove-asserts -show-ports -enable_undef miter