summaryrefslogtreecommitdiff
path: root/src/jit/gentree.h
diff options
context:
space:
mode:
authorTanner Gooding <tagoo@outlook.com>2018-01-28 11:37:12 -0800
committerTanner Gooding <tagoo@outlook.com>2018-01-28 15:45:40 -0800
commitcd436eed8a1a34ba8b8901d68f4b4a470b9670a6 (patch)
tree17830829a13861171416f21fcc253fc32fe551be /src/jit/gentree.h
parent256b05fae0d8e7a95235212064463b2ebbcc8f0f (diff)
downloadcoreclr-cd436eed8a1a34ba8b8901d68f4b4a470b9670a6.tar.gz
coreclr-cd436eed8a1a34ba8b8901d68f4b4a470b9670a6.tar.bz2
coreclr-cd436eed8a1a34ba8b8901d68f4b4a470b9670a6.zip
Adding support for the SSE Store, StoreAligned, StoreAlignedNonTemporal, StoreHigh, StoreLow, and StoreScalar intrinsics
Diffstat (limited to 'src/jit/gentree.h')
-rw-r--r--src/jit/gentree.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/jit/gentree.h b/src/jit/gentree.h
index b7653217df..6fee2ad0f9 100644
--- a/src/jit/gentree.h
+++ b/src/jit/gentree.h
@@ -1083,7 +1083,7 @@ public:
{
// These are the only operators which can produce either VOID or non-VOID results.
assert(OperIs(GT_NOP, GT_CALL, GT_LOCKADD, GT_FIELD_LIST, GT_COMMA) || OperIsCompare() || OperIsLong() ||
- OperIsSIMD());
+ OperIsSIMD() || OperIsHWIntrinsic());
return false;
}
@@ -1593,6 +1593,20 @@ public:
return OperIsSIMD(gtOper);
}
+ static bool OperIsHWIntrinsic(genTreeOps gtOper)
+ {
+#ifdef FEATURE_HW_INTRINSICS
+ return gtOper == GT_HWIntrinsic;
+#else
+ return false;
+#endif // FEATURE_HW_INTRINSICS
+ }
+
+ bool OperIsHWIntrinsic() const
+ {
+ return OperIsHWIntrinsic(gtOper);
+ }
+
#ifdef FEATURE_HW_INTRINSICS
inline bool OperIsSimdHWIntrinsic() const;
#else