Skip to content

Commit 23fb0e6

Browse files
authored
Merge pull request #8065 from The-OpenROAD-Project-staging/secure-remove_buffer-fix
Hier: Resolved hang and crash in asap7/swerv_wrapper design
2 parents b524082 + 0aa066a commit 23fb0e6

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

src/odb/src/db/dbBTerm.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -395,6 +395,11 @@ void dbBTerm::connect(dbNet* net_)
395395
_dbNet* net = (_dbNet*) net_;
396396
_dbBlock* block = (_dbBlock*) net->getOwner();
397397

398+
// Same net. Nothing to connect.
399+
if (bterm->_net == net_->getId()) {
400+
return;
401+
}
402+
398403
if (net->_flags._dont_touch) {
399404
net->getLogger()->error(utl::ODB,
400405
377,

src/rsz/src/Resizer.cc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -371,6 +371,10 @@ void Resizer::init()
371371
// remove all buffers if no buffers are specified
372372
void Resizer::removeBuffers(sta::InstanceSeq insts)
373373
{
374+
// Unlike Resizer::bufferInputs(), init() call is not needed here.
375+
// init() call performs STA levelization, but removeBuffers() does not need
376+
// timing information. So initBlock(), a light version of init(), is
377+
// sufficient.
374378
initBlock();
375379
// Disable incremental timing.
376380
graph_delay_calc_->delaysInvalid();

0 commit comments

Comments
 (0)