diff options
author | Andy Ayers <andya@microsoft.com> | 2018-01-31 18:01:22 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-31 18:01:22 -0800 |
commit | aae7a39751eb4b63c46991a56e3bf5c65ea21715 (patch) | |
tree | 6971539e234d4118280f895cb164bbd7a72a65a7 /src/vm/method.hpp | |
parent | 8dde886767682feac4b5414366dfae7be3c08412 (diff) | |
download | coreclr-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.hpp | 10 |
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 |