Skip to content

[cdac] Implement GetPEFileBase #108450

@lambdageek

Description

@lambdageek

For the "clrma" APIs, we need to implement the ISOSDacInterface::GetPEFileBase DAC API

The brittle DAC version is here:

ClrDataAccess::GetPEFileBase(CLRDATA_ADDRESS moduleAddr, CLRDATA_ADDRESS *base)
{
if (moduleAddr == 0 || base == NULL)
return E_INVALIDARG;
SOSDacEnter();
PTR_Module pModule = PTR_Module(TO_TADDR(moduleAddr));
// More fields later?
if (!pModule->IsReflectionEmit())
{
*base = TO_CDADDR(dac_cast<TADDR>(pModule->m_baseAddress));
}
else
{
*base = (CLRDATA_ADDRESS)NULL;
}
SOSDacLeave();
return hr;
}

Part of #99298

Metadata

Metadata

Assignees

Labels

area-Diagnostics-coreclrenhancementProduct code improvement that does NOT require public API changes/additions

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions