diff options
Diffstat (limited to 'lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp')
-rw-r--r-- | lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp index 8c263d6..f44465c 100644 --- a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp +++ b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp @@ -432,11 +432,13 @@ bool InstructionLLVMC::s_regex_compiled = false; Disassembler * DisassemblerLLVMC::CreateInstance (const ArchSpec &arch) { - std::auto_ptr<DisassemblerLLVMC> disasm_ap (new DisassemblerLLVMC(arch)); - - if (disasm_ap.get() && disasm_ap->IsValid()) - return disasm_ap.release(); + if (arch.GetTriple().getArch() != llvm::Triple::UnknownArch) + { + std::auto_ptr<DisassemblerLLVMC> disasm_ap (new DisassemblerLLVMC(arch)); + if (disasm_ap.get() && disasm_ap->IsValid()) + return disasm_ap.release(); + } return NULL; } |