aboutsummaryrefslogtreecommitdiffstats
path: root/common/router2.cc
diff options
context:
space:
mode:
authorgatecat <gatecat@ds0.me>2021-03-02 08:27:12 +0000
committerGitHub <noreply@github.com>2021-03-02 08:27:12 +0000
commit27fbee523301be074abd06a3568dc9591d98e0fa (patch)
tree3ec0f59c35cb1107adc3a2f5043e19e4ffde3adc /common/router2.cc
parent6ff02248a3f625829c9bd041c369247ee926d8d0 (diff)
parent392156c25095aa93fdf847ef51dfa571b5d2ce88 (diff)
downloadnextpnr-27fbee523301be074abd06a3568dc9591d98e0fa.tar.gz
nextpnr-27fbee523301be074abd06a3568dc9591d98e0fa.tar.bz2
nextpnr-27fbee523301be074abd06a3568dc9591d98e0fa.zip
Merge pull request #605 from litghost/add_placement_sanity_check
Add placement sanity check in placer_heap.
Diffstat (limited to 'common/router2.cc')
-rw-r--r--common/router2.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/common/router2.cc b/common/router2.cc
index abe5f302..1b7a6fed 100644
--- a/common/router2.cc
+++ b/common/router2.cc
@@ -36,6 +36,7 @@
#include "log.h"
#include "nextpnr.h"
#include "router1.h"
+#include "scope_lock.h"
#include "timing.h"
#include "util.h"
@@ -1161,6 +1162,8 @@ struct Router2
ThreadContext st;
int iter = 1;
+ nextpnr::ScopeLock<Context> lock(ctx);
+
for (size_t i = 0; i < nets_by_udata.size(); i++)
route_queue.push_back(i);
@@ -1237,6 +1240,8 @@ struct Router2
log_info("Running router1 to check that route is legal...\n");
+ lock.unlock_early();
+
router1(ctx, Router1Cfg(ctx));
}
};