aboutsummaryrefslogtreecommitdiffstats
path: root/common/router2.cc
diff options
context:
space:
mode:
authorgatecat <gatecat@ds0.me>2021-07-29 13:04:59 +0100
committergatecat <gatecat@ds0.me>2021-07-29 13:04:59 +0100
commit42f48b6dc0042d56a896514fe2421486ffdc359e (patch)
treec36bbe7f2b6d4cf6942b57060746e7b25fc32be6 /common/router2.cc
parent0991003de9f3aa8870728ce70e5a247747eb302e (diff)
downloadnextpnr-42f48b6dc0042d56a896514fe2421486ffdc359e.tar.gz
nextpnr-42f48b6dc0042d56a896514fe2421486ffdc359e.tar.bz2
nextpnr-42f48b6dc0042d56a896514fe2421486ffdc359e.zip
router2: Improve debugability of pip conflicts
Signed-off-by: gatecat <gatecat@ds0.me>
Diffstat (limited to 'common/router2.cc')
-rw-r--r--common/router2.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/common/router2.cc b/common/router2.cc
index 2994038c..667d906e 100644
--- a/common/router2.cc
+++ b/common/router2.cc
@@ -329,7 +329,11 @@ struct Router2
if (b.first == 1) {
b.second = pip;
} else {
- NPNR_ASSERT(b.second == pip);
+ if (b.second != pip)
+ log_error("internal inconsistency: attempting to bind pip %s to net %s, but wire %s is already driven "
+ "by pip %s\n",
+ ctx->nameOfPip(pip), ctx->nameOf(net), ctx->nameOfWire(flat_wires.at(wire).w),
+ ctx->nameOfPip(b.second));
}
}