Disable regDepCopyRemoval when value types are enabled #5250
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.
In OpenJ9, the implementation of value types does not behave well with regDepCopyRemoval. Specifically, the ifacmp{eq,ne} operations rely on lowering that requires basic block splitting after GRA. RegDepCopyRemoval currently leaves the trees in a state that the post GRA block splitter cannot handle. So, for now, the optimization is disabled.
eclipse-openj9/openj9#9712 was opened to track the work to re-enable the optimization.
Unfortunately, the design of the option processing framework requires the disabling code to be in OMR (rather than OpenJ9) and guarded with J9_PROJECT_SPECIFIC.
Signed-off-by: Leonardo Banderali [email protected]