Added two new profile data flags: ExcludeHotMethodCode and ExcludeColdMethodCode
authorBrian Sullivan <briansul@microsoft.com>
Tue, 28 Mar 2017 00:00:51 +0000 (17:00 -0700)
committerBrian Sullivan <briansul@microsoft.com>
Thu, 30 Mar 2017 00:53:37 +0000 (17:53 -0700)
commit4d2295e6be4577b9f3686527a968e21b1ad998b9
tree89775f6974dd980a82a364219096ac1ef160bcea
parentbabeb07f1ccb6ae2226883ccda75d36abe1e17cf
Added two new profile data flags: ExcludeHotMethodCode and ExcludeColdMethodCode

Refactored zapimage CompileProfileData into four new methods:
CompileHotRegion, CompileColdRegion, PlaceMethodIL and ProfileDisableInlining

Preserve the CompileStatus and methodProfilingDataFlags used when we compile methods during CompileHotRegion()
Then during CompileColdRegion retrieve these value and exclude the method from the AOT native image if the status is COMPILE_EXCLUDED.

Commit migrated from https://github.com/dotnet/coreclr/commit/ff3518d0a850785c4b991695303519172c0f36dc
src/coreclr/src/inc/corbbtprof.h
src/coreclr/src/zap/zapimage.cpp
src/coreclr/src/zap/zapimage.h