Make file + line breakpoints even more efficient by using our SearchFilter objects correctly now that we sometimes don't check for inlined breakpoints.

llvm-svn: 163435
This commit is contained in:
Greg Clayton 2012-09-07 23:48:57 +00:00
parent 566fff0dac
commit 93bfb29ada
1 changed files with 12 additions and 2 deletions

View File

@ -247,8 +247,6 @@ Target::CreateBreakpoint (const FileSpecList *containingModules,
LazyBool skip_prologue,
bool internal)
{
SearchFilterSP filter_sp(GetSearchFilterForModuleList (containingModules));
if (check_inlines == eLazyBoolCalculate)
{
const InlineStrategy inline_strategy = GetInlineStrategy();
@ -270,6 +268,18 @@ Target::CreateBreakpoint (const FileSpecList *containingModules,
break;
}
}
SearchFilterSP filter_sp;
if (check_inlines == eLazyBoolNo)
{
// Not checking for inlines, we are looking only for matching compile units
FileSpecList compile_unit_list;
compile_unit_list.Append (file);
filter_sp = GetSearchFilterForModuleAndCUList (containingModules, &compile_unit_list);
}
else
{
filter_sp = GetSearchFilterForModuleList (containingModules);
}
BreakpointResolverSP resolver_sp(new BreakpointResolverFileLine (NULL,
file,
line_no,