RFR: 8262256: C2 intrinsincs should not modify IR when bailing out
Tobias Hartmann
thartmann at openjdk.java.net
Mon Mar 1 08:35:44 UTC 2021
While investigating [JDK-8262231](https://bugs.openjdk.java.net/browse/JDK-8262231) in project Valhalla, I've noticed that the unsafe access C2 intrinsics sometimes emit code before then bailing out, leaving control flow before the slow call that might lead to deoptimization or an inconsistent JVMState. I've added an assert to catch this and fixed the corresponding intrinsic code (in that case null checks in `make_unsafe_address` are the culprit).
Thanks,
Tobias
-------------
Commit messages:
- Moved make_unsafe_address back up
- 8262256: C2 intrinsincs should not modify IR when bailing out
Changes: https://git.openjdk.java.net/jdk/pull/2775/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2775&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8262256
Stats: 31 lines in 1 file changed: 24 ins; 3 del; 4 mod
Patch: https://git.openjdk.java.net/jdk/pull/2775.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/2775/head:pull/2775
PR: https://git.openjdk.java.net/jdk/pull/2775
More information about the hotspot-compiler-dev
mailing list