RFR: 8348868: AArch64: Add backend support for SelectFromTwoVector [v3]

Xiaohong Gong xgong at openjdk.org
Tue Jun 17 03:04:31 UTC 2025


On Tue, 17 Jun 2025 02:48:54 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:

>> Bhavana Kilambi has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Addressed review comments and added a JTREG test
>
> src/hotspot/cpu/aarch64/aarch64_vector.ad line 7176:
> 
>> 7174:                                           vReg index, vReg tmp1) %{
>> 7175:   predicate((Matcher::vector_element_basic_type(n) == T_SHORT ||
>> 7176:             type2aelembytes(Matcher::vector_element_basic_type(n)) == 4) &&
> 
> To use the same basic type check condition, can we use `type2aelembytes(Matcher::vector_element_basic_type(n)) == 2` instead of `Matcher::vector_element_basic_type(n) == T_SHORT` here?

How about just using the negate condition of rule `vselect_from_two_vectors` ? 

predicate(Matcher::vector_element_basic_type(n) != T_BYTE &&
          (UseSVE < 2 || Matcher::vector_length_in_bytes(n) < 16));

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23570#discussion_r2151227373


More information about the hotspot-compiler-dev mailing list