RFR: 8256999: Add C2 intrinsic for Reference.refersTo and PhantomReference::refersTo

Vladimir Ivanov vlivanov at openjdk.java.net
Wed Nov 25 10:03:56 UTC 2020


On Wed, 25 Nov 2020 09:47:19 GMT, Erik Österlund <eosterlund at openjdk.org> wrote:

>> src/hotspot/cpu/x86/gc/z/z_x86_64.ad line 123:
>> 
>>> 121: 
>>> 122:   ins_encode %{
>>> 123:     if (barrier_data() != 0) { // barrier could be elided by ZBarrierSetC2::analyze_dominating_barriers()
>> 
>> Maybe keep a bit reserved for `ZLoadBarrierElided` to just map it to `0`? The former is preferred because it keeps the info that there was a barrier data attached in the first place.
>
> The information that there was a barrier attached, is implicit in the ins_encode block due to it being run at all. In other words, since we matched the mach node to our ZGC access instead of a normal access, we already know that there was barrier data attached, and that we no longer have such barrier data.

Ok, makes sense. What do you think about making `ZLoadBarrierElided = 0` then?

-------------

PR: https://git.openjdk.java.net/jdk/pull/1425


More information about the core-libs-dev mailing list