Fixed an issue where SBFrame::GetDisassembly() was returning disassembly that
contained the current line marker. This is now an option which is not enabled
for the API disassembly call.
git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@133597 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Commands/CommandObjectDisassemble.cpp b/source/Commands/CommandObjectDisassemble.cpp
index 8c3744f..980c83c 100644
--- a/source/Commands/CommandObjectDisassemble.cpp
+++ b/source/Commands/CommandObjectDisassemble.cpp
@@ -258,6 +258,16 @@
m_options.num_lines_context = 1;
ExecutionContext exe_ctx(m_interpreter.GetExecutionContext());
+ uint32_t options = 0;
+
+ if (!m_options.show_mixed)
+ options |= Disassembler::eOptionShowCurrentLine;
+
+ if (m_options.show_bytes)
+ options |= Disassembler::eOptionShowBytes;
+
+ if (m_options.raw)
+ options |= Disassembler::eOptionRawOuput;
if (!m_options.func_name.empty())
{
@@ -271,8 +281,7 @@
NULL, // Module *
m_options.num_instructions,
m_options.show_mixed ? m_options.num_lines_context : 0,
- m_options.show_bytes,
- m_options.raw,
+ options,
result.GetOutputStream()))
{
result.SetStatus (eReturnStatusSuccessFinishResult);
@@ -369,8 +378,7 @@
range.GetBaseAddress(),
m_options.num_instructions,
m_options.show_mixed ? m_options.num_lines_context : 0,
- m_options.show_bytes,
- m_options.raw,
+ options,
result.GetOutputStream()))
{
result.SetStatus (eReturnStatusSuccessFinishResult);
@@ -413,8 +421,7 @@
range,
m_options.num_instructions,
m_options.show_mixed ? m_options.num_lines_context : 0,
- m_options.show_bytes,
- m_options.raw,
+ options,
result.GetOutputStream()))
{
result.SetStatus (eReturnStatusSuccessFinishResult);