RFR (S) 8031818: Experimental VM flag for enforcing safe object construction
Vladimir Kozlov
vladimir.kozlov at oracle.com
Tue Jan 21 21:10:43 PST 2014
May be we should use bitset enums to record types of stores to fields. Next changes touch the same C2 code:
http://hg.openjdk.java.net/ppc-aix-port/stage-9/hotspot/rev/c6d7e7406136
It uses method()->is_initializer() instead of (method()->name() == ciSymbol::object_initializer_name()).
The main problem that new flag check will be executed always. It will not be optimized by C++.
Regards,
Vladimir
On 1/21/14 2:47 PM, Aleksey Shipilev wrote:
> Hi,
>
> Please review the experimental patch for switching the research VM mode
> which unconditionally emits the memory barrier at the end of constructor:
> http://cr.openjdk.java.net/~shade/8031818/webrev.00/
> https://bugs.openjdk.java.net/browse/JDK-8031818
>
> This would be convenient to have in mainline, because it will also
> propagate to another arch ports (notably PPC C2 port), and will ease the
> performance research for the upcoming JMM update.
>
> Thanks,
> -Aleksey.
>
More information about the hotspot-compiler-dev
mailing list