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