75 lines · plain
1# REQUIRES: x862# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t3# RUN: echo "bar" > %t_retain.txt4# RUN: echo "foo" >> %t_retain.txt5# RUN: ld.lld --hash-style=sysv -shared --retain-symbols-file=%t_retain.txt %t -o %t26# RUN: llvm-readobj --dyn-symbols %t2 | FileCheck %s7 8## Check separate form.9# RUN: ld.lld --hash-style=sysv -shared --retain-symbols-file %t_retain.txt %t -o %t210# RUN: llvm-readobj --dyn-symbols %t2 | FileCheck %s11 12# CHECK: DynamicSymbols [13# CHECK-NEXT: Symbol {14# CHECK-NEXT: Name:15# CHECK-NEXT: Value:16# CHECK-NEXT: Size:17# CHECK-NEXT: Binding:18# CHECK-NEXT: Type:19# CHECK-NEXT: Other:20# CHECK-NEXT: Section:21# CHECK-NEXT: }22# CHECK-NEXT: Symbol {23# CHECK-NEXT: Name: und24# CHECK-NEXT: Value:25# CHECK-NEXT: Size:26# CHECK-NEXT: Binding: Global27# CHECK-NEXT: Type:28# CHECK-NEXT: Other:29# CHECK-NEXT: Section: Undefined30# CHECK-NEXT: }31# CHECK-NEXT: Symbol {32# CHECK-NEXT: Name: foo33# CHECK-NEXT: Value:34# CHECK-NEXT: Size:35# CHECK-NEXT: Binding: Global36# CHECK-NEXT: Type:37# CHECK-NEXT: Other:38# CHECK-NEXT: Section: .text39# CHECK-NEXT: }40# CHECK-NEXT: Symbol {41# CHECK-NEXT: Name: bar42# CHECK-NEXT: Value:43# CHECK-NEXT: Size:44# CHECK-NEXT: Binding: Global45# CHECK-NEXT: Type:46# CHECK-NEXT: Other:47# CHECK-NEXT: Section: .text48# CHECK-NEXT: }49# CHECK-NEXT: ]50 51.text52.globl _start53_start:54call zed@PLT55call und@PLT56 57.globl foo58.type foo,@function59foo:60retq61 62.globl bar63.type bar,@function64bar:65retq66 67.globl zed68.type zed,@function69zed:70retq71 72.type loc,@function73loc:74retq75