summaryrefslogtreecommitdiffstats
path: root/lldb/source/Core/Disassembler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Core/Disassembler.cpp')
-rw-r--r--lldb/source/Core/Disassembler.cpp53
1 files changed, 29 insertions, 24 deletions
diff --git a/lldb/source/Core/Disassembler.cpp b/lldb/source/Core/Disassembler.cpp
index e6fe1b018a5..64a4c2c762b 100644
--- a/lldb/source/Core/Disassembler.cpp
+++ b/lldb/source/Core/Disassembler.cpp
@@ -99,39 +99,44 @@ Disassembler::Disassemble
Stream &strm
)
{
- if (exe_ctx.target == NULL && name)
- return false;
-
SymbolContextList sc_list;
-
- if (module)
- {
- if (!module->FindFunctions (name,
- eFunctionNameTypeBase |
- eFunctionNameTypeFull |
- eFunctionNameTypeMethod |
- eFunctionNameTypeSelector,
- true,
- sc_list))
- return false;
- }
- else
+ if (name)
{
- if (exe_ctx.target->GetImages().FindFunctions (name,
+ const bool include_symbols = true;
+ if (module)
+ {
+ module->FindFunctions (name,
+ eFunctionNameTypeBase |
+ eFunctionNameTypeFull |
+ eFunctionNameTypeMethod |
+ eFunctionNameTypeSelector,
+ include_symbols,
+ true,
+ sc_list);
+ }
+ else if (exe_ctx.target)
+ {
+ exe_ctx.target->GetImages().FindFunctions (name,
eFunctionNameTypeBase |
eFunctionNameTypeFull |
eFunctionNameTypeMethod |
eFunctionNameTypeSelector,
+ include_symbols,
false,
- sc_list))
- {
- return Disassemble (debugger, arch, exe_ctx, sc_list, num_mixed_context_lines, show_bytes, strm);
- }
- else if (exe_ctx.target->GetImages().FindSymbolsWithNameAndType(name, eSymbolTypeCode, sc_list))
- {
- return Disassemble (debugger, arch, exe_ctx, sc_list, num_mixed_context_lines, show_bytes, strm);
+ sc_list);
}
}
+
+ if (sc_list.GetSize ())
+ {
+ return Disassemble (debugger,
+ arch,
+ exe_ctx,
+ sc_list,
+ num_mixed_context_lines,
+ show_bytes,
+ strm);
+ }
return false;
}
OpenPOWER on IntegriCloud