# Test that a relocation's symbol can be an integer.
# RUN: yaml2obj %s > %t
# LLVM tools (both llvm-readobj and llvm-objdump) reject relocations with
# invalid symbol indexes, so inspect the hex contents instead.
# RUN: llvm-readobj -x .rela.text %t | FileCheck %s

# CHECK:      Hex dump of section '.rela.text':
# CHECK-NEXT: 0x00000000 00000000 00000000 02000000 42000000
#                               Symbol index 0x42 --^
# CHECK-NEXT: 0x00000010 00000000 00000000 00000000 00000000
# CHECK-NEXT: 0x00000020 02000000 01000000 00000000 00000000
#             Symbol index 0x01 --^

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_REL
  Machine: EM_X86_64
Sections:
  - Name: .text
    Type: SHT_PROGBITS
  - Name: .rela.text
    Type: SHT_RELA
    Info: .text
    Link: .symtab
    Relocations:
      - Type: R_X86_64_PC32
        Offset: 0
        Symbol: 0x42
      - Type: R_X86_64_PC32
        Offset: 0
        Symbol: 0x1
Symbols:
  - Name: foo
    Binding: STB_GLOBAL
