-
Sub-task
-
Resolution: Fixed
-
P2
-
25, 26
-
master
This issue was reported by [~hgreule].
When self-inverting java/lang/Character.reverseBytes InvolutionNode::Identity can drop necessary masking of subword types. When calling Character.reverseBytes with a wider integer type than char, this leads to a wrong execution when the char result of the self-inverse is used as an int, e.g. in an array access, where a large enough value will cause an unexpected ArrayOutOfBoundsException (see reproducer).
When self-inverting java/lang/Character.reverseBytes InvolutionNode::Identity can drop necessary masking of subword types. When calling Character.reverseBytes with a wider integer type than char, this leads to a wrong execution when the char result of the self-inverse is used as an int, e.g. in an array access, where a large enough value will cause an unexpected ArrayOutOfBoundsException (see reproducer).
- caused by
-
JDK-8350988 Consolidate Identity of self-inverse operations
-
- Closed
-
- links to
-
Commit(master) openjdk/jdk/ddb64836
-
Review(master) openjdk/jdk/26570