diff options
author | H. Peter Anvin <hpa@zytor.com> | 2008-08-27 18:47:05 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2008-08-27 18:47:05 -0700 |
commit | 04f54809d29549a2c73eddbb68f3cb76863ca26f (patch) | |
tree | 25521b8c191a9da176199b999316ff410d8ce19a | |
parent | 06425512ae1aafc48960b55084ef7bc06b0003a3 (diff) | |
download | nasm-04f54809d29549a2c73eddbb68f3cb76863ca26f.tar.gz |
Add 256-bit AVX stores per the latest AVX spec.
Add 256-bit forms of VMOVNTPD, VMOVNTPS, and VMOVNT[DQ]Q.
-rw-r--r-- | insns.dat | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -2802,14 +2802,14 @@ VMOVDDUP xmmreg,xmmrm [rm: vex.128.f2.0f 12 /r] AVX,SANDYBRIDGE,SQ VMOVDDUP ymmreg,ymmrm [rm: vex.256.f2.0f 12 /r] AVX,SANDYBRIDGE,SY VMOVDQA xmmreg,xmmrm [rm: vex.128.66.0f 6f /r] AVX,SANDYBRIDGE,SO VMOVDQA xmmrm,xmmreg [mr: vex.128.66.0f 7f /r] AVX,SANDYBRIDGE,SO -; These are officially documented as VMOVDQA, but VMOVQQA seems more logical to be... +; These are officially documented as VMOVDQA, but VMOVQQA seems more logical to me... VMOVQQA ymmreg,ymmrm [rm: vex.256.66.0f 6f /r] AVX,SANDYBRIDGE,SY VMOVQQA ymmrm,ymmreg [mr: vex.256.66.0f 7f /r] AVX,SANDYBRIDGE,SY VMOVDQA ymmreg,ymmrm [rm: vex.256.66.0f 6f /r] AVX,SANDYBRIDGE,SY VMOVDQA ymmrm,ymmreg [mr: vex.256.66.0f 7f /r] AVX,SANDYBRIDGE,SY VMOVDQU xmmreg,xmmrm [rm: vex.128.f3.0f 6f /r] AVX,SANDYBRIDGE,SO VMOVDQU xmmrm,xmmreg [mr: vex.128.f3.0f 7f /r] AVX,SANDYBRIDGE,SO -; These are officially documented as VMOVDQU, but VMOVQQU seems more logical to be... +; These are officially documented as VMOVDQU, but VMOVQQU seems more logical to me... VMOVQQU ymmreg,ymmrm [rm: vex.256.f3.0f 6f /r] AVX,SANDYBRIDGE,SY VMOVQQU ymmrm,ymmreg [mr: vex.256.f3.0f 7f /r] AVX,SANDYBRIDGE,SY VMOVDQU ymmreg,ymmrm [rm: vex.256.f3.0f 6f /r] AVX,SANDYBRIDGE,SY @@ -2839,9 +2839,14 @@ VMOVMSKPS reg32,xmmreg [rm: vex.128.0f 50 /r] AVX,SANDYBRIDGE VMOVMSKPS reg64,ymmreg [rm: vex.256.0f 50 /r] AVX,SANDYBRIDGE,LONG VMOVMSKPS reg32,ymmreg [rm: vex.256.0f 50 /r] AVX,SANDYBRIDGE VMOVNTDQ mem,xmmreg [mr: vex.128.66.0f e7 /r] AVX,SANDYBRIDGE,SO +; Officially VMOVNTDQ, but VMOVNTQQ seems more logical to me... +VMOVNTQQ mem,ymmreg [mr: vex.256.66.0f e7 /r] AVX,SANDYBRIDGE,SY +VMOVNTDQ mem,ymmreg [mr: vex.256.66.0f e7 /r] AVX,SANDYBRIDGE,SY VMOVNTDQA xmmreg,mem [rm: vex.128.66.0f38 2a /r] AVX,SANDYBRIDGE,SO VMOVNTPD mem,xmmreg [mr: vex.128.66.0f 2b /r] AVX,SANDYBRIDGE,SO +VMOVNTPD mem,ymmreg [mr: vex.256.66.0f 2b /r] AVX,SANDYBRIDGE,SY VMOVNTPS mem,xmmreg [mr: vex.128.0f 2b /r] AVX,SANDYBRIDGE,SO +VMOVNTPS mem,ymmreg [mr: vex.256.0f 2b /r] AVX,SANDYBRIDGE,SO VMOVSD xmmreg,xmmreg,xmmreg [rvm: vex.nds.128.f2.0f 10 /r] AVX,SANDYBRIDGE VMOVSD xmmreg,xmmreg [r+vm: vex.nds.128.f2.0f 10 /r] AVX,SANDYBRIDGE VMOVSD xmmreg,mem [rm: vex.128.f2.0f 10 /r] AVX,SANDYBRIDGE,SQ |