RFR: 8320448: Accelerate IndexOf using AVX2 [v41]
Scott Gibbons
sgibbons at openjdk.org
Sat May 25 21:57:13 UTC 2024
On Sat, 25 May 2024 00:15:03 GMT, Sandhya Viswanathan <sviswanathan at openjdk.org> wrote:
>> Scott Gibbons has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Fix test; review comments
>
> src/hotspot/cpu/x86/c2_stubGenerator_x86_64_string.cpp line 316:
>
>> 314: // Set up jump tables. Used when needle size <= NUMBER_OF_CASES
>> 315: setup_jump_tables(ae, L_returnRBP, L_checkRangeAndReturn, L_bigCaseFixupAndReturn,
>> 316: &big_jump_table, &small_jump_table, _masm);
>
> We could directly use L_returnError here instead of L_returnRBP.
OK
> src/hotspot/cpu/x86/c2_stubGenerator_x86_64_string.cpp line 476:
>
>> 474: // Used to check and return value in rbp - usually error
>> 475: __ bind(L_returnRBP);
>> 476: __ movq(rax, rbp);
>
> This seems spurious as rax is being overwritten at line 489. Did you intend to return -1?
Removed all references to L_returnRBP. Replaced with L_returnError.
> src/hotspot/cpu/x86/c2_stubGenerator_x86_64_string.cpp line 1816:
>
>> 1814: byte_compare_helper(i + 1, L_loopTop, L_fixup, needle, needle_val, hs_ptr, eq_mask, set_bit,
>> 1815: rTmp4, ae, _masm);
>> 1816: }
>
> L_checkRange on NoMatch could be L_error instead.
Fixed
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/16753#discussion_r1614900796
PR Review Comment: https://git.openjdk.org/jdk/pull/16753#discussion_r1614903860
PR Review Comment: https://git.openjdk.org/jdk/pull/16753#discussion_r1614901577
More information about the hotspot-compiler-dev
mailing list