RFR: 8262355: Support for AVX-512 opmask register allocation. [v8]
Jatin Bhateja
jbhateja at openjdk.java.net
Sun Mar 21 13:15:45 UTC 2021
On Tue, 16 Mar 2021 13:15:01 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:
>> Jatin Bhateja has updated the pull request incrementally with one additional commit since the last revision:
>>
>> 8262355: Removing object re-materialization handling for mask-generating nodes during de-opt, it will be added separately.
>
> Overall, looks good.
>
> Except for a couple of places, mostly stylistic comments.
>
> Still, would like to see an agreement with @XiaohongGong and @nsjian before the integration.
Hi @iwanowww , @nsjian ,
Since newly introduced TypeVectMask is a valid vector type, its safe to include it into Type::is_vect and Type::isa_vect routines.
Other proposal to have strict base type check ( _base >= VectorA && _base <= VectorZ) for isa_vect and a relaxed check for is_vect which include VectorM also looks workable, but it may be in-consistent w.r.t rest of the type checking routines.
Instead including VectorM in both is_vect and isa_vect and a mechanism to prevent any general vector processing for masked types under a isa_vectomask type checks looks appealing. After evaluating existing backend I could see that there are only few places ( e.g. logic cone opts , MachSpillCopyNode::implimentation) where we need to restrict generic vector type processing for mask vector type node. These have been handled as special scenarios in the patch.
Please let me know if there comments or is it safe to land this base patch.
Best Regards,
Jatin
-------------
PR: https://git.openjdk.java.net/jdk/pull/2768
More information about the hotspot-compiler-dev
mailing list