Skip to content

Commit a342b95

Browse files
committed
Fix getConnectionPips for sinks driven by lut constant generators
Signed-off-by: ReillyMcK <[email protected]>
1 parent 36d6fad commit a342b95

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

src/com/xilinx/rapidwright/design/DesignTools.java

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3772,12 +3772,18 @@ public static List<PIP> getConnectionPIPs(SitePinInst sinkPin) {
37723772
loop: while (!curr.equals(srcNode)) {
37733773
PIP pip = reverseNodeToPIPMap.get(curr);
37743774
if (pip == null) {
3775-
for (PIP biDirPIP : biDirs) {
3776-
if (biDirPIP.getStartNode().equals(curr)) {
3777-
path.add(biDirPIP);
3778-
curr = biDirPIP.getEndNode();
3779-
continue loop;
3775+
if (biDirs != null) {
3776+
for (PIP biDirPIP : biDirs) {
3777+
if (biDirPIP.getStartNode().equals(curr)) {
3778+
path.add(biDirPIP);
3779+
curr = biDirPIP.getEndNode();
3780+
continue loop;
3781+
}
37803782
}
3783+
} else {
3784+
// LUT const generator will cause srcNode of global const to be unreachable
3785+
assert(sinkPin.getNet().isStaticNet());
3786+
return path;
37813787
}
37823788
}
37833789
path.add(pip);

0 commit comments

Comments
 (0)