llvm.org GIT mirror llvm / release_90 test / tools / llvm-objcopy / ELF / add-section-special.test
release_90

Tree @release_90 (Download .tar.gz)

add-section-special.test @release_90raw · history · blame

# Check the properties of added sections.
# By default, sections are SHT_PROGBITS, but .note sections (excluding
# .note.GNU-stack) are SHT_NOTE sections.

# RUN: yaml2obj %s > %t.o
# RUN: llvm-objcopy --add-section=.foo=/dev/null %t.o %t-foo.o
# RUN: llvm-objcopy --add-section=.note.foo=/dev/null %t.o %t-regular-note.o
# RUN: llvm-objcopy --add-section=.note.GNU-stack=/dev/null %t.o %t-gnu-stack.o
# RUN: llvm-readelf --sections %t-foo.o | FileCheck %s --check-prefix=NORMAL
# RUN: llvm-readelf --sections %t-regular-note.o | FileCheck %s --check-prefix=NOTE
# RUN: llvm-readelf --sections %t-gnu-stack.o | FileCheck %s --check-prefix=GNU-STACK

!ELF
FileHeader:
  Class:           ELFCLASS64
  Data:            ELFDATA2LSB
  Type:            ET_REL
  Machine:         EM_X86_64

# NORMAL:    .foo            PROGBITS
# NOTE:      .note.foo       NOTE
# GNU-STACK: .note.GNU-stack PROGBITS