[aarch64-port-dev ] RFR: 8243339: AArch64: Obsolete UseBarriersForVolatile option

Andrew Dinn adinn at redhat.com
Thu May 14 10:39:06 UTC 2020


On 14/05/2020 11:15, Andrew Haley wrote:
> On 5/14/20 11:07 AM, Xiaohong Gong wrote:
>> Hi Andrew,
>>
>> Thanks for having a look at it!
>>
>>  > On 5/14/20 10:37 AM, Andrew Haley wrote:
>>  > > On 5/14/20 9:48 AM, Andrew Dinn wrote:
>>  > >> Just for references a direct link to the webrev, issue and CSR
>>  > are:
>>  > >>
>>  > >>   https://cr.openjdk.java.net/~xgong/rfr/8243339/webrev.00/
>>  > >>   https://bugs.openjdk.java.net/browse/JDK-8243339
>>  > >>   https://bugs.openjdk.java.net/browse/JDK-8243456
>>  > >>
>>  > >> The webrev looks fine to me. Nice work, thank you!
>>  > >
>>  > > There's a problem with C1: we generate unnecessary DMBs if
>>  > > we're using TieredStopAtLevel=1 or if we only have the client
>>  > > compiler. This is a performance regression, so I reject this
>>  > > patch.
>>  >
>>  > There are similar regressoins in the interpreter.
>>
>> Yes, I agree with you that regressions exist for interpreter and
>> client compiler.  So do you think if it's better to add the
>> conditions to add DMBs for C1 and interpreter?  How about just
>> excluding the scenario like "interpreter only", "client compiler
>> only" and "TieredStopAtLevel=1" ?
> 
> Yes, I think so. Is there some way simply to ask the question "Are we
> using C2 or JVMCI compilers?" That's what we need to know.
This can be done using build time conditionality. Elsewhere in the code
base we have:

#ifdef COMPILER2
  . . .

#if INCLUDE_JVMCI
  . . .

#if COMPILER2_OR_JVMCI
  . . .


regards,


Andrew Dinn
-----------



More information about the hotspot-compiler-dev mailing list