Microsoft KB Archive/312222

= Profiler does not receive JIT-Compilation notifications for method with reason COR_PRF_TRANSITION_RETURN in Visual C++ .NET or Visual C++ 2005 =

Article ID: 312222

Article Last Modified on 1/5/2006

-

APPLIES TO


 * Microsoft Visual C++ .NET 2002 Standard Edition
 * Microsoft .NET Framework 1.0
 * Microsoft Visual C++ .NET 2003 Standard Edition
 * Microsoft .NET Framework 1.1
 * Microsoft Visual C++ 2005 Express Edition

-



This article was previously published under Q312222



SYMPTOMS
The profiler may not receive Just-In-Time (JIT)-compilation notifications for the method whose function ID is passed to the ManagedToUnmanagedTransition callback with reason COR_PRF_TRANSITION_RETURN.



CAUSE
This behavior can occur if the function ID that is passed to the ManagedToUnmanagedTransition callback with reason COR_PRF_TRANSITION_RETURN belongs to a stub function of the JIT Compiler. If the function ID does not belong to a real managed function, the profiler does not receive any JIT compilation notifications for it. Additionally, the profiler does not receive Function Enter or Function Leave notifications either.



RESOLUTION
The profiler needs to probe the metadata for the information about the method whose function ID is passed in. If the method inherits from a delegate or multicast delegate, the profiler must infer that this is a stub function and ignore it during the creation of shadow stack tracing.



STATUS
This behavior is by design.

