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