1# RUN: yaml2obj --docnum=1 %s -o %t.o.1
2# RUN: llvm-readobj -S --file-headers %t.o.1 | FileCheck --check-prefixes=ELF-SRAM-ECC-NONE %s
3# RUN: obj2yaml %t.o.1 | FileCheck --check-prefixes=YAML-SRAM-ECC-NONE %s
4# RUN: yaml2obj --docnum=2 %s -o %t.o.2
5# RUN: llvm-readobj -S --file-headers %t.o.2 | FileCheck --check-prefixes=ELF-SRAM-ECC-GFX900 %s
6# RUN: obj2yaml %t.o.2 | FileCheck --check-prefixes=YAML-SRAM-ECC-GFX900 %s
7# RUN: yaml2obj --docnum=3 %s -o %t.o.3
8# RUN: llvm-readobj -S --file-headers %t.o.3 | FileCheck --check-prefixes=ELF-SRAM-ECC-XNACK-GFX900 %s
9# RUN: obj2yaml %t.o.3 | FileCheck --check-prefixes=YAML-SRAM-ECC-XNACK-GFX900 %s
10
11# ELF-SRAM-ECC-NONE:      Flags [
12# ELF-SRAM-ECC-NONE-NEXT:   EF_AMDGPU_SRAM_ECC (0x200)
13# ELF-SRAM-ECC-NONE-NEXT: ]
14
15# ELF-SRAM-ECC-GFX900:      Flags [
16# ELF-SRAM-ECC-GFX900-NEXT:   EF_AMDGPU_MACH_AMDGCN_GFX900 (0x2C)
17# ELF-SRAM-ECC-GFX900-NEXT:   EF_AMDGPU_SRAM_ECC           (0x200)
18# ELF-SRAM-ECC-GFX900-NEXT: ]
19
20# ELF-SRAM-ECC-XNACK-GFX900:      Flags [
21# ELF-SRAM-ECC-XNACK-GFX900-NEXT:   EF_AMDGPU_MACH_AMDGCN_GFX900 (0x2C)
22# ELF-SRAM-ECC-XNACK-GFX900-NEXT:   EF_AMDGPU_SRAM_ECC           (0x200)
23# ELF-SRAM-ECC-XNACK-GFX900-NEXT:   EF_AMDGPU_XNACK              (0x100)
24# ELF-SRAM-ECC-XNACK-GFX900-NEXT: ]
25
26# YAML-SRAM-ECC-NONE:         Flags: [ EF_AMDGPU_MACH_NONE, EF_AMDGPU_SRAM_ECC ]
27# YAML-SRAM-ECC-GFX900:       Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX900, EF_AMDGPU_SRAM_ECC ]
28# YAML-SRAM-ECC-XNACK-GFX900: Flags: [ EF_AMDGPU_MACH_AMDGCN_GFX900, EF_AMDGPU_XNACK, EF_AMDGPU_SRAM_ECC ]
29
30# Doc1
31--- !ELF
32FileHeader:
33  Class:   ELFCLASS64
34  Data:    ELFDATA2LSB
35  OSABI:   ELFOSABI_NONE
36  Type:    ET_REL
37  Machine: EM_AMDGPU
38  Flags:   [ EF_AMDGPU_SRAM_ECC ]
39...
40
41# Doc2
42--- !ELF
43FileHeader:
44  Class:   ELFCLASS64
45  Data:    ELFDATA2LSB
46  OSABI:   ELFOSABI_NONE
47  Type:    ET_REL
48  Machine: EM_AMDGPU
49  Flags:   [ EF_AMDGPU_MACH_AMDGCN_GFX900, EF_AMDGPU_SRAM_ECC ]
50...
51
52# Doc3
53--- !ELF
54FileHeader:
55  Class:   ELFCLASS64
56  Data:    ELFDATA2LSB
57  OSABI:   ELFOSABI_NONE
58  Type:    ET_REL
59  Machine: EM_AMDGPU
60  Flags:   [ EF_AMDGPU_MACH_AMDGCN_GFX900, EF_AMDGPU_XNACK, EF_AMDGPU_SRAM_ECC ]
61...
62