RFR (M): 8000805: JMM issue: short loads are non-atomic

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Fri Oct 19 11:39:08 PDT 2012


http://cr.openjdk.java.net/~vlivanov/8000805/webrev.00/
282 lines changed: 255 ins; 27 del; 0 mod

Ideal transformations during parsing & IGVN may rematerialize loads in 
order to reify useful information (like signed/unsigned load). Such 
behavior breaks JMM - instead of a single atomic load, multiple loads 
are performed violating consistency of loaded data.

The fix is to disable such transformations at all, but perform relevant 
optimizations during matching.

It fixes only C2 part of problem. С1 has similar deficiency, but it'll 
be addressed separately.

Testing: failing test, test for new matching rules, JPRT, CTW (x86, x64 
& sparc).

Best regards,
Vladimir Ivanov


More information about the hotspot-compiler-dev mailing list