49 lines · plain
1// REQUIRES: x862// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o3// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/shared.s -o %t2.o4// RUN: ld.lld -shared %t2.o -soname=so -o %t2.so5// RUN: ld.lld %t.o %t2.so -o %t6// RUN: llvm-readobj -S -r --section-data %t | FileCheck %s7// RUN: llvm-objdump -d --no-show-raw-insn %t | FileCheck --check-prefix=DISASM %s8 9 .globl _start10_start:11 call bar@gotpcrel12 call foo@gotpcrel13 14 .global foo15foo:16 nop17 18// 0x202320 - 0x201250 - 5 = 429919// 0x202328 - 0x201255 - 5 = 430220// DISASM: <_start>:21// DISASM-NEXT: 201250: callq 0x20232022// DISASM-NEXT: 201255: callq 0x20232823 24// DISASM: <foo>:25// DISASM-NEXT: 20125a: nop26 27// CHECK: Name: .got28// CHECK-NEXT: Type: SHT_PROGBITS29// CHECK-NEXT: Flags [30// CHECK-NEXT: SHF_ALLOC31// CHECK-NEXT: SHF_WRITE32// CHECK-NEXT: ]33// CHECK-NEXT: Address: 0x20232034// CHECK-NEXT: Offset:35// CHECK-NEXT: Size: 1636// CHECK-NEXT: Link: 037// CHECK-NEXT: Info: 038// CHECK-NEXT: AddressAlignment: 839// CHECK-NEXT: EntrySize: 040// CHECK-NEXT: SectionData (41// CHECK-NEXT: 0000: 00000000 00000000 5A122000 0000000042// CHECK-NEXT: )43 44// CHECK: Relocations [45// CHECK-NEXT: Section ({{.*}}) .rela.dyn {46// CHECK-NEXT: 0x202320 R_X86_64_GLOB_DAT bar 0x047// CHECK-NEXT: }48// CHECK-NEXT: ]49