From 5e90086d4f02910a973b743a42d8ae1853599ac1 Mon Sep 17 00:00:00 2001 From: David Shah Date: Thu, 22 Oct 2020 16:43:10 +0100 Subject: router2: Fix case where src and dst are the same Signed-off-by: David Shah --- common/router2.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'common') diff --git a/common/router2.cc b/common/router2.cc index 4dfd868b..15c97e52 100644 --- a/common/router2.cc +++ b/common/router2.cc @@ -774,8 +774,11 @@ struct Router2 if (dst == WireId() || ctx->getBoundWireNet(dst) == net) return true; // Skip routes where there is no routing (special cases) - if (!ad.routed) + if (!ad.routed) { + if ((src == dst) && ctx->getBoundWireNet(dst) != net) + ctx->bindWire(src, net, STRENGTH_WEAK); return true; + } WireId cursor = dst; -- cgit v1.2.3