Rediger

DacpCodeHeaderData Structure

Defines a transport buffer for JIT-compiled code header information.

Note

This API was originally designed for internal use in the runtime. Although it is now supported for 3rd party use, we recommend working with ICorDebug and ICorProfiler APIs when possible.

Syntax

struct DacpCodeHeaderData : ZeroInit<DacpCodeHeaderData>
{        
    CLRDATA_ADDRESS GCInfo;
    JITTypes                   JITType;
    CLRDATA_ADDRESS MethodDescPtr;
    CLRDATA_ADDRESS MethodStart;
    DWORD                    MethodSize;
    CLRDATA_ADDRESS ColdRegionStart;
    DWORD           ColdRegionSize;
    DWORD           HotRegionSize;
    
    HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS IPAddr)
    {
        return sos->GetCodeHeaderData(IPAddr, this);
    }
};

Members

Member Description
GCInfo The address of the garbage collection information for the method.
JITType A JITTypes value that identifies the kind of JIT compiler that produced the code.
MethodDescPtr The address of the method descriptor for the code.
MethodStart The starting address of the hot code region.
MethodSize The size, in bytes, of the method code.
ColdRegionStart The starting address of the cold code region.
ColdRegionSize The size, in bytes, of the cold code region.
HotRegionSize The size, in bytes, of the hot code region.
Request Populates the structure by calling ISOSDacInterface::GetCodeHeaderData.

Remarks

This structure lives inside the runtime and is not exposed through any headers or library files. To use it, define the structure as specified above.

Requirements

Platforms: See System Requirements.
Header: None
Library: None
.NET Framework Versions: Available since 4.7

See also