RFR: 8291600: [vectorapi] vector cast op check is not always needed for vector mask cast [v5]
Xiaohong Gong
xgong at openjdk.org
Wed Aug 31 03:12:13 UTC 2022
On Wed, 31 Aug 2022 02:50:37 GMT, Jie Fu <jiefu at openjdk.org> wrote:
>> Xiaohong Gong has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Add vector cast op check for vector mask for some cases
>
> src/hotspot/share/opto/vectorIntrinsics.cpp line 2498:
>
>> 2496: }
>> 2497: if (is_mask && is_floating_point_type(elem_bt_to)) {
>> 2498: new_elem_bt_to = elem_bt_to == T_FLOAT ? T_INT : T_LONG;
>
> Why we need this change?
Before `VectorCast` is used for vector mask casting, the src floating point type has been casted to an integral type that has the same element size. Please see the codes here: https://github.com/openjdk/jdk/blob/master/src/hotspot/share/opto/vectornode.cpp#L1741. We'd better to check the right type of the generated vector cast op.
-------------
PR: https://git.openjdk.org/jdk/pull/9737
More information about the hotspot-compiler-dev
mailing list