From 936a1b573b6a0040915eab7cf4b9ae3a43e9169a Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Tue, 5 Aug 2014 19:56:53 +0000 Subject: [PATCH] Add a test showing the interaction of linker scripts and plugin. In particular, the linker script is processed early enough for function g to be internalized. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214916 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/tools/gold/Inputs/linker-script.export | 5 +++++ test/tools/gold/linker-script.ll | 17 +++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 test/tools/gold/Inputs/linker-script.export create mode 100644 test/tools/gold/linker-script.ll diff --git a/test/tools/gold/Inputs/linker-script.export b/test/tools/gold/Inputs/linker-script.export new file mode 100644 index 00000000000..2062a081ffe --- /dev/null +++ b/test/tools/gold/Inputs/linker-script.export @@ -0,0 +1,5 @@ +{ + global: + f; + local: *; +}; diff --git a/test/tools/gold/linker-script.ll b/test/tools/gold/linker-script.ll new file mode 100644 index 00000000000..35a769453e5 --- /dev/null +++ b/test/tools/gold/linker-script.ll @@ -0,0 +1,17 @@ +; RUN: llvm-as %s -o %t.o + +; RUN: ld -plugin %llvmshlibdir/LLVMgold.so \ +; RUN: --plugin-opt=emit-llvm \ +; RUN: -shared %t.o -o %t2.o \ +; RUN: -version-script=%p/Inputs/linker-script.export +; RUN: llvm-dis %t2.o -o - | FileCheck %s + +; CHECK: define void @f() +define void @f() { + ret void +} + +; CHECK: define internal void @g() +define void @g() { + ret void +} -- 2.11.0