RFR: 8262355: Support for AVX-512 opmask register allocation. [v3]
Ningsheng Jian
njian at openjdk.java.net
Wed Mar 24 07:08:45 UTC 2021
On Tue, 23 Mar 2021 21:55:27 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:
>> New mask type is indeed a vector of BYTE/BOOLEAN values, thus its ok if it goes though regular flows which processes vector type.
>
>> There are too much usages of these two methods that are specific for vectors especially during register allocation.
>
> I don't see any usages of `Type::isa_vect()` except in 2 asserts. RA relies on`RegMask::is_vector()` to detect vectors and it doesn't include `VectorM`.
>
> Regarding the relation between `TypeVect` and `TypeVectMask` I don't have a strong opinion.
> There's definitely enough in common between them to have a common vector-specific supertype, but it's also desirable to avoid confusion between `is_vect()` vs `is_vectmask()`. Considering existing masks are represented as vectors, I think it's fine to leave it as is for now and revisit later when more data is available to make an informed decision.
OK, I agree to leave it as it for now if we don't have a better idea for TypeVectMask.
-------------
PR: https://git.openjdk.java.net/jdk/pull/2768
More information about the hotspot-compiler-dev
mailing list