[llvm-branch-commits] [lldb] 397390a - [lldb] Treat ARM64X images as ARM64.

Tobias Hieta via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Wed Jul 26 10:28:48 PDT 2023


Author: Jacek Caban
Date: 2023-07-26T19:28:06+02:00
New Revision: 397390a65b8dc50a7bca560b2caa4b99935a03f3

URL: https://github.com/llvm/llvm-project/commit/397390a65b8dc50a7bca560b2caa4b99935a03f3
DIFF: https://github.com/llvm/llvm-project/commit/397390a65b8dc50a7bca560b2caa4b99935a03f3.diff

LOG: [lldb] Treat ARM64X images as ARM64.

With D149091, ARM64X binaries are no longer reported as ARM64. This broke
lldb tests as Windows 11 system DLLs are mostly ARM64X binaries and lldb
doesn't know how to handle them. Ideally lldb would understand a bit more
about ARM64X and handle them as AMD64 in x64 processes, but this is
enough to preserve previous behavior and fix tests.

Reviewed By: mstorsjo
Differential Revision: https://reviews.llvm.org/D156268

(cherry picked from commit 48feef277a24b1b9c0ff33267a91e70d9584012e)

Added: 
    

Modified: 
    lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h

Removed: 
    


################################################################################
diff  --git a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
index 30ff0e5f3ef6a7..77506b40ff5c36 100644
--- a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
+++ b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
@@ -343,6 +343,7 @@ size_t ObjectFilePECOFF::GetModuleSpecifications(
     specs.Append(module_spec);
     break;
   case MachineArm64:
+  case MachineArm64X:
     spec.SetTriple("aarch64-pc-windows");
     spec.GetTriple().setEnvironment(env);
     specs.Append(module_spec);

diff  --git a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
index 3da3a752a15733..5d0465b4ee44f6 100644
--- a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
+++ b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
@@ -24,6 +24,7 @@ class ObjectFilePECOFF : public lldb_private::ObjectFile {
     MachineArm = 0x1c0,
     MachineArmNt = 0x1c4,
     MachineArm64 = 0xaa64,
+    MachineArm64X = 0xa64e,
     MachineEbc = 0xebc,
     MachineX86 = 0x14c,
     MachineIA64 = 0x200,


        


More information about the llvm-branch-commits mailing list