RFR: 8301739: AArch64: Add optimized rules for vector compare with immediate for SVE [v5]
Andrew Haley
aph at openjdk.org
Fri May 5 12:31:24 UTC 2023
On Fri, 5 May 2023 09:39:25 GMT, Chang Peng <duke at openjdk.org> wrote:
>> We can use SVE compare-with-integer-immediate instructions like cmpgt(immediate)[1] to avoid the extra scalar2vector operations.
>>
>> The following instruction sequence
>>
>>
>> movi v17.16b, #12
>> cmpgt p0.b, p7/z, z16.b, z17.b
>>
>>
>> can be optimized to:
>>
>>
>> cmpgt p0.b, p7/z, z16.b, #12
>>
>>
>> This patch does the following:
>> 1. Add SVE compare-with-7bit-unsigned-immediate instructions to C2's backend.
>> SVE cmp<cc>(immediate) instructions can support vector comparing with 7bit unsigned integer immediate (range from 0 to
>> 127)or 5bit signed integer immediate (range from -16 to 15).
>>
>> 2. Add optimized match rules to generate the compare-with-immediate instructions.
>>
>> [1]: https://developer.arm.com/documentation/ddi0596/2021-12/SVE-Instructions/CMP-cc---immediate---Compare-vector-to-immediate-
>
> Chang Peng has updated the pull request incrementally with one additional commit since the last revision:
>
> Merge match rules
OK! Sorry for the delay.
-------------
Marked as reviewed by aph (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/13200#pullrequestreview-1414693746
More information about the hotspot-compiler-dev
mailing list