[AVX512] Add masking variants for vextract*x4

Demikhovsky, Elena elena.demikhovsky at intel.com
Wed Oct 1 06:41:17 PDT 2014


Patch 0002: I suggest to add "++additionalOperands" for all relevant modrm forms,
or just do this before switch.

-  Elena


-----Original Message-----
From: Adam Nemet [mailto:anemet at apple.com] 
Sent: Wednesday, October 01, 2014 08:57
To: Demikhovsky, Elena; Robert Khasanov
Cc: LLVM Commits
Subject: [AVX512] Add masking variants for vextract*x4

Hi Elena and Robert,

First I tried to implement this with the usual intrinsic lowering but unfortunately because vextract*x4 produces v4* vectors I would have needed VK4 and v4i1 for masking in AVX512f which only come with AVX512vl.  I don't think these intrinsics are worth the hassle making that work so instead I went for asm-only instructions.  Then I have the intrinsics Pat<>s to call the corresponding instruction.

This approach gave me a chance to incorporate asm-only masking support into the AVX512_masking hierarchy.  See patch 1 and 4.

Also the masking operand was not supported with the MRMDestReg format, so I've added that too.  See patch 2.

Please let me know if it looks good to you.

Thanks,
Adam

---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.





More information about the llvm-commits mailing list