summaryrefslogtreecommitdiff
path: root/src/vm/zapsig.h
diff options
context:
space:
mode:
authorJan Kotas <jkotas@microsoft.com>2019-04-18 19:57:17 -0700
committerGitHub <noreply@github.com>2019-04-18 19:57:17 -0700
commitb7167889bc94c084527f184f852b867b2a1c1d56 (patch)
tree2e1a66620de41a35e72e0da27038121f6c0e3acf /src/vm/zapsig.h
parent4686029068df93a6a54ae27d3363ff62b1e5515b (diff)
downloadcoreclr-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.h21
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: