Fixed breakpoints to be able to be set on eSymbolTypeReExported symbols and resolve to the correct function. This allows setting a breakpoint on "memset" for iOS simulator binaries and the correct breakpoint will be set on "__platform_memset".

llvm-svn: 193114
This commit is contained in:
Greg Clayton 2013-10-21 20:04:47 +00:00
parent bc4242114e
commit d65ef14df3
1 changed files with 11 additions and 1 deletions

View File

@ -289,7 +289,17 @@ BreakpointResolverName::SearchCallback
}
else if (sc.symbol)
{
break_addr = sc.symbol->GetAddress();
if (sc.symbol->GetType() == eSymbolTypeReExported)
{
const Symbol *actual_symbol = sc.symbol->ResolveReExportedSymbol(m_breakpoint->GetTarget());
if (actual_symbol)
break_addr = actual_symbol->GetAddress();
}
else
{
break_addr = sc.symbol->GetAddress();
}
if (m_skip_prologue && break_addr.IsValid())
{
const uint32_t prologue_byte_size = sc.symbol->GetPrologueByteSize();