aboutsummaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorDavid Shah <davey1576@gmail.com>2018-11-26 18:11:16 +0000
committerGitHub <noreply@github.com>2018-11-26 18:11:16 +0000
commit86108bfd395352af2342177eba6453cd8a58bdfa (patch)
tree510f698705c96b2def9f7b20732ceaf4eabe09b4 /common
parent5a1190ade259259fa31cf6a9f35ec3794bbaeb08 (diff)
parent584e8c58a61748b88639336ad5defb41d5389c3a (diff)
downloadnextpnr-86108bfd395352af2342177eba6453cd8a58bdfa.tar.gz
nextpnr-86108bfd395352af2342177eba6453cd8a58bdfa.tar.bz2
nextpnr-86108bfd395352af2342177eba6453cd8a58bdfa.zip
Merge pull request #149 from smunaut/issue_148
Fixes for global promotion
Diffstat (limited to 'common')
-rw-r--r--common/placer1.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/common/placer1.cc b/common/placer1.cc
index 0db7ce00..b42ef2ff 100644
--- a/common/placer1.cc
+++ b/common/placer1.cc
@@ -337,9 +337,10 @@ class SAPlacer
}
} else {
uint64_t score = ctx->rng64();
- if (score <= best_ripup_score) {
+ CellInfo *bound_cell = ctx->getBoundBelCell(bel);
+ if (score <= best_ripup_score && bound_cell->belStrength < STRENGTH_STRONG) {
best_ripup_score = score;
- ripup_target = ctx->getBoundBelCell(bel);
+ ripup_target = bound_cell;
ripup_bel = bel;
}
}