[llvm] [AMDGPU] Add AMDGPU support for llvm-objcopy (PR #190020)

James Henderson via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 3 01:40:19 PDT 2026


================
@@ -121,13 +121,21 @@
 # RUN: llvm-readobj --file-headers %t.elf64_s390.o | FileCheck %s --check-prefixes=CHECK,BE,S390X,64,SYSV
 # RUN: llvm-readobj --file-headers %t.elf64_s390.dwo | FileCheck %s --check-prefixes=CHECK,BE,S390X,64,SYSV
 
+# Converting a non-AMDGPU ELF to elf64-amdgpu sets EM_AMDGPU but leaves
+# e_flags=0 (no EF_AMDGPU_MACH value), so llvm-readobj reports Arch: unknown.
+# Flag control is a separate concern not addressed by --output-format.
+# RUN: llvm-objcopy %t.o -O elf64-amdgpu %t-amdgpu.elf64_amdgpu.o --split-dwo=%t-amdgpu.elf64_amdgpu.dwo
+# RUN: llvm-readobj --file-headers %t-amdgpu.elf64_amdgpu.o | FileCheck %s --check-prefixes=CHECK,LE,AMDGPU,64,SYSV
+# RUN: llvm-readobj --file-headers %t-amdgpu.elf64_amdgpu.dwo | FileCheck %s --check-prefixes=CHECK,LE,AMDGPU,64,SYSV
+
 !ELF
 FileHeader:
   Class:           ELFCLASS32
   Data:            ELFDATA2LSB
   Type:            ET_EXEC
   # Arbitrary values that do not match any value we convert to via --output-format.
-  Machine:         EM_NONE
+  Machine:         [[MACHINE]]
+  Flags:           [[FLAGS=<none>]]
----------------
jh7370 wrote:

Can we revert these parts of the YAML (and the earlier use of -D in the file), since they're no longer used?

https://github.com/llvm/llvm-project/pull/190020


More information about the llvm-commits mailing list