diff --git a/lldb/include/lldb/Core/Opcode.h b/lldb/include/lldb/Core/Opcode.h index 06f63f762858..c07193b62059 100644 --- a/lldb/include/lldb/Core/Opcode.h +++ b/lldb/include/lldb/Core/Opcode.h @@ -225,8 +225,7 @@ namespace lldb_private { // Get the opcode exactly as it would be laid out in memory. uint32_t - GetData (DataExtractor &data, - lldb::AddressClass address_class) const; + GetData (DataExtractor &data) const; protected: diff --git a/lldb/source/Core/Disassembler.cpp b/lldb/source/Core/Disassembler.cpp index 448ad29dfb02..96828f4a7db5 100644 --- a/lldb/source/Core/Disassembler.cpp +++ b/lldb/source/Core/Disassembler.cpp @@ -893,7 +893,7 @@ Instruction::Emulate (const ArchSpec &arch, uint32_t Instruction::GetData (DataExtractor &data) { - return m_opcode.GetData(data, GetAddressClass ()); + return m_opcode.GetData(data); } InstructionList::InstructionList() : diff --git a/lldb/source/Core/Opcode.cpp b/lldb/source/Core/Opcode.cpp index a4a96fdf1cd9..3793bdee2ae3 100644 --- a/lldb/source/Core/Opcode.cpp +++ b/lldb/source/Core/Opcode.cpp @@ -86,7 +86,7 @@ Opcode::GetDataByteOrder () const } uint32_t -Opcode::GetData (DataExtractor &data, lldb::AddressClass address_class) const +Opcode::GetData (DataExtractor &data) const { uint32_t byte_size = GetByteSize (); @@ -101,12 +101,6 @@ Opcode::GetData (DataExtractor &data, lldb::AddressClass address_class) const case Opcode::eType8: buffer_sp.reset (new DataBufferHeap (&m_data.inst8, byte_size)); break; case Opcode::eType16: buffer_sp.reset (new DataBufferHeap (&m_data.inst16, byte_size)); break; case Opcode::eType16_2: - case Opcode::eType32: - // The only thing that uses eAddressClassCodeAlternateISA currently - // is Thumb. If this ever changes, we will need to pass in more - // information like an additional "const ArchSpec &arch". For now - // this will do - if (m_type == Opcode::eType16_2 || address_class == eAddressClassCodeAlternateISA) { // 32 bit thumb instruction, we need to sizzle this a bit uint8_t buf[4]; @@ -116,10 +110,9 @@ Opcode::GetData (DataExtractor &data, lldb::AddressClass address_class) const buf[3] = m_data.inst.bytes[1]; buffer_sp.reset (new DataBufferHeap (buf, byte_size)); } - else - { - buffer_sp.reset (new DataBufferHeap (&m_data.inst32, byte_size)); - } + break; + case Opcode::eType32: + buffer_sp.reset (new DataBufferHeap (&m_data.inst32, byte_size)); break; case Opcode::eType64: buffer_sp.reset (new DataBufferHeap (&m_data.inst64, byte_size)); break; case Opcode::eTypeBytes:buffer_sp.reset (new DataBufferHeap (GetOpcodeBytes(), byte_size)); break; diff --git a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp index 349c16e12d19..cb4f97f1de89 100644 --- a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp +++ b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp @@ -198,7 +198,7 @@ public: DataExtractor data; const AddressClass address_class = GetAddressClass (); - if (m_opcode.GetData(data, address_class)) + if (m_opcode.GetData(data)) { char out_string[512];