[vector] RFR: Remove JVM support for bitwise NOT

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Tue Apr 7 16:44:32 UTC 2020


> So IIUC you removed the underlying vector op + C2 node, composing from a constant-all-set-bits + xor, then in hotspot recognizing more generally that vector pattern for optimization on supported platforms, such as aarch64?

Yes, "XorV src (Replicate 0xFF..FF)" pattern which is equivalent to 
vectorized bitwise NOT is detected on backend side and optimal 
instruction sequence is generated.

Considering x86 doesn't have a dedicated instruction which does the job, 
there's no reason to do anything special for the pattern there: good 
enough code is generated when XorV and Replicate are matched separately.

Best regards,
Vladimir Ivanov

>> On Apr 7, 2020, at 6:36 AM, Vladimir Ivanov <vladimir.x.ivanov at oracle.com> wrote:
>>
>> http://cr.openjdk.java.net/~vlivanov/panama/vector/notv/webrev.00
>>
>> Remove NotV support. Implement it as "XorV v (Replicate 0xFF..FF)" instead.
>>
>> Testing: jdk/incubator/vector tests
>>
>> The patch is against vectorIntrinsics branch.
>>
>> Best regards,
>> Vladimir Ivanov
> 


More information about the panama-dev mailing list