Fix placement bug with VexRiscV reported by John McMaster
Signed-off-by: David Shah <davey1576@gmail.com>
This commit is contained in:
parent
13339c0355
commit
80097526ee
@ -130,10 +130,11 @@ bool place_single_cell(Context *ctx, CellInfo *cell, bool require_legality)
|
|||||||
if (iters >= 4)
|
if (iters >= 4)
|
||||||
wirelen += ctx->rng(25);
|
wirelen += ctx->rng(25);
|
||||||
if (wirelen <= best_ripup_wirelen) {
|
if (wirelen <= best_ripup_wirelen) {
|
||||||
ripup_target = ctx->cells.at(ctx->getBoundBelCell(bel)).get();
|
CellInfo *curr_cell = ctx->cells.at(ctx->getBoundBelCell(bel)).get();
|
||||||
if (ripup_target->belStrength < STRENGTH_STRONG) {
|
if (curr_cell->belStrength < STRENGTH_STRONG) {
|
||||||
best_ripup_wirelen = wirelen;
|
best_ripup_wirelen = wirelen;
|
||||||
ripup_bel = bel;
|
ripup_bel = bel;
|
||||||
|
ripup_target = curr_cell;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user