41 lines · plain
1// REQUIRES: x862// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o3// RUN: ld.lld %t.o -o %t.so -shared4// RUN: llvm-readobj -r --symbols %t.so | FileCheck %s5 6 .data7 .quad __start_foo8 .section foo,"aw"9 10 .hidden __start_bar11 .quad __start_bar12 .section bar,"a"13 14// CHECK: Relocations [15// CHECK-NEXT: Section {{.*}} .rela.dyn {16// CHECK-NEXT: R_X86_64_RELATIVE17// CHECK-NEXT: R_X86_64_RELATIVE18// CHECK-NEXT: }19// CHECK-NEXT: ]20 21// Test that we are able to hide the symbol.22// By default the symbol is protected.23 24// CHECK: Name: __start_bar25// CHECK-NEXT: Value:26// CHECK-NEXT: Size:27// CHECK-NEXT: Binding: Local28// CHECK-NEXT: Type: None29// CHECK-NEXT: Other [30// CHECK-NEXT: STV_HIDDEN31// CHECK-NEXT: ]32 33// CHECK: Name: __start_foo34// CHECK-NEXT: Value:35// CHECK-NEXT: Size:36// CHECK-NEXT: Binding: Global37// CHECK-NEXT: Type: None38// CHECK-NEXT: Other [39// CHECK-NEXT: STV_PROTECTED40// CHECK-NEXT: ]41