summaryrefslogtreecommitdiff
path: root/src/vm/method.hpp
diff options
context:
space:
mode:
authorAndy Ayers <andya@microsoft.com>2018-01-31 18:01:22 -0800
committerGitHub <noreply@github.com>2018-01-31 18:01:22 -0800
commitaae7a39751eb4b63c46991a56e3bf5c65ea21715 (patch)
tree6971539e234d4118280f895cb164bbd7a72a65a7 /src/vm/method.hpp
parent8dde886767682feac4b5414366dfae7be3c08412 (diff)
downloadcoreclr-aae7a39751eb4b63c46991a56e3bf5c65ea21715.tar.gz
coreclr-aae7a39751eb4b63c46991a56e3bf5c65ea21715.tar.bz2
coreclr-aae7a39751eb4b63c46991a56e3bf5c65ea21715.zip
Add ETL flags for ReadyToRun (#15801)
Add flags to track the presence of ReadyToRun codegen in an assembly and module. Add jitting flags to indicate when a method is jitted because the precompiled code was rejected, either by a profiler or by ReadyToRun dependence tracking. Together these can be used to distingish between * methods jitted because their assemblies were not precompiled * methods jitted because they were not precompiled in an otherwise precompiled assembly
Diffstat (limited to 'src/vm/method.hpp')
-rw-r--r--src/vm/method.hpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/vm/method.hpp b/src/vm/method.hpp
index 9791ddd4ad..664716b8b1 100644
--- a/src/vm/method.hpp
+++ b/src/vm/method.hpp
@@ -1865,8 +1865,8 @@ public:
private:
PCODE PrepareILBasedCode(PrepareCodeConfig* pConfig);
PCODE GetPrecompiledCode(PrepareCodeConfig* pConfig);
- PCODE GetPrecompiledNgenCode();
- PCODE GetPrecompiledR2RCode();
+ PCODE GetPrecompiledNgenCode(PrepareCodeConfig* pConfig);
+ PCODE GetPrecompiledR2RCode(PrepareCodeConfig* pConfig);
PCODE GetMulticoreJitCode();
COR_ILMETHOD_DECODER* GetAndVerifyILHeader(PrepareCodeConfig* pConfig, COR_ILMETHOD_DECODER* pIlDecoderMemory);
COR_ILMETHOD_DECODER* GetAndVerifyMetadataILHeader(PrepareCodeConfig* pConfig, COR_ILMETHOD_DECODER* pIlDecoderMemory);
@@ -1891,12 +1891,18 @@ public:
virtual BOOL SetNativeCode(PCODE pCode, PCODE * ppAlternateCodeToUse);
virtual COR_ILMETHOD* GetILHeader();
virtual CORJIT_FLAGS GetJitCompilationFlags();
+ BOOL ProfilerRejectedPrecompiledCode();
+ BOOL ReadyToRunRejectedPrecompiledCode();
+ void SetProfilerRejectedPrecompiledCode();
+ void SetReadyToRunRejectedPrecompiledCode();
protected:
MethodDesc* m_pMethodDesc;
NativeCodeVersion m_nativeCodeVersion;
BOOL m_needsMulticoreJitNotification;
BOOL m_mayUsePrecompiledCode;
+ BOOL m_ProfilerRejectedPrecompiledCode;
+ BOOL m_ReadyToRunRejectedPrecompiledCode;
};
#ifdef FEATURE_CODE_VERSIONING