[IfConversion] Fix duplicate successor error after if-converter. #134485
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Bug is detected for
Simplecase whenFalseBBis a successor of both blocksBBandTrueBB.It is a mistake to add
FalseBBas successor ofBBafter copy-and-merging ofTrueBBintoBB.MachineVerifierreports an error on duplicate successors and predecessors in this case.Approximate CFG to trigger the bug:
It is important that branch in
TrueBBis not analyzable.Bug is triggered on the custom out-of-tree backend. Unfortunately, I'm not familiar good enough with other backends to write a good .mir test for this with not analyzable branch. Sorry for that. But fix seems too trivial.