RFR: 8291600: [vectorapi] vector cast op check is not always needed for vector mask cast [v3]

Xiaohong Gong xgong at openjdk.org
Thu Aug 25 07:05:50 UTC 2022


On Thu, 25 Aug 2022 02:53:32 GMT, Jie Fu <jiefu at openjdk.org> wrote:

>> Xiaohong Gong has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Fix x86 codegen issue
>
> src/hotspot/cpu/x86/c2_MacroAssembler_x86.hpp line 337:
> 
>> 335:   void vector_mask_cast(XMMRegister dst, XMMRegister src, BasicType dst_bt, BasicType src_bt, int vlen);
>> 336: 
>> 337:   void vector_mask_cast_with_tmp(XMMRegister dst, XMMRegister src, XMMRegister xtmp1,
> 
> I would prefer the name as `vector_mask_cast`.

Will fix this in a separate patch. Thanks!

> src/hotspot/cpu/x86/x86.ad line 8452:
> 
>> 8450:   predicate(Matcher::vector_length(n) == Matcher::vector_length(n->in(1)) &&
>> 8451:             Matcher::vector_length_in_bytes(n) > Matcher::vector_length_in_bytes(n->in(1)) &&
>> 8452:             UseAVX == 1 &&
> 
> Since most x86 would be avx > 1, I would suggest testing `UseAVX == 1` first and then others.

Will fix this in a separate patch, thanks!

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

PR: https://git.openjdk.org/jdk/pull/9737


More information about the hotspot-compiler-dev mailing list