RFR: 8269559: AArch64: Implement string_compare intrinsic in SVE [v2]

TatWai Chong github.com+78814694+tatwaichong at openjdk.java.net
Mon Aug 23 21:48:06 UTC 2021


On Tue, 17 Aug 2021 07:14:24 GMT, Nick Gasson <ngasson at openjdk.org> wrote:

>> TatWai Chong has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Restore the removal of vtmp3 (=V2) as it is still used by the non-SVE compare-long-strings stub.
>>   
>>   And remove the assertion in `string_compare` since it won't help as the registers
>>   used in the stub are fixed.
>
> src/hotspot/cpu/aarch64/aarch64.ad line 16515:
> 
>> 16513: instruct string_compareUL(iRegP_R1 str1, iRegI_R2 cnt1, iRegP_R3 str2, iRegI_R4 cnt2,
>> 16514:                         iRegI_R0 result, iRegP_R10 tmp1, iRegL_R11 tmp2,
>> 16515:                         vRegD_V0 vtmp1, vRegD_V1 vtmp2, vRegD_V2 vtmp3, rFlagsReg cr)
> 
> I think vtmp3 (=V2) is still used by the non-SVE compare-long-strings stub? (see `generate_compare_long_string_different_encoding`)

Thanks, Nick.
Yes. I remove this vtmp3 from input arguments wrongly. I roll back this mistake in the following patch.

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

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


More information about the core-libs-dev mailing list