replace_cell w/spef memory issue
Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
parent
a88895d65c
commit
14893099ed
|
|
@ -276,6 +276,7 @@ public:
|
||||||
// Network edit before/after methods.
|
// Network edit before/after methods.
|
||||||
virtual void disconnectPinBefore(const Pin *pin,
|
virtual void disconnectPinBefore(const Pin *pin,
|
||||||
const Network *network) = 0;
|
const Network *network) = 0;
|
||||||
|
virtual void deletePinBefore(const Pin *pin) = 0;
|
||||||
virtual void loadPinCapacitanceChanged(const Pin *pin) = 0;
|
virtual void loadPinCapacitanceChanged(const Pin *pin) = 0;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
|
||||||
|
|
@ -1286,7 +1286,6 @@ ConcreteNetwork::replaceCell(Instance *inst,
|
||||||
if (cport) {
|
if (cport) {
|
||||||
rpins[cport->pinIndex()] = cpin;
|
rpins[cport->pinIndex()] = cpin;
|
||||||
cpin->port_ = cport;
|
cpin->port_ = cport;
|
||||||
cpin->id_ = ConcreteNetwork::nextObjectId();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -721,11 +721,13 @@ ConcreteParasiticNetwork::disconnectPin(const Pin *pin,
|
||||||
ccapacitor->replaceNode(node, subnode);
|
ccapacitor->replaceNode(node, subnode);
|
||||||
}
|
}
|
||||||
|
|
||||||
pin_nodes_.erase(pin);
|
pin_nodes_.erase(pin_node);
|
||||||
delete node;
|
delete node;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
NetIdPairLess::NetIdPairLess(const Network *network) :
|
NetIdPairLess::NetIdPairLess(const Network *network) :
|
||||||
net_less_(network)
|
net_less_(network)
|
||||||
{
|
{
|
||||||
|
|
@ -893,6 +895,13 @@ ConcreteParasitics::disconnectPinBefore(const Pin *pin,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
ConcreteParasitics::deletePinBefore(const Pin *pin)
|
||||||
|
{
|
||||||
|
// Actions are the same.
|
||||||
|
disconnectPinBefore(pin, network_);
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
ConcreteParasitics::loadPinCapacitanceChanged(const Pin *pin)
|
ConcreteParasitics::loadPinCapacitanceChanged(const Pin *pin)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -173,6 +173,7 @@ public:
|
||||||
|
|
||||||
void disconnectPinBefore(const Pin *pin,
|
void disconnectPinBefore(const Pin *pin,
|
||||||
const Network *network) override;
|
const Network *network) override;
|
||||||
|
void deletePinBefore(const Pin *pin) override;
|
||||||
void loadPinCapacitanceChanged(const Pin *pin) override;
|
void loadPinCapacitanceChanged(const Pin *pin) override;
|
||||||
|
|
||||||
void deleteReducedParasitics(const Net *net,
|
void deleteReducedParasitics(const Net *net,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue