-
Sub-task
-
Resolution: Unresolved
-
P4
-
24
Currently, C2 cannot implement implicit null checks using memory accesses with late-expanded barriers [1], as in G1 and ZGC (see parent issue JDK-8344627).
This RFE proposes extending C2's implicit null check analysis to exploit memory accesses with late-expanded barriers but no inner exceptions (i.e. where the potentially exception-triggering memory access instruction is the first instruction emitted). The extension includes handling the hoisting of associated MachTemp nodes and discarding other memory accesses that might expand into instruction sequences with inner exception-triggering memory access instructions.
The extension would make it possible in practice to exploit ZGC reads with late-expanded GC barriers for implicit null checking.
This RFE proposes extending C2's implicit null check analysis to exploit memory accesses with late-expanded barriers but no inner exceptions (i.e. where the potentially exception-triggering memory access instruction is the first instruction emitted). The extension includes handling the hoisting of associated MachTemp nodes and discarding other memory accesses that might expand into instruction sequences with inner exception-triggering memory access instructions.
The extension would make it possible in practice to exploit ZGC reads with late-expanded GC barriers for implicit null checking.
- links to
-
Review(master) openjdk/jdk/22678