| # 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 |