diff options
author | Konstantin Zhuravlyov <kzhuravl_dev@outlook.com> | 2018-02-16 22:33:59 +0000 |
---|---|---|
committer | Konstantin Zhuravlyov <kzhuravl_dev@outlook.com> | 2018-02-16 22:33:59 +0000 |
commit | 9122a631437fa5a2e10e867910b4e2b1b317e55c (patch) | |
tree | 6be65e8b1b562a23d88c59fd8044e532de80e062 /llvm/test/Object | |
parent | 08868e494e38ecd10248f7a05957a9b5f6dc3df8 (diff) | |
download | bcm5719-llvm-9122a631437fa5a2e10e867910b4e2b1b317e55c.tar.gz bcm5719-llvm-9122a631437fa5a2e10e867910b4e2b1b317e55c.zip |
AMDGPU: Bring elf flags in sync with the spec
- Add MACH flags
- Add XNACK flag
- Add reserved flags
- Minor cleanups in docs
Differential Revision: https://reviews.llvm.org/D43356
llvm-svn: 325399
Diffstat (limited to 'llvm/test/Object')
7 files changed, 555 insertions, 136 deletions
diff --git a/llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml b/llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml new file mode 100644 index 00000000000..585364b1cc2 --- /dev/null +++ b/llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml @@ -0,0 +1,468 @@ +# RUN: yaml2obj -docnum=1 %s > %t.o.1 +# RUN: llvm-readobj -s -file-headers %t.o.1 | FileCheck --check-prefixes=ELF-ALL,ELF-R600 %s +# RUN: obj2yaml %t.o.1 | FileCheck --check-prefixes=YAML-R600 %s +# RUN: yaml2obj -docnum=2 %s > %t.o.2 +# RUN: llvm-readobj -s -file-headers %t.o.2 | FileCheck --check-prefixes=ELF-ALL,ELF-R630 %s +# RUN: obj2yaml %t.o.2 | FileCheck --check-prefixes=YAML-R630 %s +# RUN: yaml2obj -docnum=3 %s > %t.o.3 +# RUN: llvm-readobj -s -file-headers %t.o.3 | FileCheck --check-prefixes=ELF-ALL,ELF-RS880 %s +# RUN: obj2yaml %t.o.3 | FileCheck --check-prefixes=YAML-RS880 %s +# RUN: yaml2obj -docnum=4 %s > %t.o.4 +# RUN: llvm-readobj -s -file-headers %t.o.4 | FileCheck --check-prefixes=ELF-ALL,ELF-RV670 %s +# RUN: obj2yaml %t.o.4 | FileCheck --check-prefixes=YAML-RV670 %s +# RUN: yaml2obj -docnum=5 %s > %t.o.5 +# RUN: llvm-readobj -s -file-headers %t.o.5 | FileCheck --check-prefixes=ELF-ALL,ELF-RV710 %s +# RUN: obj2yaml %t.o.5 | FileCheck --check-prefixes=YAML-RV710 %s +# RUN: yaml2obj -docnum=6 %s > %t.o.6 +# RUN: llvm-readobj -s -file-headers %t.o.6 | FileCheck --check-prefixes=ELF-ALL,ELF-RV730 %s +# RUN: obj2yaml %t.o.6 | FileCheck --check-prefixes=YAML-RV730 %s +# RUN: yaml2obj -docnum=7 %s > %t.o.7 +# RUN: llvm-readobj -s -file-headers %t.o.7 | FileCheck --check-prefixes=ELF-ALL,ELF-RV770 %s +# RUN: obj2yaml %t.o.7 | FileCheck --check-prefixes=YAML-RV770 %s +# RUN: yaml2obj -docnum=8 %s > %t.o.8 +# RUN: llvm-readobj -s -file-headers %t.o.8 | FileCheck --check-prefixes=ELF-ALL,ELF-CEDAR %s +# RUN: obj2yaml %t.o.8 | FileCheck --check-prefixes=YAML-CEDAR %s +# RUN: yaml2obj -docnum=9 %s > %t.o.9 +# RUN: llvm-readobj -s -file-headers %t.o.9 | FileCheck --check-prefixes=ELF-ALL,ELF-CYPRESS %s +# RUN: obj2yaml %t.o.9 | FileCheck --check-prefixes=YAML-CYPRESS %s +# RUN: yaml2obj -docnum=10 %s > %t.o.10 +# RUN: llvm-readobj -s -file-headers %t.o.10 | FileCheck --check-prefixes=ELF-ALL,ELF-JUNIPER %s +# RUN: obj2yaml %t.o.10 | FileCheck --check-prefixes=YAML-JUNIPER %s +# RUN: yaml2obj -docnum=11 %s > %t.o.11 +# RUN: llvm-readobj -s -file-headers %t.o.11 | FileCheck --check-prefixes=ELF-ALL,ELF-REDWOOD %s +# RUN: obj2yaml %t.o.11 | FileCheck --check-prefixes=YAML-REDWOOD %s +# RUN: yaml2obj -docnum=12 %s > %t.o.12 +# RUN: llvm-readobj -s -file-headers %t.o.12 | FileCheck --check-prefixes=ELF-ALL,ELF-SUMO %s +# RUN: obj2yaml %t.o.12 | FileCheck --check-prefixes=YAML-SUMO %s +# RUN: yaml2obj -docnum=13 %s > %t.o.13 +# RUN: llvm-readobj -s -file-headers %t.o.13 | FileCheck --check-prefixes=ELF-ALL,ELF-BARTS %s +# RUN: obj2yaml %t.o.13 | FileCheck --check-prefixes=YAML-BARTS %s +# RUN: yaml2obj -docnum=14 %s > %t.o.14 +# RUN: llvm-readobj -s -file-headers %t.o.14 | FileCheck --check-prefixes=ELF-ALL,ELF-CAICOS %s +# RUN: obj2yaml %t.o.14 | FileCheck --check-prefixes=YAML-CAICOS %s +# RUN: yaml2obj -docnum=15 %s > %t.o.15 +# RUN: llvm-readobj -s -file-headers %t.o.15 | FileCheck --check-prefixes=ELF-ALL,ELF-CAYMAN %s +# RUN: obj2yaml %t.o.15 | FileCheck --check-prefixes=YAML-CAYMAN %s +# RUN: yaml2obj -docnum=16 %s > %t.o.16 +# RUN: llvm-readobj -s -file-headers %t.o.16 | FileCheck --check-prefixes=ELF-ALL,ELF-TURKS %s +# RUN: obj2yaml %t.o.16 | FileCheck --check-prefixes=YAML-TURKS %s +# RUN: yaml2obj -docnum=17 %s > %t.o.17 +# RUN: llvm-readobj -s -file-headers %t.o.17 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX600 %s +# RUN: obj2yaml %t.o.17 | FileCheck --check-prefixes=YAML-GFX600 %s +# RUN: yaml2obj -docnum=18 %s > %t.o.18 +# RUN: llvm-readobj -s -file-headers %t.o.18 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX601 %s +# RUN: obj2yaml %t.o.18 | FileCheck --check-prefixes=YAML-GFX601 %s +# RUN: yaml2obj -docnum=19 %s > %t.o.19 +# RUN: llvm-readobj -s -file-headers %t.o.19 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX700 %s +# RUN: obj2yaml %t.o.19 | FileCheck --check-prefixes=YAML-GFX700 %s +# RUN: yaml2obj -docnum=20 %s > %t.o.20 +# RUN: llvm-readobj -s -file-headers %t.o.20 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX701 %s +# RUN: obj2yaml %t.o.20 | FileCheck --check-prefixes=YAML-GFX701 %s +# RUN: yaml2obj -docnum=21 %s > %t.o.21 +# RUN: llvm-readobj -s -file-headers %t.o.21 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX702 %s +# RUN: obj2yaml %t.o.21 | FileCheck --check-prefixes=YAML-GFX702 %s +# RUN: yaml2obj -docnum=22 %s > %t.o.22 +# RUN: llvm-readobj -s -file-headers %t.o.22 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX703 %s +# RUN: obj2yaml %t.o.22 | FileCheck --check-prefixes=YAML-GFX703 %s +# RUN: yaml2obj -docnum=23 %s > %t.o.23 +# RUN: llvm-readobj -s -file-headers %t.o.23 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX704 %s +# RUN: obj2yaml %t.o.23 | FileCheck --check-prefixes=YAML-GFX704 %s +# RUN: yaml2obj -docnum=24 %s > %t.o.24 +# RUN: llvm-readobj -s -file-headers %t.o.24 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX801 %s +# RUN: obj2yaml %t.o.24 | FileCheck --check-prefixes=YAML-GFX801 %s +# RUN: yaml2obj -docnum=25 %s > %t.o.25 +# RUN: llvm-readobj -s -file-headers %t.o.25 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX802 %s +# RUN: obj2yaml %t.o.25 | FileCheck --check-prefixes=YAML-GFX802 %s +# RUN: yaml2obj -docnum=26 %s > %t.o.26 +# RUN: llvm-readobj -s -file-headers %t.o.26 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX803 %s +# RUN: obj2yaml %t.o.26 | FileCheck --check-prefixes=YAML-GFX803 %s +# RUN: yaml2obj -docnum=27 %s > %t.o.27 +# RUN: llvm-readobj -s -file-headers %t.o.27 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX810 %s +# RUN: obj2yaml %t.o.27 | FileCheck --check-prefixes=YAML-GFX810 %s +# RUN: yaml2obj -docnum=28 %s > %t.o.28 +# RUN: llvm-readobj -s -file-headers %t.o.28 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX900 %s +# RUN: obj2yaml %t.o.28 | FileCheck --check-prefixes=YAML-GFX900 %s +# RUN: yaml2obj -docnum=29 %s > %t.o.29 +# RUN: llvm-readobj -s -file-headers %t.o.29 | FileCheck --check-prefixes=ELF-ALL,ELF-GFX902 %s +# RUN: obj2yaml %t.o.29 | FileCheck --check-prefixes=YAML-GFX902 %s + +# ELF-ALL: Flags [ +# ELF-R600: EF_AMDGPU_MACH_R600_R600 (0x1) +# ELF-R630: EF_AMDGPU_MACH_R600_R630 (0x2) +# ELF-RS880: EF_AMDGPU_MACH_R600_RS880 (0x3) +# ELF-RV670: EF_AMDGPU_MACH_R600_RV670 (0x4) +# ELF-RV710: EF_AMDGPU_MACH_R600_RV710 (0x5) +# ELF-RV730: EF_AMDGPU_MACH_R600_RV730 (0x6) +# ELF-RV770: EF_AMDGPU_MACH_R600_RV770 (0x7) +# ELF-CEDAR: EF_AMDGPU_MACH_R600_CEDAR (0x8) +# ELF-CYPRESS: EF_AMDGPU_MACH_R600_CYPRESS (0x9) +# ELF-JUNIPER: EF_AMDGPU_MACH_R600_JUNIPER (0xA) +# ELF-REDWOOD: EF_AMDGPU_MACH_R600_REDWOOD (0xB) +# ELF-SUMO: EF_AMDGPU_MACH_R600_SUMO (0xC) +# ELF-BARTS: EF_AMDGPU_MACH_R600_BARTS (0xD) +# ELF-CAICOS: EF_AMDGPU_MACH_R600_CAICOS (0xE) +# ELF-CAYMAN: EF_AMDGPU_MACH_R600_CAYMAN (0xF) +# ELF-TURKS: EF_AMDGPU_MACH_R600_TURKS (0x10) +# ELF-GFX600: EF_AMDGPU_MACH_AMDGCN_GFX600 (0x20) +# ELF-GFX601: EF_AMDGPU_MACH_AMDGCN_GFX601 (0x21) +# ELF-GFX700: EF_AMDGPU_MACH_AMDGCN_GFX700 (0x22) +# ELF-GFX701: EF_AMDGPU_MACH_AMDGCN_GFX701 (0x23) +# ELF-GFX702: EF_AMDGPU_MACH_AMDGCN_GFX702 (0x24) +# ELF-GFX703: EF_AMDGPU_MACH_AMDGCN_GFX703 (0x25) +# ELF-GFX704: EF_AMDGPU_MACH_AMDGCN_GFX704 (0x26) +# ELF-GFX801: EF_AMDGPU_MACH_AMDGCN_GFX801 (0x28) +# ELF-GFX802: EF_AMDGPU_MACH_AMDGCN_GFX802 (0x29) +# ELF-GFX803: EF_AMDGPU_MACH_AMDGCN_GFX803 (0x2A) +# ELF-GFX810: EF_AMDGPU_MACH_AMDGCN_GFX810 (0x2B) +# ELF-GFX900: EF_AMDGPU_MACH_AMDGCN_GFX900 (0x2C) +# ELF-GFX902: EF_AMDGPU_MACH_AMDGCN_GFX902 (0x2D) +# ELF-ALL: ] + +# YAML-R600: Flags: [ EF_AMDGPU_MACH_R600_R600 ] +# YAML-R630: Flags: [ EF_AMDGPU_MACH_R600_R630 ] +# YAML-RS880: Flags: [ EF_AMDGPU_MACH_R600_RS880 ] +# YAML-RV670: Flags: [ EF_AMDGPU_MACH_R600_RV670 ] +# YAML-RV710: Flags: [ EF_AMDGPU_MACH_R600_RV710 ] +# YAML-RV730: Flags: [ EF_AMDGPU_MACH_R600_RV730 ] +# YAML-RV770: Flags: [ EF_AMDGPU_MACH_R600_RV770 ] +# YAML-CEDAR: Flags: [ EF_AMDGPU_MACH_R600_CEDAR ] +# YAML-CYPRESS: Flags: [ EF_AMDGPU_MACH_R600_CYPRESS ] +# YAML-JUNIPER: Flags: [ EF_AMDGPU_MACH_R600_JUNIPER ] +# YAML-REDWOOD: Flags: [ EF_AMDGPU_MACH_R600_REDWOOD ] +# YAML-SUMO: Flags: [ EF_AMDGPU_MACH_R600_SUMO ] +# YAML-BARTS: Flags: [ EF_AMDGPU_MACH_R600_BARTS ] +# YAML-CAICOS: Flags: [ EF_AMDGPU_MACH_R600_CAICOS ] +# YAML-CAYMAN: Flags: [ EF_AMDGPU_MACH_R600_CAYMAN ] +# YAML-TURKS: Flags: [ EF_AMDGPU_MACH_R600_TURKS ] +# YAML-GFX600: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX600 ] +# YAML-GFX601: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX601 ] +# YAML-GFX700: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX700 ] +# YAML-GFX701: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX701 ] +# YAML-GFX702: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX702 ] +# YAML-GFX703: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX703 ] +# YAML-GFX704: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX704 ] +# YAML-GFX801: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX801 ] +# YAML-GFX802: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX802 ] +# YAML-GFX803: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX803 ] +# YAML-GFX810: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX810 ] +# YAML-GFX900: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX900 ] +# YAML-GFX902: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX902 ] + +# Doc1 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_R600 ] +... + +# Doc2 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_R630 ] +... + +# Doc3 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_RS880 ] +... + +# Doc4 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_RV670 ] +... + +# Doc5 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_RV710 ] +... + +# Doc6 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_RV730 ] +... + +# Doc7 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_RV770 ] +... + +# Doc8 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_CEDAR ] +... + +# Doc9 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_CYPRESS ] +... + +# Doc10 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_JUNIPER ] +... + +# Doc11 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_REDWOOD ] +... + +# Doc12 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_SUMO ] +... + +# Doc13 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_BARTS ] +... + +# Doc14 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_CAICOS ] +... + +# Doc15 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_CAYMAN ] +... + +# Doc16 +--- !ELF +FileHeader: + Class: ELFCLASS32 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_R600_TURKS ] +... + +# Doc17 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX600 ] +... + +# Doc18 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX601 ] +... + +# Doc19 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX700 ] +... + +# Doc20 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX701 ] +... + +# Doc21 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX702 ] +... + +# Doc22 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX703 ] +... + +# Doc23 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX704 ] +... + +# Doc24 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX801 ] +... + +# Doc25 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX802 ] +... + +# Doc26 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX803 ] +... + +# Doc27 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX810 ] +... + +# Doc28 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX900 ] +... + +# Doc29 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX902 ] +... diff --git a/llvm/test/Object/AMDGPU/elf-header-flags-xnack.yaml b/llvm/test/Object/AMDGPU/elf-header-flags-xnack.yaml new file mode 100644 index 00000000000..1514a5d654b --- /dev/null +++ b/llvm/test/Object/AMDGPU/elf-header-flags-xnack.yaml @@ -0,0 +1,37 @@ +# RUN: yaml2obj -docnum=1 %s > %t.o.1 +# RUN: llvm-readobj -s -file-headers %t.o.1 | FileCheck --check-prefixes=ELF-ALL,ELF-XNACK-NONE %s +# RUN: obj2yaml %t.o.1 | FileCheck --check-prefixes=YAML-XNACK-NONE %s +# RUN: yaml2obj -docnum=2 %s > %t.o.2 +# RUN: llvm-readobj -s -file-headers %t.o.2 | FileCheck --check-prefixes=ELF-ALL,ELF-XNACK-GFX801 %s +# RUN: obj2yaml %t.o.2 | FileCheck --check-prefixes=YAML-XNACK-GFX801 %s + +# ELF-ALL: Flags [ +# ELF-XNACK-NONE: EF_AMDGPU_XNACK (0x100) +# ELF-XNACK-GFX801: EF_AMDGPU_MACH_AMDGCN_GFX801 (0x28) +# ELF-XNACK-GFX801: EF_AMDGPU_XNACK (0x100) +# ELF-ALL: ] + +# YAML-XNACK-NONE: Flags: [ EF_AMDGPU_MACH_NONE, EF_AMDGPU_XNACK ] +# YAML-XNACK-GFX801: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX801, EF_AMDGPU_XNACK ] + +# Doc1 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_XNACK ] +... + +# Doc2 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_NONE + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX801, EF_AMDGPU_XNACK ] +... diff --git a/llvm/test/Object/AMDGPU/elf-header-osabi.yaml b/llvm/test/Object/AMDGPU/elf-header-osabi.yaml new file mode 100644 index 00000000000..942515c2c13 --- /dev/null +++ b/llvm/test/Object/AMDGPU/elf-header-osabi.yaml @@ -0,0 +1,50 @@ +# RUN: yaml2obj -docnum=1 %s > %t.o.1 +# RUN: llvm-readobj -s -file-headers %t.o.1 | FileCheck --check-prefixes=ELF-HSA %s +# RUN: obj2yaml %t.o.1 | FileCheck --check-prefixes=YAML-HSA %s +# RUN: yaml2obj -docnum=2 %s > %t.o.2 +# RUN: llvm-readobj -s -file-headers %t.o.2 | FileCheck --check-prefixes=ELF-PAL %s +# RUN: obj2yaml %t.o.2 | FileCheck --check-prefixes=YAML-PAL %s +# RUN: yaml2obj -docnum=3 %s > %t.o.3 +# RUN: llvm-readobj -s -file-headers %t.o.3 | FileCheck --check-prefixes=ELF-MESA3D %s +# RUN: obj2yaml %t.o.3 | FileCheck --check-prefixes=YAML-MESA3D %s + +# ELF-HSA: OS/ABI: AMDGPU_HSA (0x40) +# ELF-PAL: OS/ABI: AMDGPU_PAL (0x41) +# ELF-MESA3D: OS/ABI: AMDGPU_MESA3D (0x42) + +# YAML-HSA: OSABI: ELFOSABI_AMDGPU_HSA +# YAML-PAL: OSABI: ELFOSABI_AMDGPU_PAL +# YAML-MESA3D: OSABI: ELFOSABI_AMDGPU_MESA3D + +# Doc1 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_AMDGPU_HSA + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ ] +... + +# Doc2 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_AMDGPU_PAL + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ ] +... + +# Doc3 +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + OSABI: ELFOSABI_AMDGPU_MESA3D + Type: ET_REL + Machine: EM_AMDGPU + Flags: [ ] +... diff --git a/llvm/test/Object/AMDGPU/elf32-r600-definitions.yaml b/llvm/test/Object/AMDGPU/elf32-r600-definitions.yaml deleted file mode 100644 index 56c5f29b79f..00000000000 --- a/llvm/test/Object/AMDGPU/elf32-r600-definitions.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# RUN: yaml2obj %s > %t.o -# RUN: llvm-readobj -s -file-headers %t.o | FileCheck --check-prefix=ELF %s -# RUN: obj2yaml %t.o | FileCheck --check-prefix=YAML %s - -# ELF: Format: ELF32-amdgpu -# ELF: Arch: r600 -# ELF: ElfHeader { -# ELF: Ident { -# ELF: OS/ABI: AMDGPU_HSA (0x40) -# ELF: ABIVersion: 0 -# ELF: } -# ELF: Machine: EM_AMDGPU (0xE0) -# ELF: Flags [ (0x1) -# ELF: EF_AMDGPU_ARCH_R600 (0x1) -# ELF: ] -# ELF: } - -# YAML: FileHeader -# YAML: Class: ELFCLASS32 -# YAML: Data: ELFDATA2LSB -# YAML: OSABI: ELFOSABI_AMDGPU_HSA -# YAML: Type: ET_REL -# YAML: Machine: EM_AMDGPU -# YAML: Flags: [ EF_AMDGPU_ARCH_R600 ] - ---- !ELF -FileHeader: - Class: ELFCLASS32 - Data: ELFDATA2LSB - OSABI: ELFOSABI_AMDGPU_HSA - Type: ET_REL - Machine: EM_AMDGPU - Flags: [ EF_AMDGPU_ARCH_R600 ] -... diff --git a/llvm/test/Object/AMDGPU/elf64-amdgcn-amdhsa-definitions.yaml b/llvm/test/Object/AMDGPU/elf64-amdgcn-amdhsa-definitions.yaml deleted file mode 100644 index 1ffea244d3f..00000000000 --- a/llvm/test/Object/AMDGPU/elf64-amdgcn-amdhsa-definitions.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# RUN: yaml2obj %s > %t.o -# RUN: llvm-readobj -s -file-headers %t.o | FileCheck --check-prefix=ELF %s -# RUN: obj2yaml %t.o | FileCheck --check-prefix=YAML %s - -# ELF: Format: ELF64-amdgpu -# ELF: Arch: amdgcn -# ELF: ElfHeader { -# ELF: Ident { -# ELF: OS/ABI: AMDGPU_HSA (0x40) -# ELF: ABIVersion: 0 -# ELF: } -# ELF: Machine: EM_AMDGPU (0xE0) -# ELF: Flags [ (0x2) -# ELF: EF_AMDGPU_ARCH_GCN (0x2) -# ELF: ] -# ELF: } - -# YAML: FileHeader -# YAML: Class: ELFCLASS64 -# YAML: Data: ELFDATA2LSB -# YAML: OSABI: ELFOSABI_AMDGPU_HSA -# YAML: Type: ET_REL -# YAML: Machine: EM_AMDGPU -# YAML: Flags: [ EF_AMDGPU_ARCH_GCN ] - ---- !ELF -FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - OSABI: ELFOSABI_AMDGPU_HSA - Type: ET_REL - Machine: EM_AMDGPU - Flags: [ EF_AMDGPU_ARCH_GCN ] -... diff --git a/llvm/test/Object/AMDGPU/elf64-amdgcn-amdpal-definitions.yaml b/llvm/test/Object/AMDGPU/elf64-amdgcn-amdpal-definitions.yaml deleted file mode 100644 index 3ec5fe51083..00000000000 --- a/llvm/test/Object/AMDGPU/elf64-amdgcn-amdpal-definitions.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# RUN: yaml2obj %s > %t.o -# RUN: llvm-readobj -s -file-headers %t.o | FileCheck --check-prefix=ELF %s -# RUN: obj2yaml %t.o | FileCheck --check-prefix=YAML %s - -# ELF: Format: ELF64-amdgpu -# ELF: Arch: amdgcn -# ELF: ElfHeader { -# ELF: Ident { -# ELF: OS/ABI: AMDGPU_PAL (0x41) -# ELF: ABIVersion: 0 -# ELF: } -# ELF: Machine: EM_AMDGPU (0xE0) -# ELF: Flags [ (0x2) -# ELF: EF_AMDGPU_ARCH_GCN (0x2) -# ELF: ] -# ELF: } - -# YAML: FileHeader -# YAML: Class: ELFCLASS64 -# YAML: Data: ELFDATA2LSB -# YAML: OSABI: ELFOSABI_AMDGPU_PAL -# YAML: Type: ET_REL -# YAML: Machine: EM_AMDGPU -# YAML: Flags: [ EF_AMDGPU_ARCH_GCN ] - ---- !ELF -FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - OSABI: ELFOSABI_AMDGPU_PAL - Type: ET_REL - Machine: EM_AMDGPU - Flags: [ EF_AMDGPU_ARCH_GCN ] -... diff --git a/llvm/test/Object/AMDGPU/elf64-amdgcn-mesa3d-definitions.yaml b/llvm/test/Object/AMDGPU/elf64-amdgcn-mesa3d-definitions.yaml deleted file mode 100644 index 258bb122ca9..00000000000 --- a/llvm/test/Object/AMDGPU/elf64-amdgcn-mesa3d-definitions.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# RUN: yaml2obj %s > %t.o -# RUN: llvm-readobj -s -file-headers %t.o | FileCheck --check-prefix=ELF %s -# RUN: obj2yaml %t.o | FileCheck --check-prefix=YAML %s - -# ELF: Format: ELF64-amdgpu -# ELF: Arch: amdgcn -# ELF: ElfHeader { -# ELF: Ident { -# ELF: OS/ABI: AMDGPU_MESA3D (0x42) -# ELF: ABIVersion: 0 -# ELF: } -# ELF: Machine: EM_AMDGPU (0xE0) -# ELF: Flags [ (0x2) -# ELF: EF_AMDGPU_ARCH_GCN (0x2) -# ELF: ] -# ELF: } - -# YAML: FileHeader -# YAML: Class: ELFCLASS64 -# YAML: Data: ELFDATA2LSB -# YAML: OSABI: ELFOSABI_AMDGPU_MESA3D -# YAML: Type: ET_REL -# YAML: Machine: EM_AMDGPU -# YAML: Flags: [ EF_AMDGPU_ARCH_GCN ] - ---- !ELF -FileHeader: - Class: ELFCLASS64 - Data: ELFDATA2LSB - OSABI: ELFOSABI_AMDGPU_MESA3D - Type: ET_REL - Machine: EM_AMDGPU - Flags: [ EF_AMDGPU_ARCH_GCN ] -... |