diff options
| -rw-r--r-- | backends/cxxrtl/cxxrtl_backend.cc | 10 | 
1 files changed, 5 insertions, 5 deletions
diff --git a/backends/cxxrtl/cxxrtl_backend.cc b/backends/cxxrtl/cxxrtl_backend.cc index d035dc56b..7ff344e66 100644 --- a/backends/cxxrtl/cxxrtl_backend.cc +++ b/backends/cxxrtl/cxxrtl_backend.cc @@ -1295,7 +1295,7 @@ struct CxxrtlWorker {  			for (auto conn : cell->connections())  				if (cell->input(conn.first)) {  					RTLIL::Module *cell_module = cell->module->design->module(cell->type); -					log_assert(cell_module != nullptr && cell_module->wire(conn.first) && conn.second.is_wire()); +					log_assert(cell_module != nullptr && cell_module->wire(conn.first));  					RTLIL::Wire *cell_module_wire = cell_module->wire(conn.first);  					f << indent << mangle(cell) << access << mangle_wire_name(conn.first);  					if (!is_cxxrtl_blackbox_cell(cell) && wire_types[cell_module_wire].is_buffered()) { @@ -1305,7 +1305,7 @@ struct CxxrtlWorker {  					f << " = ";  					dump_sigspec_rhs(conn.second);  					f << ";\n"; -					if (getenv("CXXRTL_VOID_MY_WARRANTY")) { +					if (getenv("CXXRTL_VOID_MY_WARRANTY") && conn.second.is_wire()) {  						// Until we have proper clock tree detection, this really awful hack that opportunistically  						// propagates prev_* values for clocks can be used to estimate how much faster a design could  						// be if only one clock edge was simulated by replacing: @@ -2794,12 +2794,12 @@ struct CxxrtlWorker {  				for (auto wire : module->wires()) {  					const auto &wire_type = wire_types[wire];  					auto &debug_wire_type = debug_wire_types[wire]; -					if (wire_type.type == WireType::UNUSED) continue; -					if (!wire->name.isPublic() && !wire_type.is_buffered()) continue;  					if (!debug_info) continue;  					if (wire->port_input || wire_type.is_buffered())  						debug_wire_type = wire_type; // wire contains state +					else if (!wire->name.isPublic()) +						continue; // internal and stateless  					if (!debug_member) continue;  					if (wire_type.is_member()) @@ -2863,7 +2863,7 @@ struct CxxrtlWorker {  					auto &debug_wire_type = debug_wire_types[wire];  					if (wire->name.isPublic()) continue; -					if (live_wires[wire].empty() || debug_live_wires[wire].empty()) { +					if (debug_live_wires[wire].empty()) {  						continue; // wire never used  					} else if (flow.is_inlinable(wire, debug_live_wires[wire])) {  						log_assert(flow.wire_comb_defs[wire].size() == 1);  | 
