aboutsummaryrefslogtreecommitdiffstats
path: root/common/router1.cc
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2018-08-04 17:23:46 +0200
committerClifford Wolf <clifford@clifford.at>2018-08-04 17:23:46 +0200
commit8aaf8456708a1d508b607f3fe1f06953ab14911b (patch)
tree7448544060ecb79751ed73a1fc5c184ac971368d /common/router1.cc
parent31fe52581b34e58189310637ef55b82041c1e04a (diff)
downloadnextpnr-8aaf8456708a1d508b607f3fe1f06953ab14911b.tar.gz
nextpnr-8aaf8456708a1d508b607f3fe1f06953ab14911b.tar.bz2
nextpnr-8aaf8456708a1d508b607f3fe1f06953ab14911b.zip
Quick fix for router bug in unrouting a conflicting pip
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Diffstat (limited to 'common/router1.cc')
-rw-r--r--common/router1.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/common/router1.cc b/common/router1.cc
index 03a06072..f5132941 100644
--- a/common/router1.cc
+++ b/common/router1.cc
@@ -422,7 +422,9 @@ struct Router
NPNR_ASSERT(ripup);
NPNR_ASSERT(conflicting_pip_net != net_name);
- ctx->unbindPip(pip);
+ if (ctx->getBoundPipNet(pip) == conflicting_pip_net)
+ ctx->unbindPip(pip);
+
if (!ctx->checkPipAvail(pip))
ripup_net(ctx, conflicting_pip_net);