<div dir="ltr">Hi Adam,<div><br></div><div>About maskings in <span style="font-family:arial,sans-serif;font-size:13px">vextract*x4 instructions. I think we can include VK4 register class and v4i1 type for AVX512F subset as it is needed by instruction semantics. Elena, do you agree? It would be better keep all intrinsics lowering in one place.</span></div><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">Patches:</span></div><div><br></div><div>0001: LGTM, anyway. It should be committed even though we decided to include VK4 register class for AVX512F subset, because it would be helpful for other instructions (e.g. CMP that will override masking patterns)</div><div><br></div><div>0004: I don't understand why you use "AVX512_masking_asm_only" naming. It's not obvious from this name that only non-masking pattern is used.</div></div><div class="gmail_extra"><br><div class="gmail_quote">2014-10-01 17:47 GMT+04:00 Demikhovsky, Elena <span dir="ltr"><<a href="mailto:elena.demikhovsky@intel.com" target="_blank">elena.demikhovsky@intel.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">0003 : LGTM<br>
<span class="im HOEnZb"><br>
-  Elena<br>
<br>
<br>
-----Original Message-----<br>
From: Adam Nemet [mailto:<a href="mailto:anemet@apple.com">anemet@apple.com</a>]<br>
Sent: Wednesday, October 01, 2014 08:57<br>
To: Demikhovsky, Elena; Robert Khasanov<br>
Cc: LLVM Commits<br>
Subject: [AVX512] Add masking variants for vextract*x4<br>
<br>
</span><div class="HOEnZb"><div class="h5">Hi Elena and Robert,<br>
<br>
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.<br>
<br>
This approach gave me a chance to incorporate asm-only masking support into the AVX512_masking hierarchy.  See patch 1 and 4.<br>
<br>
Also the masking operand was not supported with the MRMDestReg format, so I've added that too.  See patch 2.<br>
<br>
Please let me know if it looks good to you.<br>
<br>
Thanks,<br>
Adam<br>
<br>
</div></div><div class="HOEnZb"><div class="h5">---------------------------------------------------------------------<br>
Intel Israel (74) Limited<br>
<br>
This e-mail and any attachments may contain confidential material for<br>
the sole use of the intended recipient(s). Any review or distribution<br>
by others is strictly prohibited. If you are not the intended<br>
recipient, please contact the sender and delete all copies.<br>
<br>
</div></div></blockquote></div><br></div>