From a583486065db89ef12bb3f0fb460878cd19b8f93 Mon Sep 17 00:00:00 2001 From: Jason Molenda Date: Thu, 7 Mar 2019 03:16:45 +0000 Subject: When disassembling Aarch64 target and vendor Apple, set the cpu to "apple-latest" which llvm uses to indicate the newest supported ISA. Add a unit test; I'm only testing an armv8.1 instruction in this unit test which would already be disassembled correctly because we set the disassembler to ARM v8.2 mode, but it ensures that nothing has been broken by adding this cpu spec. llvm-svn: 355578 --- lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp') diff --git a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp index ca53a18e146..49fd1d8d981 100644 --- a/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp +++ b/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp @@ -1196,6 +1196,11 @@ DisassemblerLLVMC::DisassemblerLLVMC(const ArchSpec &arch, if (triple.getArch() == llvm::Triple::aarch64) features_str += "+v8.2a"; + if (triple.getArch() == llvm::Triple::aarch64 + && triple.getVendor() == llvm::Triple::Apple) { + cpu = "apple-latest"; + } + // We use m_disasm_up.get() to tell whether we are valid or not, so if this // isn't good for some reason, we won't be valid and FindPlugin will fail and // we won't get used. -- cgit v1.2.3