## Show which labels are printed in disassembly of a relocatable object.

# RUN: yaml2obj %s -o %t
# RUN: llvm-objdump %t -d | FileCheck %s --implicit-check-not=stt_section \
# RUN:                                   --implicit-check-not=first \
# RUN:                                   --implicit-check-not=second \
# RUN:                                   --implicit-check-not=third \
# RUN:                                   --implicit-check-not=fourth \
# RUN:                                   --implicit-check-not=absolute \
# RUN:                                   --implicit-check-not=other

# CHECK: {{.*}}: file format {{.*}}
# CHECK: Disassembly of section .text:
# CHECK: 0000000000000000 <first>:
# CHECK: 0000000000000001 <second>:
# CHECK: 0000000000000002 <third>:
# CHECK: Disassembly of section .text2:
# CHECK: 0000000000000004 <other>:

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_REL
  Machine: EM_X86_64
Sections:
  - Name:    .text
    Type:    SHT_PROGBITS
    Flags:   [SHF_ALLOC, SHF_EXECINSTR]
    Content: '909090909090'
  - Name:    .text2
    Type:    SHT_PROGBITS
    Flags:   [SHF_ALLOC, SHF_EXECINSTR]
    Content: '9090909090'
Symbols:
  - Name:    first
    Value:   0
    Section: .text
    Size:    2
  - Name:    second # Shows, with first, that symbol sizes are not used to delineate functions.
    Value:   1
    Size:    1
    Section: .text
  - Name:    third # Shows, with fourth, that first symbol is picked.
    Value:   2
    Section: .text
  - Name:    fourth
    Value:   2
    Section: .text
  - Name:    stt_section # Shows that STT_SECTION symbols are ignored even if no other symbol present.
    Value:   3
    Type:    STT_SECTION
    Section: .text
  - Name:    absolute # Show that absolute symbols are ignored.
    Value:   4
    Index:   SHN_ABS
  - Name:    other # Show that symbols in other sections are ignored.
    Value:   4
    Section: .text2
