llvm/llvm/test/tools/llvm-objcopy/ELF/rename-section.test

# RUN: yaml2obj %s -o %t
# RUN: llvm-objcopy --rename-section=.foo=.bar %t %t2
# RUN: llvm-readobj --file-headers --sections --section-data %t2 | FileCheck %s
# RUN: not llvm-objcopy --rename-section=.foo.bar --rename-section=.foo=.other %t %t2 2>&1 | FileCheck %s --check-prefix=BAD-FORMAT
# RUN: not llvm-objcopy --rename-section=.foo=.bar --rename-section=.foo=.other %t %t2 2>&1 | FileCheck %s --check-prefix=MULTIPLE-RENAMES

## Section renames don't chain:
# RUN: llvm-objcopy --rename-section=.foo=.bar --rename-section=.bar=.baz %t %t3
# RUN: cmp %t2 %t3

!ELF
FileHeader:
  Class:           ELFCLASS64
  Data:            ELFDATA2LSB
  Type:            ET_REL
  Machine:         EM_X86_64
Sections:
  - Name:            .foo
    Type:            SHT_PROGBITS
    Flags:           [ SHF_ALLOC ]
    Content:        "c3c3c3c3"

# CHECK: SectionHeaderCount: 4

# CHECK: Name: .bar
# CHECK: SectionData (
# CHECK-NEXT:   0000: C3C3C3C3
# CHECK-NEXT: )
# CHECK: Name: .strtab
# CHECK: Name: .shstrtab

#BAD-FORMAT: bad format for --rename-section: missing '='
#MULTIPLE-RENAMES: multiple renames of section '.foo'