Please Review (XXXS): Fix for 6887186: G1: Incorrect code generated for G1 pre-barrier by C1 on SPARC
john cuthbertson - Sun Microsystems
John.Cuthbertson at Sun.COM
Thu Oct 1 11:29:34 PDT 2009
Can I have a couple of volunteers review the changes for this CR? The
webrev can be found at http://cr.openjdk.java.net/~johnc/6887186/webrev.0/.
The issue is that the wrong C1 operand was passed to the generator of
the G1 pre-barrier code for the Unsafe.CompareAndSwap intrinsic. The old
code was passing the operand representing the base object rather than
that representing the address of the object.field that was passed to the
CAS. This caused the G1 pre-barrier code to store a mark word in the
SATB buffer rather than the previous contents of object.field.
More information about the hotspot-gc-dev