Repository navigation
grt/CUGR: discarded unionWith in MazeRoute::getSteinerTree, and the high() - 1 bound in constructDetours - intended? #11507
Replies: 1 comment
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Two small questions about
src/grt/src/cugr/src(CUGR,global_route -use_cugr). Both lines are the same on currentmasterand in CUHK's original CUGR 2.0 sources, so they may well be deliberate. I wanted to check the intent.1.
MazeRoute::getSteinerTree, "Remove redundant tree nodes"IntervalT::unionWithisconstand returns the union, so this call's result is discarded: when a co-located child that carries pin layers is folded into a parent that already has layers, the parent keeps only its own interval. Is the parent meant to take the union here (node->setFixedLayers(node->getFixedLayers().unionWith(...)))? For what it's worth, assigning the union changes no guide on the grt regression scripts that use-use_cugr, so it looks latent either way.2.
PatternRoute::constructDetours, the shift-interval expansionThe downward loop guards and evaluates the stem length at
low() - 1. The upward loop guardshigh() + 1but evaluates it athigh() - 1. Ishigh() - 1intended, or washigh() + 1meant? If it's the latter, changing it does change results: the routes ofcugr_adjustment3andndr_rrr_cugrdiffer, so their goldens would move.Thanks, and happy to send a PR for either if that's useful.
All reactions