RFR: 8348868: AArch64: Add backend support for SelectFromTwoVector [v3]
Bhavana Kilambi
bkilambi at openjdk.org
Mon Jun 16 10:12:15 UTC 2025
On Wed, 12 Feb 2025 13:57:18 GMT, Andrew Haley <aph at openjdk.org> wrote:
>> src/hotspot/cpu/aarch64/aarch64_vector_ad.m4 line 4955:
>>
>>> 4953: match(Set dst (SelectFromTwoVector (Binary index src1) src2));
>>> 4954: effect(TEMP_DEF dst, TEMP tmp1, TEMP tmp2);
>>> 4955: format %{ "vselect_from_two_vectors_SIF $dst, $src1, $src2, $index\t# vector (4S/8S/2I/4I/2F/4F). KILL $tmp1, $tmp2" %}
>>
>> Be careful here. `select_from_two_vectors_SIFNeon` seems to alter `src1`, so you need a `USE_KILL` effect.
>
>> @theRealAph Thanks for the suggestion! makes sense to add USE_KILL for the src1 usage here. I am getting into some errors when I do that. I'll resolve them and get back soon. Thanks!
>
> Maybe that should be USE_DEF or TEMP_DEF.
I have used another temp variable instead of modifying the source directly. Please review if it's acceptable. Thank you!
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/23570#discussion_r2149567699
More information about the hotspot-compiler-dev
mailing list