Skip to content

Commit d9f18cd

Browse files
committed
[Router] Fixed the Bug Causing Tons of Nightly Test Failures
The bug was introduced by me in commit 2966d66; I merged two adjacent if-bodies with conditions that appeared the same, but were in fact not. A simplified example is: `if (A == 0) { ... A might be modified ... } if (A == 0) { return ; }` Merging the if-bodies would be problematic if A is modified in the first if-body and is no longer 0. This mistake caused tons of nightly test failures, as mentioned in the comments in PR#2720. So glad that the nightly tests CAUGHT this bug, which was not detected by the VTR strong regression tests.
1 parent 6680afb commit d9f18cd

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

vpr/src/route/connection_router.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,9 @@ std::tuple<bool, bool, RTExploredNode> ConnectionRouter<Heap>::timing_driven_rou
159159
sink_node,
160160
cost_params,
161161
net_bounding_box);
162+
}
162163

164+
if (std::isinf(rr_node_route_inf_[sink_node].path_cost)) {
163165
VTR_LOG("%s\n", describe_unrouteable_connection(source_node, sink_node, is_flat_).c_str());
164166

165167
heap_.empty_heap();

0 commit comments

Comments
 (0)