summaryrefslogtreecommitdiff
path: root/src/zap
diff options
context:
space:
mode:
authorMichal Strehovský <MichalStrehovsky@users.noreply.github.com>2019-06-13 09:58:50 +0200
committerGitHub <noreply@github.com>2019-06-13 09:58:50 +0200
commite2b3130f4d0c9f1b759a769f4d344ee72a55b771 (patch)
treec7e5292be409afad3185d7ab0a263f4a91453ed3 /src/zap
parentdb7bbf105953a1e264f25c4e1d6cefd08acbb2cf (diff)
downloadcoreclr-e2b3130f4d0c9f1b759a769f4d344ee72a55b771.tar.gz
coreclr-e2b3130f4d0c9f1b759a769f4d344ee72a55b771.tar.bz2
coreclr-e2b3130f4d0c9f1b759a769f4d344ee72a55b771.zip
Emit a message when skipping a method in crossgen (#25125)
Since crossgen normally prints a message when the compilation didn't happen (because e.g. something is not supported), we should print something here too. Otherwise the `/verbose` log makes it look like pregeneration succeeded and sends someone down a wrong path investigating why it's not picked up at runtime...
Diffstat (limited to 'src/zap')
-rw-r--r--src/zap/zapinfo.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/zap/zapinfo.cpp b/src/zap/zapinfo.cpp
index 007765b3ab..8d295a44ef 100644
--- a/src/zap/zapinfo.cpp
+++ b/src/zap/zapinfo.cpp
@@ -427,7 +427,11 @@ void ZapInfo::CompileMethod()
// If we are doing partial ngen, only compile methods with profile data
if (!CurrentMethodHasProfileData() && m_zapper->m_pOpt->m_fPartialNGen)
+ {
+ if (m_zapper->m_pOpt->m_verbose)
+ m_zapper->Info(W("Skipped because of no profile data\n"));
return;
+ }
// During ngen we look for a hint attribute on the method that indicates
// the method should be preprocessed for early
@@ -444,6 +448,8 @@ void ZapInfo::CompileMethod()
// Skip methods marked with MethodImplOptions.AggressiveOptimization, they will be jitted instead. In the future,
// consider letting the JIT determine whether aggressively optimized code can/should be pregenerated for the method
// instead of this check.
+ if (m_zapper->m_pOpt->m_verbose)
+ m_zapper->Info(W("Skipped because of aggressive optimization flag\n"));
return;
}