ICorProfilerFunctionControl::SetCodegenFlags-metod
Anger en eller flera flaggor från COR_PRF_CODEGEN_FLAGS uppräkning för att styra kodgenereringen för en jit-omkompilerad funktion (just-in-time).
Syntax
HRESULT SetCodegenFlags(
[in] DWORD flags);
Parametrar
flags
[i] En eller flera flaggor från COR_PRF_CODEGEN_FLAGS uppräkning.
Kommentarer
Profileraren hämtar en instans av det här gränssnittet via återanropet ICorProfilerCallback4::GetReJITParameters . SetCodegenFlags
tillåter profileraren att styra kodgenereringen för den omkompilerade funktionen. Precis som med alla andra JIT-omkompileringsparametrar gäller kodgenereringsflaggor för alla instanser av funktionen.
JIT-kompilatorn tar hänsyn till dessa kompileringsflaggor, tillsammans med andra flaggor som anges av andra källor, när en funktion kompileras. De andra källorna inkluderar felsökningsprogrammet, globala flaggor som angetts av profileraren vid start med hjälp av metoden ICorProfilerInfo::SetEventMask (med värdena COR_PRF_DISABLE_INLINING
och COR_PRF_DISABLE_OPTIMIZATIONS
) och profilerarens ICorProfilerCallback::JITInlining-återanrop . JIT-kompilatorn ger företräde åt en källa som begär minsta möjliga optimering. Om profileraren till exempel anger COR_PRF_DISABLE_INLINING
vid start, men inte anger COR_PRF_CODEGEN_DISABLE_INLINING
i återanropet ICorProfilerFunctionControl::SetCodegenFlags , är inlining fortfarande inaktiverat. Om profileraren inte anger COR_PRF_CODEGEN_DISABLE_INLINING
i SetCodegenFlags
, men sedan inaktiverar inlining med hjälp av ICorProfilerCallback::JITInlining-återanrop , inaktiveras inlining.
Krav
Plattformar: Se Systemkrav.
Huvudet: CorProf.idl, CorProf.h
Bibliotek: CorGuids.lib
.NET Framework versioner: Tillgänglig sedan 4.5