1
0
mirror of synced 2026-02-08 09:31:27 +00:00

Merge pull request #2879 from whitequark/cxxrtl-fix-2739-again

cxxrtl: treat internal wires used only for debug as constants
This commit is contained in:
whitequark
2021-07-17 17:22:15 +00:00
committed by GitHub

View File

@@ -2881,6 +2881,12 @@ struct CxxrtlWorker {
debug_live_nodes.erase(node);
} else if (wire_type.is_local()) {
debug_wire_type = {WireType::LOCAL}; // wire not inlinable
} else if (wire_type.type == WireType::UNUSED) {
if (wire_init.count(wire)) {
debug_wire_type = {WireType::CONST, wire_init.at(wire)};
} else {
debug_wire_type = {WireType::CONST, RTLIL::SigSpec(RTLIL::S0, wire->width)};
} // wire never modified
} else {
log_assert(wire_type.is_member());
debug_wire_type = wire_type; // wire is a member