Exemplo n.º 1
0
ULONG64
LLDBServices::GetModuleBase(
    /* const */ lldb::SBTarget& target,
    /* const */ lldb::SBModule& module)
{
    // Find the first section with an valid base address
    int numSections = module.GetNumSections();
    for (int si = 0; si < numSections; si++)
    {
        lldb::SBSection section = module.GetSectionAtIndex(si);
        if (section.IsValid())
        {
            lldb::addr_t baseAddress = section.GetLoadAddress(target);
            if (baseAddress != LLDB_INVALID_ADDRESS)
            {
                return baseAddress - section.GetFileOffset();
            }
        }
    }

    return UINT64_MAX;
}
Exemplo n.º 2
0
void
SBSymbolContext::SetModule (lldb::SBModule module)
{
    ref().module_sp = module.get_sp();
}
Exemplo n.º 3
0
void SBSymbolContext::SetModule(lldb::SBModule module) {
  LLDB_RECORD_METHOD(void, SBSymbolContext, SetModule, (lldb::SBModule),
                     module);

  ref().module_sp = module.GetSP();
}