summaryrefslogtreecommitdiff
path: root/src/jit/namedintrinsiclist.h
diff options
context:
space:
mode:
authorTanner Gooding <tagoo@outlook.com>2019-04-05 13:58:18 -0700
committerGitHub <noreply@github.com>2019-04-05 13:58:18 -0700
commit1b4d7c77d3e9d1a67ffa354a63692ecc07553b5c (patch)
tree90396ba837369108d702764918b63da990d9a5df /src/jit/namedintrinsiclist.h
parent04f97c9923156b0c695f5fe441ffd14624de8076 (diff)
downloadcoreclr-1b4d7c77d3e9d1a67ffa354a63692ecc07553b5c.tar.gz
coreclr-1b4d7c77d3e9d1a67ffa354a63692ecc07553b5c.tar.bz2
coreclr-1b4d7c77d3e9d1a67ffa354a63692ecc07553b5c.zip
Update the JIT to recognize the IsSupported property for all HWIntrinsics (#23751)
* Moving some JITDUMP calls into Compiler::lookupNamedIntrinsic * Marking the IsSupported methods as Intrinsic for all HWIntrinsic ISAs * Updating the hwintrinsic importation to more generally handle IsSupported and ThrowPNSE * Applying formatting patch. * Adding using System.Runtime.CompilerServices to the various x86 PlatformNotSupported HWIntrinsic files
Diffstat (limited to 'src/jit/namedintrinsiclist.h')
-rw-r--r--src/jit/namedintrinsiclist.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/jit/namedintrinsiclist.h b/src/jit/namedintrinsiclist.h
index 725e771321..5f28e7033d 100644
--- a/src/jit/namedintrinsiclist.h
+++ b/src/jit/namedintrinsiclist.h
@@ -10,6 +10,7 @@
enum NamedIntrinsic : unsigned short
{
NI_Illegal = 0,
+
NI_System_Enum_HasFlag,
NI_System_Math_FusedMultiplyAdd,
NI_System_Math_Round,
@@ -19,20 +20,22 @@ enum NamedIntrinsic : unsigned short
NI_System_Buffers_Binary_BinaryPrimitives_ReverseEndianness,
#ifdef FEATURE_HW_INTRINSICS
+ NI_IsSupported_True,
+ NI_IsSupported_False,
+ NI_Throw_PlatformNotSupportedException,
+
NI_HW_INTRINSIC_START,
#if defined(_TARGET_XARCH_)
#define HARDWARE_INTRINSIC(id, name, isa, ival, size, numarg, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, category, flag) \
NI_##id,
#include "hwintrinsiclistxarch.h"
#elif defined(_TARGET_ARM64_)
- NI_ARM64_IsSupported_False,
- NI_ARM64_IsSupported_True,
- NI_ARM64_PlatformNotSupported,
#define HARDWARE_INTRINSIC(id, isa, name, form, ins0, ins1, ins2, flags) id,
#include "hwintrinsiclistArm64.h"
#endif // !defined(_TARGET_XARCH_) && !defined(_TARGET_ARM64_)
NI_HW_INTRINSIC_END,
#endif // FEATURE_HW_INTRINSICS
+
};
#endif // _NAMEDINTRINSICLIST_H_