[AVX512] Add masking variants for vextract*x4

Adam Nemet anemet at apple.com
Wed Oct 1 10:05:29 PDT 2014


On Oct 1, 2014, at 6:41 AM, Demikhovsky, Elena <elena.demikhovsky at intel.com> wrote:

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

Doing before the switch would be a good improvement to this code, let me see if I can do it.  I will probably commit that as a separate patch.

Thanks,
Adam

> 
> -  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.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141001/fe2c7002/attachment.html>


More information about the llvm-commits mailing list