forked from OSchip/llvm-project
Upstream a small change from Greg Clayton for the REPL support:
"Modify internal breakpoints so they resolve just like external breakpoints do. This allow you to set symbol and file + line internal breakpoints and have them get updated correctly." <rdar://problem/16931767> llvm-svn: 252584
This commit is contained in:
parent
dad8af4cf6
commit
d91c3fdfb8
|
@ -1371,7 +1371,10 @@ Target::ModuleUpdated (const ModuleList& module_list, const ModuleSP &old_module
|
||||||
{
|
{
|
||||||
// A module is replacing an already added module
|
// A module is replacing an already added module
|
||||||
if (m_valid)
|
if (m_valid)
|
||||||
|
{
|
||||||
m_breakpoint_list.UpdateBreakpointsWhenModuleIsReplaced(old_module_sp, new_module_sp);
|
m_breakpoint_list.UpdateBreakpointsWhenModuleIsReplaced(old_module_sp, new_module_sp);
|
||||||
|
m_internal_breakpoint_list.UpdateBreakpointsWhenModuleIsReplaced(old_module_sp, new_module_sp);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -1380,6 +1383,7 @@ Target::ModulesDidLoad (ModuleList &module_list)
|
||||||
if (m_valid && module_list.GetSize())
|
if (m_valid && module_list.GetSize())
|
||||||
{
|
{
|
||||||
m_breakpoint_list.UpdateBreakpoints (module_list, true, false);
|
m_breakpoint_list.UpdateBreakpoints (module_list, true, false);
|
||||||
|
m_internal_breakpoint_list.UpdateBreakpoints (module_list, true, false);
|
||||||
if (m_process_sp)
|
if (m_process_sp)
|
||||||
{
|
{
|
||||||
m_process_sp->ModulesDidLoad (module_list);
|
m_process_sp->ModulesDidLoad (module_list);
|
||||||
|
@ -1404,6 +1408,7 @@ Target::SymbolsDidLoad (ModuleList &module_list)
|
||||||
}
|
}
|
||||||
|
|
||||||
m_breakpoint_list.UpdateBreakpoints (module_list, true, false);
|
m_breakpoint_list.UpdateBreakpoints (module_list, true, false);
|
||||||
|
m_internal_breakpoint_list.UpdateBreakpoints (module_list, true, false);
|
||||||
BroadcastEvent (eBroadcastBitSymbolsLoaded, new TargetEventData (this->shared_from_this(), module_list));
|
BroadcastEvent (eBroadcastBitSymbolsLoaded, new TargetEventData (this->shared_from_this(), module_list));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1415,6 +1420,7 @@ Target::ModulesDidUnload (ModuleList &module_list, bool delete_locations)
|
||||||
{
|
{
|
||||||
UnloadModuleSections (module_list);
|
UnloadModuleSections (module_list);
|
||||||
m_breakpoint_list.UpdateBreakpoints (module_list, false, delete_locations);
|
m_breakpoint_list.UpdateBreakpoints (module_list, false, delete_locations);
|
||||||
|
m_internal_breakpoint_list.UpdateBreakpoints (module_list, false, delete_locations);
|
||||||
BroadcastEvent (eBroadcastBitModulesUnloaded, new TargetEventData (this->shared_from_this(), module_list));
|
BroadcastEvent (eBroadcastBitModulesUnloaded, new TargetEventData (this->shared_from_this(), module_list));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue