aboutsummaryrefslogtreecommitdiffstats
path: root/backends
diff options
context:
space:
mode:
authorwhitequark <whitequark@whitequark.org>2020-11-01 12:49:20 +0000
committerwhitequark <whitequark@whitequark.org>2020-11-01 12:49:30 +0000
commitcdf4ce98719b4a05a959651e209eb54d6cf17dab (patch)
tree656104fcff42509ba40e37d2ecc21788719c3207 /backends
parent56054f2ce3b76947600a1e6b0f92cc1a71ff35bd (diff)
downloadyosys-cdf4ce98719b4a05a959651e209eb54d6cf17dab.tar.gz
yosys-cdf4ce98719b4a05a959651e209eb54d6cf17dab.tar.bz2
yosys-cdf4ce98719b4a05a959651e209eb54d6cf17dab.zip
cxxrtl: don't assert on wires with multiple drivers.
Fixes #2374.
Diffstat (limited to 'backends')
-rw-r--r--backends/cxxrtl/cxxrtl_backend.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/backends/cxxrtl/cxxrtl_backend.cc b/backends/cxxrtl/cxxrtl_backend.cc
index dfea04409..da46711c1 100644
--- a/backends/cxxrtl/cxxrtl_backend.cc
+++ b/backends/cxxrtl/cxxrtl_backend.cc
@@ -2182,6 +2182,8 @@ struct CxxrtlWorker {
if (wire->name.begins_with("$") && !elide_internal) continue;
if (wire->name.begins_with("\\") && !elide_public) continue;
if (edge_wires[wire]) continue;
+ if (flow.wire_comb_defs[wire].size() > 1)
+ log_cmd_error("Wire %s.%s has multiple drivers.\n", log_id(module), log_id(wire));
log_assert(flow.wire_comb_defs[wire].size() == 1);
elided_wires[wire] = **flow.wire_comb_defs[wire].begin();
}