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

John Rose john.r.rose at oracle.com
Thu Mar 4 00:35:11 UTC 2021


On Mar 3, 2021, at 4:22 AM, Vladimir Ivanov <vladimir.x.ivanov at oracle.com> wrote:
> 
> Matcher::perdicate_reg_type() is not enough to hide the platform-specific choice. The choice of TypeLong introduces significant complexity in shared code (e.g, PhiNode and MachSpillCopyNode-related changes). Moreover, SVE will have to choose an alternative and more generic representation. Hence, it makes the ad-hoc changes needed for RegVMask+TypeLong even less attractive.
> 
> Considering there's active work going on on SVE support, I'm in favor of collaborating on unified representation between platforms and rely on it in the first version.

I agree.  Would it help to have TypeMask as a #define of TypeLong,
in the first versions?  (I’m thinking of TypeX as a similar pseudo-type.)


More information about the hotspot-compiler-dev mailing list