spef support net missing divider escape resolves #311
Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
parent
1a22c68c62
commit
8f8f397610
|
|
@ -886,11 +886,17 @@ SdcNetwork::findNetRelative(const Instance *inst,
|
||||||
{
|
{
|
||||||
Net *net = network_->findNetRelative(inst, path_name);
|
Net *net = network_->findNetRelative(inst, path_name);
|
||||||
if (net == nullptr) {
|
if (net == nullptr) {
|
||||||
string path_name1 = escapeBrackets(path_name, this);
|
string path_name1 = escapeDividers(path_name, network_);
|
||||||
net = network_->findNetRelative(inst, path_name1.c_str());
|
net = network_->findNetRelative(inst, path_name1.c_str());
|
||||||
|
|
||||||
if (net == nullptr) {
|
if (net == nullptr) {
|
||||||
string path_name2 = escapeDividers(path_name1.c_str(), network_);
|
string path_name2 = escapeBrackets(path_name, network_);
|
||||||
net = network_->findNetRelative(inst, path_name2.c_str());
|
net = network_->findNetRelative(inst, path_name2.c_str());
|
||||||
|
|
||||||
|
if (net == nullptr) {
|
||||||
|
string path_name3 = escapeDividers(path_name2.c_str(), network_);
|
||||||
|
net = network_->findNetRelative(inst, path_name3.c_str());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return net;
|
return net;
|
||||||
|
|
|
||||||
|
|
@ -458,7 +458,8 @@ SpefReader::findParasiticNode(char *name,
|
||||||
if (pin) {
|
if (pin) {
|
||||||
if (local_only
|
if (local_only
|
||||||
&& !network_->isConnected(net_, pin))
|
&& !network_->isConnected(net_, pin))
|
||||||
warn(1651, "%s not connected to net %s.", name1, network_->pathName(net_));
|
warn(1651, "%s not connected to net %s.",
|
||||||
|
name1, sdc_network_->pathName(net_));
|
||||||
return parasitics_->ensureParasiticNode(parasitic_, pin, network_);
|
return parasitics_->ensureParasiticNode(parasitic_, pin, network_);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue