f353fcf256
Prevent GCM from placing memory-writing nodes (such as stores) into loops deeper than their home loop (determined by their control input). Such placements are invalid, as they cause memory definitions to interfere, and risk causing miscompilations. This change complements JDK-8255763, which only addresses invalid placements in irreducible CFGs. Add control input to stores in generated stubs to ensure that all memory-writing nodes have control inputs from which their home block can be derived. Add a battery of simplified fuzzer test cases where, before this change, GCM moves stores into deeper loops. Reviewed-by: thartmann, kvn |
||
---|---|---|
.. | ||
applications | ||
compiler | ||
containers | ||
gc | ||
gtest | ||
native_sanity | ||
resourcehogs | ||
runtime | ||
sanity | ||
serviceability | ||
testlibrary | ||
testlibrary_tests | ||
vmTestbase | ||
ProblemList-aot.txt | ||
ProblemList-graal.txt | ||
ProblemList-non-cds-mode.txt | ||
ProblemList-Xcomp.txt | ||
ProblemList-zgc.txt | ||
ProblemList.txt | ||
TEST.groups | ||
TEST.quick-groups | ||
TEST.ROOT |