diff options
author | Tanner Gooding <tagoo@outlook.com> | 2021-04-14 06:03:45 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-14 06:03:45 +0300 |
commit | f24879fb522ae31abd515e71ba2b24ce146c5dbc (patch) | |
tree | 8da0295db3407943cb2fc0319970d3f5419ab228 /src/coreclr/inc | |
parent | b886e4db6b78548cd97371009b8e278274c44449 (diff) |
Expose an eeIsJitIntrinsic method for quickly determining if a method handle represents an intrinsic method (#51124)
* Updating the JIT/EE interface to expose `isJitIntrinsic`
* Update JITEEVersionIdentifier
* Update fgFindJumpTargets to use the much cheaper `eeIsJitIntrinsic`
* Ensure IsJitIntrinsic exists in the LightWeightMap and fix a copy/paste error
* Run ThunkGenerator
* Don't resolve tokens for CEE_CONSTRAINED when making inlining observations
Diffstat (limited to 'src/coreclr/inc')
-rw-r--r-- | src/coreclr/inc/corinfo.h | 3 | ||||
-rw-r--r-- | src/coreclr/inc/icorjitinfoimpl_generated.h | 3 | ||||
-rw-r--r-- | src/coreclr/inc/jiteeversionguid.h | 10 |
3 files changed, 11 insertions, 5 deletions
diff --git a/src/coreclr/inc/corinfo.h b/src/coreclr/inc/corinfo.h index c971d807a80..f62759467de 100644 --- a/src/coreclr/inc/corinfo.h +++ b/src/coreclr/inc/corinfo.h @@ -1953,6 +1953,9 @@ public: // /**********************************************************************************/ + // Quick check whether the method is a jit intrinsic. Returns the same value as getMethodAttribs(ftn) & CORINFO_FLG_JIT_INTRINSIC, except faster. + virtual bool isJitIntrinsic(CORINFO_METHOD_HANDLE ftn) = 0; + // return flags (a bitfield of CorInfoFlags values) virtual uint32_t getMethodAttribs ( CORINFO_METHOD_HANDLE ftn /* IN */ diff --git a/src/coreclr/inc/icorjitinfoimpl_generated.h b/src/coreclr/inc/icorjitinfoimpl_generated.h index beb71ca0d3f..922a854795e 100644 --- a/src/coreclr/inc/icorjitinfoimpl_generated.h +++ b/src/coreclr/inc/icorjitinfoimpl_generated.h @@ -21,6 +21,9 @@ public: +bool isJitIntrinsic( + CORINFO_METHOD_HANDLE ftn) override; + uint32_t getMethodAttribs( CORINFO_METHOD_HANDLE ftn) override; diff --git a/src/coreclr/inc/jiteeversionguid.h b/src/coreclr/inc/jiteeversionguid.h index 5e6a2ef9899..f76ceb70b11 100644 --- a/src/coreclr/inc/jiteeversionguid.h +++ b/src/coreclr/inc/jiteeversionguid.h @@ -43,11 +43,11 @@ typedef const GUID *LPCGUID; #define GUID_DEFINED #endif // !GUID_DEFINED -constexpr GUID JITEEVersionIdentifier = { /* 1776ab48-edfa-49be-a11f-ec216b28174c */ - 0x1776ab48, - 0xedfa, - 0x49be, - {0xa1, 0x1f, 0xec, 0x21, 0x6b, 0x28, 0x17, 0x4c} +constexpr GUID JITEEVersionIdentifier = { /* a33f2f79-dd8d-49dd-b4c3-ac86f34f6a87 */ + 0xa33f2f79, + 0xdd8d, + 0x49dd, + {0xb4, 0xc3, 0xac, 0x86, 0xf3, 0x4f, 0x6a, 0x87} }; ////////////////////////////////////////////////////////////////////////////////////////////////////////// |