[PATCH][X86] AVX512: Add non-temporal stores
Adam Nemet
anemet at apple.com
Tue Jun 17 15:31:21 PDT 2014
Hi Elena,
Thanks for the catch and also for the tip to use XED! I was using SDE to verify some of the encodings but that is of course more laborious than XED.
Two patches are attached. The first is to fix movntdqa (NT load) and the second is v2 of the NT store patch.
Let me know if they look good to you.
Thanks,
Adam
On Jun 17, 2014, at 2:27 AM, Demikhovsky, Elena <elena.demikhovsky at intel.com> wrote:
> Hi Adam,
>
> I checked your encoding with XED:
>
> +// CHECK: vmovntpd
> +// CHECK: encoding: [0x62,0xf1,0xfd,0x48,0x2b,0x72,0x04]
> +vmovntpd %zmm6, 4(%rdx)
> +
>
> xed -64 -d 62f1fd482b7204
> 62F1FD482B7204
> ICLASS: VMOVNTPD CATEGORY: DATAXFER EXTENSION: AVX512EVEX IFORM: VMOVNTPD_MEMf64_ZMMf64_AVX512 ISA_SET: AVX512F_512
> SHORT: vmovntpd zmmword ptr [rdx+0x100], zmm6
>
> I see a different displacement value. You should specify compressed displacement in these instructions EVEX_CD8..
>
> - Elena
>
>
> -----Original Message-----
> From: Adam Nemet [mailto:anemet at apple.com]
> Sent: Tuesday, June 17, 2014 04:28
> To: Demikhovsky, Elena
> Cc: llvm-commits
> Subject: [PATCH][X86] AVX512: Add non-temporal stores
>
> Note that I followed the AVX2 convention here and didn't add LLVM intrinsics for stores. These can be generated with the nontemporal hint on LLVM IR stores (see new test). The GCC builtins are lowered directly into nontemporal stores.
>
> <rdar://problem/17082571>
>
> ---------------------------------------------------------------------
> 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 --------------
A non-text attachment was scrubbed...
Name: X86-AVX512-Specify-compressed-displacement-for-vmovn.patch
Type: application/octet-stream
Size: 1635 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140617/4a7a988d/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: X86-AVX512-Add-non-temporal-stores-v2.patch
Type: application/octet-stream
Size: 4337 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140617/4a7a988d/attachment-0001.obj>
More information about the llvm-commits
mailing list