## Here we want to check that llvm-objcopy removes an undefined symbol
## if all references to it have been stripped.

# RUN: yaml2obj --docnum=1 %s -o %t.o
# RUN: llvm-objcopy -j .other.section %t.o %t2.o
# RUN: llvm-readobj --symbols %t2.o | FileCheck %s

# RUN: llvm-objcopy -j .text -j .rela.text1 %t.o %t2.o
# RUN: llvm-readobj --symbols %t2.o | FileCheck %s --check-prefix=BAR

# CHECK-NOT: Name: bar
# BAR: Name: bar

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_REL
  Machine: EM_X86_64
Sections:
  - Name:        .text
    Type:        SHT_PROGBITS
  - Name:        .rela.text1
    Type:        SHT_RELA
    Relocations:
      - Offset:  0x0000000000000001
        Symbol:  bar
        Type:    R_X86_64_32
  - Name:        .rela.text2
    Type:        SHT_RELA
    Relocations:
      - Offset:  0x0000000000000001
        Symbol:  bar
        Type:    R_X86_64_32
  - Name:        .other.section
    Type:        SHT_PROGBITS
Symbols:
  - Name:    bar
    Binding: STB_GLOBAL
...

## Check we remove unreferenced undefined symbols, even if
## they weren't previously referenced. This follows GNU.

# RUN: yaml2obj --docnum=2 %s -o %t.o
# RUN: llvm-objcopy -j .keep_me %t.o %t2.o
# RUN: llvm-readobj --symbols %t2.o | FileCheck %s

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_REL
  Machine: EM_X86_64
Sections:
  - Name: .keep_me
    Type: SHT_PROGBITS
Symbols:
  - Name:    bar
    Binding: STB_GLOBAL
...
