On Wed, 25 Nov 2020 07:58:42 GMT, Aleksey Shipilev <sh...@openjdk.org> wrote:

>> JDK-8188055 added the function Reference.refersTo. For performance, the 
>> supporting native methods Reference.refersTo0 and PhantomReference.refersTo0 
>> should be intrinsified by C2.
>> 
>> Initial patch was prepared by @fisk.
>> 
>> Tested hs-tier1-4. Added new compiler tests to test intrinsics.
>> 
>> Ran new test with Shenandoah. Found only one issue. As result I disable  
>> PhantomReference::refersTo intrinsic for COOP+ Shenandoah combination. 
>> Someone from Shenandoah team have to test changes if that is enough.
>
> src/hotspot/share/opto/c2compiler.cpp line 476:
> 
>> 474:     if (UseCompressedOops && UseShenandoahGC) return false;
>> 475: #endif
>> 476:     break;
> 
> Is this intended to disable the intrinsic on all non-64-bit platforms? Is 
> that only for Shenandoah 64-bit? I wonder if it should just be:
> 
>   case vmIntrinsics::_PhantomReference_refersTo0:
>     if (UseCompressedOops && UseShenandoahGC) return false;
>     break;

Considering `UseCompressedOops` doesn't make much sense in 32-bit mode and is 
set to `false`, it seems `#ifdef` can be just dropped.

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

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

Reply via email to