llvm.org GIT mirror llvm / 785cf2e test / tools / llvm-readobj / elf-sec-flags.test
785cf2e

Tree @785cf2e (Download .tar.gz)

elf-sec-flags.test @785cf2eraw · history · blame

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

# RUN: yaml2obj -docnum 1 %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 2 %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 3 %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
...