1// REQUIRES: x86 2// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o 3// RUN: ld.lld -shared %t.o -o %t0.so 4// RUN: ld.lld -shared -Bsymbolic %t.o -o %t1.so 5// RUN: ld.lld -shared -Bsymbolic-functions %t.o -o %t2.so 6// RUN: llvm-readobj -S %t0.so | FileCheck -check-prefix=NOOPTION %s 7// RUN: llvm-readobj -S %t1.so | FileCheck -check-prefix=SYMBOLIC %s 8// RUN: llvm-readobj -S %t2.so | FileCheck -check-prefix=SYMBOLIC %s 9 10// NOOPTION: Section { 11// NOOPTION: Name: .plt 12 13// SYMBOLIC: Section { 14// SYMBOLIC-NOT: Name: .plt 15 16.text 17.globl foo 18.type foo,@function 19foo: 20nop 21 22.globl bar 23.type bar,@function 24bar: 25nop 26 27.globl do 28.type do,@function 29do: 30callq foo@PLT 31callq bar@PLT 32 33.weak zed 34.protected zed 35.quad zed 36