From 890e89caadb9d2fe50f3d4e5d6782b2d33e2bc29 Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Fri, 16 Oct 2015 19:57:42 +0000 Subject: Add an interesting case where we were already producing the correct result. llvm-svn: 250544 --- lld/test/elf2/startstop-shared.s | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 lld/test/elf2/startstop-shared.s diff --git a/lld/test/elf2/startstop-shared.s b/lld/test/elf2/startstop-shared.s new file mode 100644 index 00000000000..ba8c5bf554f --- /dev/null +++ b/lld/test/elf2/startstop-shared.s @@ -0,0 +1,18 @@ +// REQUIRES: x86 +// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o +// RUN: ld.lld2 %t.o -o %t.so -shared +// RUN: llvm-readobj -r -t %t.so | FileCheck %s + + .quad __start_foo + .section foo,"a" +// By default the symbol is visible and we need a dynamic reloc. +// CHECK: R_X86_64_64 __start_foo 0x0 + + .hidden __start_bar + .quad __start_bar + .section bar,"a" +// Test that we are able to hide the symbol. +// CHECK: R_X86_64_RELATIVE - 0x[[ADDR:.*]] + +// CHECK: Name: __start_bar +// CHECK-NEXT: Value: 0x[[ADDR]] -- cgit v1.2.3