X-Git-Url: https://git.siccegge.de//index.cgi?p=frida%2Ffrida.git;a=blobdiff_plain;f=src%2Fdisassembler%2Fllvm%2FLLVMDisassembler.cxx;h=b97f93f7df0618d5bf2ca460d6e071726f5ecfe9;hp=3023f9397d8f2339230c75c2d4e8169a91aa464d;hb=8a8a4cc33fa1b7ed7028c335156c05731f6ba2d1;hpb=4443ad3e38327c776dcc68538591456d37c9ed6f diff --git a/src/disassembler/llvm/LLVMDisassembler.cxx b/src/disassembler/llvm/LLVMDisassembler.cxx index 3023f93..b97f93f 100644 --- a/src/disassembler/llvm/LLVMDisassembler.cxx +++ b/src/disassembler/llvm/LLVMDisassembler.cxx @@ -3,6 +3,7 @@ #include "core/InformationManager.hxx" #include "core/Function.hxx" #include "core/BasicBlock.hxx" +#include #include #include @@ -526,8 +527,8 @@ void LLVMDisassembler::readSections() { // } template -std::list LLVMDisassembler::getInstructions(const BasicBlock *block) { - std::list result; +std::vector LLVMDisassembler::getInstructions(const BasicBlock *block) { + std::vector result; SectionRef text_section = getTextSection(); uint64_t base_address; text_section.getAddress(base_address); @@ -563,7 +564,7 @@ std::list LLVMDisassembler::getInstructions(const BasicBlock stream << std::hex << (base_address + jmptarget); ref = stream.str(); } - result.push_back(Instruction(current_address + base_address, s.str(), + result.push_back(Instruction(current_address + base_address, boost::algorithm::trim_copy(s.str()), std::vector(bytes, bytes+inst_size), ref)); } else { LOG4CXX_WARN(logger, "Invalid byte at" << std::hex << current_address + base_address);