deminout: Don't demote inouts with unused bits

Signed-off-by: David Shah <dave@ds0.me>
This commit is contained in:
David Shah 2020-02-25 14:14:45 +00:00
parent 6edca05793
commit 5cae9c6e16
2 changed files with 15 additions and 2 deletions

View File

@ -121,8 +121,7 @@ struct DeminoutPass : public Pass {
goto tribuf_bit; goto tribuf_bit;
} else { } else {
tribuf_bit: tribuf_bit:
if (bits_used.count(bit)) new_input = true;
new_input = true;
} }
} }

View File

@ -0,0 +1,14 @@
read_verilog <<EOT
module top(input clk, inout [7:0] x);
reg [3:0] ctr;
always @(posedge clk) ctr <= ctr + 1'b1;
assign x[7:4] = ctr;
endmodule
EOT
proc
tribuf
deminout
select -assert-count 1 i:x o:x %i