Skip to content

Commit 67db3a2

Browse files
committed
gpl: move revert checks to original place
Signed-off-by: LucasYuki <[email protected]>
1 parent 38a487b commit 67db3a2

File tree

1 file changed

+25
-25
lines changed

1 file changed

+25
-25
lines changed

src/gpl/src/routeBase.cpp

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -251,8 +251,8 @@ RouteBase::RouteBase(RouteBaseVars rbVars,
251251
nbc_ = std::move(nbc);
252252
log_ = log;
253253
nbVec_ = std::move(nbVec);
254-
minRcTargetDensity_.resize(nbVec_.size());
255-
inflatedAreaDelta_.resize(nbVec_.size());
254+
minRcTargetDensity_.resize(nbVec_.size(), 0);
255+
inflatedAreaDelta_.resize(nbVec_.size(), 0);
256256
init();
257257
}
258258

@@ -549,15 +549,6 @@ std::pair<bool, bool> RouteBase::routability(
549549
int routability_driven_revert_count)
550550
{
551551
increaseCounter();
552-
if (routability_driven_revert_count >= max_routability_revert_) {
553-
log_->info(GPL,
554-
91,
555-
"Routability mode reached the maximum allowed reverts {}",
556-
routability_driven_revert_count);
557-
558-
revertToMinCongestion();
559-
return std::make_pair(false, true);
560-
}
561552

562553
// create Tile Grid
563554
std::unique_ptr<TileGrid> tg(new TileGrid());
@@ -611,20 +602,6 @@ std::pair<bool, bool> RouteBase::routability(
611602
curRc,
612603
minRc_,
613604
min_RC_violated_cnt_);
614-
615-
// rc not improvement detection -- (not improved the RC values 3 times in a
616-
// row)
617-
if (min_RC_violated_cnt_ >= max_routability_no_improvement_) {
618-
log_->info(GPL,
619-
54,
620-
"No improvement in routing congestion for {} consecutive "
621-
"iterations (limit is {}).",
622-
min_RC_violated_cnt_,
623-
max_routability_no_improvement_);
624-
625-
revertToMinCongestion();
626-
return std::make_pair(false, true);
627-
}
628605
}
629606

630607
// set inflated ratio
@@ -759,6 +736,29 @@ std::pair<bool, bool> RouteBase::routability(
759736
}
760737
}
761738

739+
if (routability_driven_revert_count >= max_routability_revert_) {
740+
log_->info(GPL,
741+
91,
742+
"Routability mode reached the maximum allowed reverts {}",
743+
routability_driven_revert_count);
744+
745+
revertToMinCongestion();
746+
return std::make_pair(false, true);
747+
}
748+
// rc not improvement detection -- (not improved the RC values 3 times in a
749+
// row)
750+
if (min_RC_violated_cnt_ >= max_routability_no_improvement_) {
751+
log_->info(GPL,
752+
54,
753+
"No improvement in routing congestion for {} consecutive "
754+
"iterations (limit is {}).",
755+
min_RC_violated_cnt_,
756+
max_routability_no_improvement_);
757+
758+
revertToMinCongestion();
759+
return std::make_pair(false, true);
760+
}
761+
762762
// updateArea
763763
for (int i = 0; i < nbVec_.size(); i++) {
764764
nbVec_[i]->updateAreas();

0 commit comments

Comments
 (0)