RFR: JDK-8294902: Undefined Behavior in C2 regalloc with null references
Andrew Haley
aph-open at littlepinkcloud.com
Mon Oct 31 18:51:34 UTC 2022
This patch fixes the remaining null pointer dereference bugs that I know of.
For the main bug, C2 was using a null reference to indicate an uninitialized Node_List. I replaced the null reference with a static sentinel.
I also turned on -fsanitize=null and found and fixed a bunch of other null pointer dereferences. With this,I have run a full bootstrap and tier1 tests with -fsanitize=null enabled.
I have checked that the code generated by GCC is not worse in any significant way, so I don't expect to see any performance regressions.
I'd like to enable -fsanitize=null in debug builds to prevent regressions in this area. What do you think?
-------------
Changes: https://git.openjdk.org/jdk/pull/10920/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=10920&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8294902
Stats: 51 lines in 8 files changed: 34 ins; 1 del; 16 mod
Patch: https://git.openjdk.org/jdk/pull/10920.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/10920/head:pull/10920
PR: https://git.openjdk.org/jdk/pull/10920
More information about the hotspot-dev
mailing list