summaryrefslogtreecommitdiff
path: root/src/jit/instrsxarch.h
diff options
context:
space:
mode:
authorTanner Gooding <tagoo@outlook.com>2018-02-16 10:30:05 -0800
committerTanner Gooding <tagoo@outlook.com>2018-02-21 22:42:13 -0800
commit987f93399225199bdb3c53e00c9166fb37ca1396 (patch)
tree8fa74fa0e4955a9e4cf63413e988997d0fa7ff69 /src/jit/instrsxarch.h
parent7c90b467d072b11c08804a3bb33f3d71f67a6e49 (diff)
downloadcoreclr-987f93399225199bdb3c53e00c9166fb37ca1396.tar.gz
coreclr-987f93399225199bdb3c53e00c9166fb37ca1396.tar.bz2
coreclr-987f93399225199bdb3c53e00c9166fb37ca1396.zip
Adding support for the SSE3 and SSSE3 hardware intrinsics
Diffstat (limited to 'src/jit/instrsxarch.h')
-rw-r--r--src/jit/instrsxarch.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/jit/instrsxarch.h b/src/jit/instrsxarch.h
index b33abcba84..b23b44539f 100644
--- a/src/jit/instrsxarch.h
+++ b/src/jit/instrsxarch.h
@@ -400,6 +400,13 @@ INST3( phaddd, "phaddd" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SS
INST3( pabsb, "pabsb" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x1C)) // Packed absolute value of bytes
INST3( pabsw, "pabsw" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x1D)) // Packed absolute value of 16-bit integers
INST3( pabsd, "pabsd" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x1E)) // Packed absolute value of 32-bit integers
+INST3( palignr, "palignr" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE3A(0x0F)) // Packed Align Right
+INST3( pmaddubsw, "pmaddubsw" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x04)) // Multiply and Add Packed Signed and Unsigned Bytes
+INST3( pmulhrsw, "pmulhrsw" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x0B)) // Packed Multiply High with Round and Scale
+INST3( pshufb, "pshufb" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x00)) // Packed Shuffle Bytes
+INST3( psignb, "psignb" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x08)) // Packed SIGN
+INST3( psignw, "psignw" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x09)) // Packed SIGN
+INST3( psignd, "psignd" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x0A)) // Packed SIGN
INST3( pminsb, "pminsb" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x38)) // packed minimum signed bytes
INST3( pminsd, "pminsd" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x39)) // packed minimum 32-bit signed integers
INST3( pminuw, "pminuw" , 0, IUM_WR, 0, 0, BAD_CODE, BAD_CODE, SSE38(0x3A)) // packed minimum 16-bit unsigned integers