# Check that llvm-readobj shows arch specific ELF section flags.

# RUN: yaml2obj -docnum 1 %s > %t-amdgpu.o
# RUN: llvm-readobj -s %t-amdgpu.o | FileCheck -check-prefix=AMD %s

# AMD:      Flags [ (0x300000)
# AMD-NEXT:   SHF_AMDGPU_HSA_GLOBAL (0x100000)
# AMD-NEXT:   SHF_AMDGPU_HSA_READONLY (0x200000)
# AMD-NEXT: ]

# amdgpu.o
--- !ELF
FileHeader:
  Class:    ELFCLASS64
  Data:     ELFDATA2LSB
  OSABI:    ELFOSABI_GNU
  Type:     ET_REL
  Machine:  EM_AMDGPU
  Flags:    []
Sections:
  - Name:   .amdgpu
    Type:   SHT_PROGBITS
    Flags:  [SHF_AMDGPU_HSA_GLOBAL, SHF_AMDGPU_HSA_READONLY]
    Size:   4

# RUN: yaml2obj -docnum 2 %s > %t-hex.o
# RUN: llvm-readobj -s %t-hex.o | FileCheck -check-prefix=HEX %s

# HEX:      Flags [ (0x10000000)
# HEX-NEXT:   SHF_HEX_GPREL (0x10000000)
# HEX-NEXT: ]

# hex.o
--- !ELF
FileHeader:
  Class:    ELFCLASS32
  Data:     ELFDATA2LSB
  Type:     ET_REL
  Machine:  EM_HEXAGON
  Flags:    []
Sections:
  - Name:   .hex
    Type:   SHT_PROGBITS
    Flags:  [SHF_HEX_GPREL]
    Size:   4

# RUN: yaml2obj -docnum 3 %s > %t-mips.o
# RUN: llvm-readobj -s %t-mips.o | FileCheck -check-prefix=MIPS %s

# MIPS:      Flags [ (0x38000000)
# MIPS-NEXT:   SHF_MIPS_GPREL (0x10000000)
# MIPS-NEXT:   SHF_MIPS_MERGE (0x20000000)
# MIPS-NEXT:   SHF_MIPS_NOSTRIP (0x8000000)
# MIPS-NEXT: ]

# mips.o
--- !ELF
FileHeader:
  Class:    ELFCLASS32
  Data:     ELFDATA2LSB
  Type:     ET_REL
  Machine:  EM_MIPS
  Flags:    []
Sections:
  - Name:   .mips
    Type:   SHT_PROGBITS
    Flags:  [SHF_MIPS_GPREL, SHF_MIPS_MERGE, SHF_MIPS_NOSTRIP]
    Size:   4

# RUN: yaml2obj -docnum 4 %s > %t-x86_64.o
# RUN: llvm-readobj -s %t-x86_64.o | FileCheck -check-prefix=X86_64 %s

# X86_64:      Flags [ (0x10000000)
# X86_64-NEXT:   SHF_X86_64_LARGE (0x10000000)
# X86_64-NEXT: ]

# x86_64.o
--- !ELF
FileHeader:
  Class:    ELFCLASS64
  Data:     ELFDATA2LSB
  Type:     ET_REL
  Machine:  EM_X86_64
  Flags:    []
Sections:
  - Name:   .x86_64
    Type:   SHT_PROGBITS
    Flags:  [SHF_X86_64_LARGE]
    Size:   4
...