// REQUIRES: x86 // RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o // RUN: ld.lld %t.o -o %t.so -shared // RUN: llvm-readobj -r --symbols %t.so | FileCheck %s .data .quad __start_foo .section foo,"aw" .hidden __start_bar .quad __start_bar .section bar,"a" // CHECK: Relocations [ // CHECK-NEXT: Section {{.*}} .rela.dyn { // CHECK-NEXT: R_X86_64_RELATIVE // CHECK-NEXT: R_X86_64_RELATIVE // CHECK-NEXT: } // CHECK-NEXT: ] // Test that we are able to hide the symbol. // By default the symbol is protected. // CHECK: Name: __start_bar // CHECK-NEXT: Value: // CHECK-NEXT: Size: // CHECK-NEXT: Binding: Local // CHECK-NEXT: Type: None // CHECK-NEXT: Other [ // CHECK-NEXT: STV_HIDDEN // CHECK-NEXT: ] // CHECK: Name: __start_foo // CHECK-NEXT: Value: // CHECK-NEXT: Size: // CHECK-NEXT: Binding: Global // CHECK-NEXT: Type: None // CHECK-NEXT: Other [ // CHECK-NEXT: STV_PROTECTED // CHECK-NEXT: ]