RFR(S) 8077504: Unsafe load can loose control dependency and cause crash
Roland Westrelin
roland.westrelin at oracle.com
Thu Apr 16 11:57:25 UTC 2015
http://cr.openjdk.java.net/~roland/8077504/webrev.00/
Because we consider that all loads that have their control set only depend on the test that immediately dominate them (and if we move the test, the load can follow the test), loads from unsafe intrinsics can be moved so they don’t depend on conditions that keep them valid anymore (see test cases). The fix I propose is to add a _depends_only_on_test flag to LoadNodes so when we construct a LoadNode for an unsafe load we can record that it shouldn’t be moved.
Roland.
More information about the hotspot-compiler-dev
mailing list