internal power umr

Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
James Cherry 2021-12-28 16:05:04 -08:00
parent 8bcb0eb27b
commit eaa6523869
2 changed files with 9 additions and 7 deletions

View File

@ -36,11 +36,11 @@ InternalPowerAttrs::~InternalPowerAttrs()
void void
InternalPowerAttrs::deleteContents() InternalPowerAttrs::deleteContents()
{ {
for (auto tr_index : RiseFall::rangeIndex()) { InternalPowerModel *rise_model = models_[RiseFall::riseIndex()];
InternalPowerModel *model = models_[tr_index]; InternalPowerModel *fall_model = models_[RiseFall::fallIndex()];
if (model) delete rise_model;
delete model; if (fall_model != rise_model)
} delete fall_model;
if (when_) if (when_)
when_->deleteSubexprs(); when_->deleteSubexprs();
stringDelete(related_pg_pin_); stringDelete(related_pg_pin_);

View File

@ -4543,8 +4543,10 @@ LibertyReader::endPower(LibertyGroup *)
{ {
if (table_) { if (table_) {
TableModel *table_model = new TableModel(table_, scale_factor_type_, rf_); TableModel *table_model = new TableModel(table_, scale_factor_type_, rf_);
internal_power_->setModel(RiseFall::rise(), new InternalPowerModel(table_model)); // Share the model for rise/fall.
internal_power_->setModel(RiseFall::fall(), new InternalPowerModel(table_model)); InternalPowerModel *power_model = new InternalPowerModel(table_model);
internal_power_->setModel(RiseFall::rise(), power_model);
internal_power_->setModel(RiseFall::fall(), power_model);
} }
endTableModel(); endTableModel();
} }