diff options
author | Lang Hames <lhames@gmail.com> | 2025-01-17 17:03:01 +1100 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2025-01-20 10:25:37 +1100 |
commit | 630139460ea7fe8c4b6e6ea2973830117a8048ee (patch) | |
tree | 053c5a501a7f9e5b3b576a57758368118f98bccb | |
parent | de586937648d360d8c4741cd34f633ea92316874 (diff) | |
download | llvm-630139460ea7fe8c4b6e6ea2973830117a8048ee.zip llvm-630139460ea7fe8c4b6e6ea2973830117a8048ee.tar.gz llvm-630139460ea7fe8c4b6e6ea2973830117a8048ee.tar.bz2 |
[ORC] Use BinaryFormat to convert Triple to MachO cputype / cpusubtype values.
-rw-r--r-- | llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp b/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp index 0d9a912..1bafed7 100644 --- a/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp +++ b/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp @@ -121,18 +121,14 @@ public: // Write MachO header and debug section load commands. Builder.Header.filetype = MachO::MH_OBJECT; - switch (G.getTargetTriple().getArch()) { - case Triple::x86_64: - Builder.Header.cputype = MachO::CPU_TYPE_X86_64; - Builder.Header.cpusubtype = MachO::CPU_SUBTYPE_X86_64_ALL; - break; - case Triple::aarch64: - Builder.Header.cputype = MachO::CPU_TYPE_ARM64; - Builder.Header.cpusubtype = MachO::CPU_SUBTYPE_ARM64_ALL; - break; - default: - llvm_unreachable("Unsupported architecture"); - } + if (auto CPUType = MachO::getCPUType(G.getTargetTriple())) + Builder.Header.cputype = *CPUType; + else + return CPUType.takeError(); + if (auto CPUSubType = MachO::getCPUSubType(G.getTargetTriple())) + Builder.Header.cpusubtype = *CPUSubType; + else + return CPUSubType.takeError(); Seg = &Builder.addSegment(""); |