X-Git-Url: https://git.siccegge.de//index.cgi?p=frida%2Ffrida.git;a=blobdiff_plain;f=src%2Fdisassembler%2Fllvm%2FLLVMDisassembler.cxx;h=8837239ca74d6b671613cfa1240a94c7f0fd71f2;hp=c2b0527f1f33b2a158c8505776d034e6cbad4e20;hb=8c6f5533d4124e09d864ca5db2140acbd4a12777;hpb=9230b2cf1a95c50e2bf0b4ca8e214bddd45cf65f diff --git a/src/disassembler/llvm/LLVMDisassembler.cxx b/src/disassembler/llvm/LLVMDisassembler.cxx index c2b0527..8837239 100644 --- a/src/disassembler/llvm/LLVMDisassembler.cxx +++ b/src/disassembler/llvm/LLVMDisassembler.cxx @@ -92,8 +92,11 @@ LLVMDisassembler::LLVMDisassembler(const std::string& filename) RelInfo.release(); Symzer.release(); - MIA.reset(target->createMCInstrAnalysis(MII.get())); + if (!MIA) { + LOG4CXX_ERROR(logger, "no instruction analysis for target " << tripleName); + return; + } int AsmPrinterVariant = AsmInfo->getAssemblerDialect(); IP.reset(target->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *MII, *MRI, *STI));