summaryrefslogtreecommitdiff
path: root/src/jit/emitxarch.h
diff options
context:
space:
mode:
authorTanner Gooding <tagoo@outlook.com>2018-01-09 09:51:40 -0800
committerTanner Gooding <tagoo@outlook.com>2018-01-12 08:44:38 -0800
commit8225ec354bdcbf6026c084dc58ae05e3de9183af (patch)
tree815df1c22f73c73867f5f383be01744cecf46f02 /src/jit/emitxarch.h
parent140ba024bf6edb61744fe6b84bd635d389fe1413 (diff)
downloadcoreclr-8225ec354bdcbf6026c084dc58ae05e3de9183af.tar.gz
coreclr-8225ec354bdcbf6026c084dc58ae05e3de9183af.tar.bz2
coreclr-8225ec354bdcbf6026c084dc58ae05e3de9183af.zip
Adding basic containment support to the x86 HWIntrinsics
Diffstat (limited to 'src/jit/emitxarch.h')
-rw-r--r--src/jit/emitxarch.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/jit/emitxarch.h b/src/jit/emitxarch.h
index 746c26b954..0eac477091 100644
--- a/src/jit/emitxarch.h
+++ b/src/jit/emitxarch.h
@@ -365,6 +365,23 @@ void emitIns_R_R(instruction ins, emitAttr attr, regNumber reg1, regNumber reg2)
void emitIns_R_R_I(instruction ins, emitAttr attr, regNumber reg1, regNumber reg2, int ival);
+void emitIns_R_A(
+ instruction ins, emitAttr attr, regNumber reg1, regNumber baseReg, regNumber indxReg, size_t scale, ssize_t offs);
+
+void emitIns_R_R_A(instruction ins,
+ emitAttr attr,
+ regNumber reg1,
+ regNumber reg2,
+ regNumber baseReg,
+ regNumber indxReg,
+ size_t scale,
+ ssize_t offs);
+
+void emitIns_R_R_C(
+ instruction ins, emitAttr attr, regNumber reg1, regNumber reg2, CORINFO_FIELD_HANDLE fldHnd, int offs);
+
+void emitIns_R_R_S(instruction ins, emitAttr attr, regNumber reg1, regNumber reg2, int varx, int offs);
+
void emitIns_R_R_R(instruction ins, emitAttr attr, regNumber reg1, regNumber reg2, regNumber reg3);
void emitIns_R_R_R_I(instruction ins, emitAttr attr, regNumber reg1, regNumber reg2, regNumber reg3, int ival);
@@ -424,7 +441,18 @@ void emitIns_R_AX(instruction ins, emitAttr attr, regNumber ireg, regNumber reg,
void emitIns_AX_R(instruction ins, emitAttr attr, regNumber ireg, regNumber reg, unsigned mul, int disp);
#if FEATURE_HW_INTRINSICS
+void emitIns_SIMD_R_R_A(instruction ins,
+ regNumber reg,
+ regNumber reg1,
+ regNumber baseReg,
+ regNumber indxReg,
+ size_t scale,
+ ssize_t offs,
+ var_types simdtype);
+void emitIns_SIMD_R_R_C(
+ instruction ins, regNumber reg, regNumber reg1, CORINFO_FIELD_HANDLE fldHnd, int offs, var_types simdtype);
void emitIns_SIMD_R_R_R(instruction ins, regNumber reg, regNumber reg1, regNumber reg2, var_types simdtype);
+void emitIns_SIMD_R_R_S(instruction ins, regNumber reg, regNumber reg1, int varx, int offs, var_types simdtype);
#endif
#if FEATURE_STACK_FP_X87