Add fallback to estimateDelay() in getNetinfoRouteDelay()
Signed-off-by: Clifford Wolf <clifford@clifford.at>
This commit is contained in:
parent
27c5236826
commit
a436facfd0
@ -92,7 +92,7 @@ delay_t Context::getNetinfoRouteDelay(NetInfo *net_info, int user_idx) const
|
|||||||
{
|
{
|
||||||
WireId src_wire = getNetinfoSourceWire(net_info);
|
WireId src_wire = getNetinfoSourceWire(net_info);
|
||||||
WireId cursor = getNetinfoSinkWire(net_info, user_idx);
|
WireId cursor = getNetinfoSinkWire(net_info, user_idx);
|
||||||
delay_t delay = getWireDelay(src_wire).maxDelay();
|
delay_t delay = 0;
|
||||||
|
|
||||||
while (cursor != WireId() && cursor != src_wire) {
|
while (cursor != WireId() && cursor != src_wire) {
|
||||||
auto it = net_info->wires.find(cursor);
|
auto it = net_info->wires.find(cursor);
|
||||||
@ -104,6 +104,11 @@ delay_t Context::getNetinfoRouteDelay(NetInfo *net_info, int user_idx) const
|
|||||||
cursor = getPipSrcWire(pip);
|
cursor = getPipSrcWire(pip);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (cursor == src_wire)
|
||||||
|
delay += getWireDelay(src_wire).maxDelay();
|
||||||
|
else
|
||||||
|
delay += estimateDelay(src_wire, cursor);
|
||||||
|
|
||||||
return delay;
|
return delay;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user