RFR (S): JDK-8172434: CompareAndExchangeObject inserts two pre-barriers

Roman Kennke rkennke at redhat.com
Tue Feb 14 09:46:09 UTC 2017


Hi Vladimir,

thanks!

I think I need a sponsor now? Can you do that?

Thanks,
Roman


Am Montag, den 13.02.2017, 16:41 -0800 schrieb Vladimir Kozlov:
> Looks good.
> 
> Thanks,
> Vladimir
> 
> On 2/13/17 1:11 PM, Roman Kennke wrote:
> > in LibaryCallKit::inline_unsafe_access(), the pre_barrier() gets
> > inserted twice for LS_cmp_exchange, in one case it is treated like
> > the
> > other CAS instructions, and at the end it is treated like
> > get_and_set.
> > It's not causing incorrect behaviour, but might impact performance.
> > 
> > The fix is to leave out the 2nd pre-barrier for CAE by checking for
> > get_and_set.
> > 
> > Testing: jcstress
> > 
> > http://cr.openjdk.java.net/~rkennke/fix-cae-prebarrier/webrev.01/
> > 
> > Roman
> > 


More information about the hotspot-compiler-dev mailing list