RFE: 8023597: Optimize G1 barriers code for unsafe load_store
Doerr, Martin
martin.doerr at sap.com
Fri Aug 23 09:09:59 PDT 2013
Hi,
I did some more tests with our proposed webrev
http://cr.openjdk.java.net/~goetz/webrevs/opto_g1_barr/
and it happened that the assertion
"assert(pre_val->bottom_type()->basic_type() == T_OBJECT, "or we shouldn't be here");"
was firing when running jvm2008 derby on linuxx86_64.
What happened is that the C2 was inserting a barrier of kind=LibraryCallKit::LS_cmpxchg,
but oldval was a ConP node with bottom_type()->basic_type() = T_ADDRESS.
I believe there's nothing logically wrong with the change.
Should the assertion be modified or should we filter out cases in which oldval
does not contain a valid Oop?
I guess some advice from C2 and G1 experts is needed.
Best regards,
Martin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20130823/5324ebf8/attachment.html
More information about the hotspot-compiler-dev
mailing list