Skip to content

Commit 412ca24

Browse files
committed
tap: error instead of silently leaving a gap when a boundary row is unfillable
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
1 parent 6918d1e commit 412ca24

1 file changed

Lines changed: 4 additions & 7 deletions

File tree

src/tap/src/tapcell.cpp

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1281,13 +1281,10 @@ int Tapcell::fillEndcapEdge(odb::dbRow* row,
12811281
x_end,
12821282
master->getName());
12831283

1284-
// Stop if the master is not symmetric for this row: retrying the same
1285-
// position (as the old continue did) would loop forever since x is fixed.
1286-
if (!checkSymmetry(master, row->getOrient())) {
1287-
break;
1288-
}
1289-
1290-
if (x + master->getWidth() > x_end) {
1284+
// The master must be symmetric for this row and fit in the remaining
1285+
// space; otherwise the boundary cannot be filled without a gap.
1286+
if (!checkSymmetry(master, row->getOrient())
1287+
|| x + master->getWidth() > x_end) {
12911288
const double dbus = row->getBlock()->getDbUnitsPerMicron();
12921289
logger_->error(
12931290
utl::TAP,

0 commit comments

Comments
 (0)