Skip to content

Commit 151e7b9

Browse files
committed
Enahnced repair_tie_fanout to clean up dangling dbModNet
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
1 parent d7f98cb commit 151e7b9

2 files changed

Lines changed: 11 additions & 3 deletions

File tree

src/rsz/src/Resizer.cc

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3477,9 +3477,18 @@ void Resizer::createNewTieCellForLoadPin(const Pin* load_pin,
34773477
void Resizer::deleteTieCellAndNet(const Instance* tie_inst,
34783478
LibertyPort* tie_port)
34793479
{
3480-
// Delete inst output net.
3480+
// Get flat and hier nets.
34813481
Pin* tie_pin = network_->findPin(tie_inst, tie_port);
3482-
dbNet* tie_flat_net = db_network_->flatNet(tie_pin);
3482+
odb::dbModNet* tie_hier_net;
3483+
dbNet* tie_flat_net;
3484+
db_network_->net(tie_pin, tie_flat_net, tie_hier_net);
3485+
3486+
// Delete hier net if it is dangling.
3487+
if (tie_hier_net && tie_hier_net->connectionCount() <= 1) {
3488+
odb::dbModNet::destroy(tie_hier_net);
3489+
}
3490+
3491+
// Delete inst output net.
34833492
Net* tie_net = db_network_->dbToSta(tie_flat_net);
34843493
sta_->deleteNet(tie_net);
34853494
estimate_parasitics_->removeNetFromParasiticsInvalid(tie_net);

src/rsz/test/repair_tie10_hier.ok

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,4 +90,3 @@ Hierarchical pins
9090
[WARNING ORD-2043] SanityCheck: Module 'ALU_16_0_16_0_16_unused_CO\[14:0\]_X_BRENT_KUNG' is defined but never instantiated.
9191
[WARNING ORD-2043] SanityCheck: Module 'ALU_16_0_16_0_16_unused_CO\[14:0\]_X_KOGGE_STONE' is defined but never instantiated.
9292
[WARNING ORD-2043] SanityCheck: Module 'ALU_16_0_16_0_16_unused_CO\[14:0\]_X_SKLANSKY' is defined but never instantiated.
93-
[WARNING ODB-0483] SanityCheck: dbModNet '_198_' is dangling. It has less than 2 connections (# of ITerms = 0, # of BTerms = 0, # of ModITerms = 0, # of ModBTerms = 0).

0 commit comments

Comments
 (0)