33 lines · plain
1// REQUIRES: x862// RUN: llvm-mc -filetype=obj -triple=i386-pc-linux %s -o %t3// RUN: ld.lld --hash-style=sysv -shared %t -o %t24// RUN: llvm-readobj --symbols %t2 | FileCheck %s5 6// The X86 _GLOBAL_OFFSET_TABLE_ is defined at the start of the .got.plt7// section.8.globl a9.type a,@object10.comm a,4,411 12.globl f13.type f,@function14f:15addl $_GLOBAL_OFFSET_TABLE_, %eax16movl a@GOT(%eax), %eax17 18.global _start19.type _start,@function20_start:21addl $_GLOBAL_OFFSET_TABLE_, %eax22calll f@PLT23 24// CHECK: Name: _GLOBAL_OFFSET_TABLE_25// CHECK-NEXT: Value:26// CHECK-NEXT: Size: 027// CHECK-NEXT: Binding: Local (0x0)28// CHECK-NEXT: Type: None (0x0)29// CHECK-NEXT: Other [ (0x2)30// CHECK-NEXT: STV_HIDDEN (0x2)31// CHECK-NEXT: ]32// CHECK-NEXT: Section: .got.plt33