Skip to content

Commit 1671112

Browse files
committed
report_floating_nets: only report undriven nets with loads
1 parent 7eea8d3 commit 1671112

File tree

7 files changed

+23
-2870
lines changed

7 files changed

+23
-2870
lines changed

src/resizer/src/Resizer.cc

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2202,16 +2202,12 @@ Resizer::findFloatingNets()
22022202
NetIterator *net_iter = network_->netIterator(network_->topInstance());
22032203
while (net_iter->hasNext()) {
22042204
Net *net = net_iter->next();
2205-
NetConnectedPinIterator *pin_iter = network_->connectedPinIterator(net);
2206-
int pin_count = 0;
2207-
while (pin_iter->hasNext()) {
2208-
pin_iter->next();
2209-
pin_count++;
2210-
if (pin_count > 1)
2211-
break;
2212-
}
2213-
delete pin_iter;
2214-
if (pin_count == 1)
2205+
PinSeq loads;
2206+
PinSeq drvrs;
2207+
PinSet visited_drvrs;
2208+
FindNetDrvrLoads visitor(nullptr, visited_drvrs, loads, drvrs, network_);
2209+
network_->visitConnectedPins(net, visitor);
2210+
if (drvrs.size() == 0 && loads.size() > 0)
22152211
floating_nets->push_back(net);
22162212
}
22172213
delete net_iter;

src/resizer/test/gcd_resize.ok

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -17,22 +17,5 @@ Inserted 35 input buffers.
1717
Inserted 18 output buffers.
1818
Inserted 0 hold buffers.
1919
Resized 35 instances.
20-
Warning: found 16 floatiing nets.
21-
_424_
22-
_425_
23-
_426_
24-
_427_
25-
_428_
26-
_429_
27-
_430_
28-
_431_
29-
_432_
30-
_433_
31-
_434_
32-
_435_
33-
_436_
34-
_437_
35-
_438_
36-
_439_
3720
Design area 738 u^2 12% utilization.
3821
worst slack 9.35

0 commit comments

Comments
 (0)