RFR: 8262355: Support for AVX-512 opmask register allocation. [v4]

Ningsheng Jian njian at openjdk.java.net
Thu Mar 11 02:35:08 UTC 2021


On Wed, 10 Mar 2021 15:49:21 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> src/hotspot/share/opto/type.hpp line 859:
>> 
>>> 857: public:
>>> 858:   friend class TypeVect;
>>> 859:   TypeVectMask(const Type* elem, uint length) : TypeVect(VectorM, elem, length) {}
>> 
>> Any reason why TypeVectMask is a subclass of TypeVect? Do existing helper functions in TypeVect also work for TypeVectMask, e.g. xmeet.
>
> For targets which do not support predicated registers, masks are propagated though vectors. Thus inheriting it seemed logical extension for mask type.

But I think there should not be any mask type for those non-mask hardware targets. If in future we would like to have some type based optimization, e.g. all-true/all-false, that may be confusing with vector type.

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

PR: https://git.openjdk.java.net/jdk/pull/2768


More information about the hotspot-compiler-dev mailing list