[Lldb-commits] [lldb] r321328 - Change the default Aarch64 ISA to be v8.2 to correctly decode newer

Jason Molenda via lldb-commits lldb-commits at lists.llvm.org
Thu Dec 21 16:16:04 PST 2017


Author: jmolenda
Date: Thu Dec 21 16:16:04 2017
New Revision: 321328

URL: http://llvm.org/viewvc/llvm-project?rev=321328&view=rev
Log:
Change the default Aarch64 ISA to be v8.2 to correctly decode newer
instructions (e.g. on the new iphones).
<rdar://problem/30585124> 

Modified:
    lldb/trunk/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp

Modified: lldb/trunk/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp?rev=321328&r1=321327&r2=321328&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp (original)
+++ lldb/trunk/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp Thu Dec 21 16:16:04 2017
@@ -1127,6 +1127,11 @@ DisassemblerLLVMC::DisassemblerLLVMC(con
       features_str += "+dspr2,";
   }
 
+  // If any AArch64 variant, enable the ARMv8.2 ISA
+  // extensions so we can disassemble newer instructions.
+  if (triple.getArch() == llvm::Triple::aarch64)
+    features_str += "+v8.2a";
+
   m_disasm_ap.reset(new LLVMCDisassembler(triple_str, cpu, features_str.c_str(),
                                           flavor, *this));
   if (!m_disasm_ap->IsValid()) {




More information about the lldb-commits mailing list