Share via


ICorProfilerCallback::JITInlining Method

Notifies the profiler that the just-in-time (JIT) compiler is about to insert a function in line with another function.

HRESULT JITInlining(
    [in] FunctionID callerId,
    [in] FunctionID calleeId,
    [out] BOOL      *pfShouldInline);

Parameters

Parameter Description

callerId

[in] The ID of the function into which the calleeId function will be inserted.

calleeId

[in] The ID of the function to be inserted.

pfShouldInline

[out] true to allow the insertion to occur; otherwise, false.

Remarks

The profiler can set *pfShouldInline to false to prevent the calleeId function from being inserted into the callerId function. Also, the profiler can globally disable inline insertion by using the COR_PRF_DISABLE_INLINING value of the COR_PRF_MONITOR Enumeration enumeration.

Functions inserted inline do not raise events for entering or leaving. Therefore, the profiler must set *pfShouldInline to false in order to produce an accurate callgraph. Setting *pfShouldInline to false will affect performance, because inline insertion typically increases speed and reduces the number of separate JIT compilation events for the inserted method.

Requirements

Platforms: Windows 2000, Windows XP, Windows Server 2003 family

Header: CorProf.idl

Library: CorGuids.lib

.NET Framework Version: 2.0

See Also

Reference

ICorProfilerCallback Interface