Author: Pavel Labath Date: 2020-03-05T12:07:49+01:00 New Revision: ea68462ed11cb70b40543059007a328edd26aea6
URL: https://github.com/llvm/llvm-project/commit/ea68462ed11cb70b40543059007a328edd26aea6 DIFF: https://github.com/llvm/llvm-project/commit/ea68462ed11cb70b40543059007a328edd26aea6.diff LOG: [lldb] Make Disassembler::PrintInstructions a method the previously static member function took a Disassembler* argument anyway. This renames the argument to "this". The function also always succeeds (returns true), so I change the return type to void. Added: Modified: lldb/include/lldb/Core/Disassembler.h lldb/source/Core/Disassembler.cpp Removed: ################################################################################ diff --git a/lldb/include/lldb/Core/Disassembler.h b/lldb/include/lldb/Core/Disassembler.h index b03376b72388..a4ecfdbdb5ca 100644 --- a/lldb/include/lldb/Core/Disassembler.h +++ b/lldb/include/lldb/Core/Disassembler.h @@ -420,17 +420,12 @@ class Disassembler : public std::enable_shared_from_this<Disassembler>, Disassembler(const ArchSpec &arch, const char *flavor); ~Disassembler() override; - typedef const char *(*SummaryCallback)(const Instruction &inst, - ExecutionContext *exe_context, - void *user_data); - - static bool PrintInstructions(Disassembler *disasm_ptr, Debugger &debugger, - const ArchSpec &arch, - const ExecutionContext &exe_ctx, - uint32_t num_instructions, - bool mixed_source_and_assembly, - uint32_t num_mixed_context_lines, - uint32_t options, Stream &strm); + void PrintInstructions(Debugger &debugger, const ArchSpec &arch, + const ExecutionContext &exe_ctx, + uint32_t num_instructions, + bool mixed_source_and_assembly, + uint32_t num_mixed_context_lines, uint32_t options, + Stream &strm); size_t ParseInstructions(Target &target, const AddressRange &range, Stream *error_strm_ptr, bool prefer_file_cache); diff --git a/lldb/source/Core/Disassembler.cpp b/lldb/source/Core/Disassembler.cpp index c08dcc9739db..edeb02a54834 100644 --- a/lldb/source/Core/Disassembler.cpp +++ b/lldb/source/Core/Disassembler.cpp @@ -199,9 +199,10 @@ bool Disassembler::Disassemble(Debugger &debugger, const ArchSpec &arch, if (bytes_disassembled == 0) return false; - return PrintInstructions(disasm_sp.get(), debugger, arch, exe_ctx, - num_instructions, mixed_source_and_assembly, - num_mixed_context_lines, options, strm); + disasm_sp->PrintInstructions(debugger, arch, exe_ctx, num_instructions, + mixed_source_and_assembly, + num_mixed_context_lines, options, strm); + return true; } bool Disassembler::Disassemble(Debugger &debugger, const ArchSpec &arch, @@ -229,9 +230,10 @@ bool Disassembler::Disassemble(Debugger &debugger, const ArchSpec &arch, if (bytes_disassembled == 0) return false; - return PrintInstructions(disasm_sp.get(), debugger, arch, exe_ctx, - num_instructions, mixed_source_and_assembly, - num_mixed_context_lines, options, strm); + disasm_sp->PrintInstructions(debugger, arch, exe_ctx, num_instructions, + mixed_source_and_assembly, + num_mixed_context_lines, options, strm); + return true; } Disassembler::SourceLine @@ -317,21 +319,20 @@ bool Disassembler::ElideMixedSourceAndDisassemblyLine( return false; } -bool Disassembler::PrintInstructions(Disassembler *disasm_ptr, - Debugger &debugger, const ArchSpec &arch, +void Disassembler::PrintInstructions(Debugger &debugger, const ArchSpec &arch, const ExecutionContext &exe_ctx, uint32_t num_instructions, bool mixed_source_and_assembly, uint32_t num_mixed_context_lines, uint32_t options, Stream &strm) { // We got some things disassembled... - size_t num_instructions_found = disasm_ptr->GetInstructionList().GetSize(); + size_t num_instructions_found = GetInstructionList().GetSize(); if (num_instructions > 0 && num_instructions < num_instructions_found) num_instructions_found = num_instructions; const uint32_t max_opcode_byte_size = - disasm_ptr->GetInstructionList().GetMaxOpcocdeByteSize(); + GetInstructionList().GetMaxOpcocdeByteSize(); SymbolContext sc; SymbolContext prev_sc; AddressRange current_source_line_range; @@ -372,8 +373,7 @@ bool Disassembler::PrintInstructions(Disassembler *disasm_ptr, size_t address_text_size = 0; for (size_t i = 0; i < num_instructions_found; ++i) { - Instruction *inst = - disasm_ptr->GetInstructionList().GetInstructionAtIndex(i).get(); + Instruction *inst = GetInstructionList().GetInstructionAtIndex(i).get(); if (inst) { const Address &addr = inst->GetAddress(); ModuleSP module_sp(addr.GetModule()); @@ -422,8 +422,7 @@ bool Disassembler::PrintInstructions(Disassembler *disasm_ptr, previous_symbol = nullptr; SourceLine previous_line; for (size_t i = 0; i < num_instructions_found; ++i) { - Instruction *inst = - disasm_ptr->GetInstructionList().GetInstructionAtIndex(i).get(); + Instruction *inst = GetInstructionList().GetInstructionAtIndex(i).get(); if (inst) { const Address &addr = inst->GetAddress(); @@ -583,8 +582,6 @@ bool Disassembler::PrintInstructions(Disassembler *disasm_ptr, break; } } - - return true; } bool Disassembler::Disassemble(Debugger &debugger, const ArchSpec &arch, _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits