[aarch64-port-dev ] RFR: 8144993: Elide redundant memory barrier after AllocationNode

Vitaly Davidovich vitalyd at gmail.com
Tue Dec 15 15:00:42 UTC 2015


Well, scratch what I said; I see Goetz is referring to ArgEscape form, but
I was thinking we're talking about the NoEscape version given the example
is quite simple.

On Tue, Dec 15, 2015 at 9:51 AM, Vitaly Davidovich <vitalyd at gmail.com>
wrote:

> Hotspot implements only the scalar replacement form of EA.
>
> On Tue, Dec 15, 2015 at 9:33 AM, Andrew Haley <aph at redhat.com> wrote:
>
>> On 12/15/2015 02:28 PM, Vitaly Davidovich wrote:
>> > I'm curious why you guys think `a` and/or `b` would be in the oopmap if
>> > compiler proves they don't escape.  AFAIK, both `a` and `b` will be
>> > component-wise scalar replaced.  Once that's done, there's a ref from
>> > scalar replaced a.x to `b`, but `b` itself is scalar replaced.  In
>> either
>> > case, I don't see why either of these need to be known to GC at all
>> (which
>> > would somewhat defeat the purpose of EA to begin with).
>>
>> Are you saying that if escape analysis determined that an object does
>> not escape then you know *for sure* that it will always be scalar-
>> replaced?
>>
>> Andrew.
>>
>>
>


More information about the aarch64-port-dev mailing list