diff options
author | Jan Kotas <jkotas@microsoft.com> | 2019-04-18 19:57:17 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-18 19:57:17 -0700 |
commit | b7167889bc94c084527f184f852b867b2a1c1d56 (patch) | |
tree | 2e1a66620de41a35e72e0da27038121f6c0e3acf /src/vm/zapsig.h | |
parent | 4686029068df93a6a54ae27d3363ff62b1e5515b (diff) | |
download | coreclr-b7167889bc94c084527f184f852b867b2a1c1d56.tar.gz coreclr-b7167889bc94c084527f184f852b867b2a1c1d56.tar.bz2 coreclr-b7167889bc94c084527f184f852b867b2a1c1d56.zip |
Move R2R-specific code to be outside FEATURE_PREJIT (#24075)
This refactoring is preparation for disabling fragile NGen support in the runtime. It keeps fragile-NGen specific code under FEATURE_PREJIT and moves the code required to support R2R to be outside FEATURE_PREJIT.
The eventual goal is to compile the runtime without FEATURE_PREJIT defined to avoid fragile-NGen specific overhead.
Diffstat (limited to 'src/vm/zapsig.h')
-rw-r--r-- | src/vm/zapsig.h | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/vm/zapsig.h b/src/vm/zapsig.h index d09290c27d..3b537cf8c1 100644 --- a/src/vm/zapsig.h +++ b/src/vm/zapsig.h @@ -78,7 +78,14 @@ public: pfnTokenDefinition(_pfnTokenDefinition) {} -#ifdef FEATURE_PREJIT + // Static methods + + // Compare a type handle with a signature whose tokens are resolved with respect to pModule + // pZapSigContext is used to resolve ELEMENT_TYPE_MODULE_ZAPSIG encodings + static BOOL CompareSignatureToTypeHandle(PCCOR_SIGNATURE pSig, + Module* pModule, + TypeHandle handle, + const ZapSig::Context * pZapSigContext); // Instance methods @@ -94,15 +101,7 @@ public: BOOL GetSignatureForTypeHandle(TypeHandle typeHandle, SigBuilder * pSigBuilder); - // Static methods - - // Compare a type handle with a signature whose tokens are resolved with respect to pModule - // pZapSigContext is used to resolve ELEMENT_TYPE_MODULE_ZAPSIG encodings - static BOOL CompareSignatureToTypeHandle(PCCOR_SIGNATURE pSig, - Module* pModule, - TypeHandle handle, - const ZapSig::Context * pZapSigContext); - +#ifdef FEATURE_PREJIT // Compare a type handle with a tagged pointer. Ensure that the common path is inlined into the caller. static FORCEINLINE BOOL CompareTaggedPointerToTypeHandle(Module * pModule, TADDR addr, TypeHandle handle) { @@ -115,6 +114,7 @@ public: } static BOOL CompareFixupToTypeHandle(Module * pModule, TADDR fixup, TypeHandle handle); +#endif static BOOL CompareTypeHandleFieldToTypeHandle(TypeHandle *pTypeHnd, TypeHandle typeHnd2); @@ -127,7 +127,6 @@ private: // static CorElementType TryEncodeUsingShortcut(/* in */ MethodTable * pMT); -#endif // FEATURE_PREJIT private: |