RFR: JDK-8300808: Accelerate Base64 on x86 for AVX2 [v11]
Sandhya Viswanathan
sviswanathan at openjdk.org
Tue Feb 7 15:57:00 UTC 2023
On Tue, 7 Feb 2023 02:49:44 GMT, Sandhya Viswanathan <sviswanathan at openjdk.org> wrote:
>> Scott Gibbons has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Add algorithm comments
>
> src/hotspot/cpu/x86/stubGenerator_x86_64.cpp line 2227:
>
>> 2225:
>> 2226: // lut_roll URL
>> 2227: __ emit_data64(0xb9b9bfbf04111000, relocInfo::none);
>
> The lut_roll URL doesn't seem to be correct:
> 0x5F (URL base64 ASCII for "/") would need an offset of -20H i.e. 0xEC.
> However the others with upper nibble as 5 need an offset of -65H i.e. 0xBF.
>
> It looks to me that the adjustment for 5F should be -4 instead of -1 at line 2722.
@asgibbons Currently the base64 string with "_" is not getting the vectorized implementation. as per my previous comment. It should show up in the jmh test. Once you fix that you will come across this bug. The logic is wrong here for 5F case.
-------------
PR: https://git.openjdk.org/jdk/pull/12126
More information about the hotspot-compiler-dev
mailing list