[lld] r314889 - [ELF] - Get rid of precompiled input objects from testcases.
George Rimar via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 4 02:46:53 PDT 2017
Author: grimar
Date: Wed Oct 4 02:46:53 2017
New Revision: 314889
URL: http://llvm.org/viewvc/llvm-project?rev=314889&view=rev
Log:
[ELF] - Get rid of precompiled input objects from testcases.
We have verneed1.so, verneed2.so files and verneed.so.sh script
to produce them. They were committed long time ago when LLD
was not yet able to produce some sections for versioning
(".gnu.version_r" I think).
There is no point to have them as binaries anymore. Patch
creates asm inputs instead based on verneed.so.sh content.
Differential revision: https://reviews.llvm.org/D38505
Added:
lld/trunk/test/ELF/Inputs/verneed1.s
lld/trunk/test/ELF/Inputs/verneed2.s
Removed:
lld/trunk/test/ELF/Inputs/verneed.so.sh
lld/trunk/test/ELF/Inputs/verneed1.so
lld/trunk/test/ELF/Inputs/verneed2.so
Modified:
lld/trunk/test/ELF/verneed-as-needed-weak.s
lld/trunk/test/ELF/verneed-local.s
lld/trunk/test/ELF/verneed.s
Removed: lld/trunk/test/ELF/Inputs/verneed.so.sh
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/Inputs/verneed.so.sh?rev=314888&view=auto
==============================================================================
--- lld/trunk/test/ELF/Inputs/verneed.so.sh (original)
+++ lld/trunk/test/ELF/Inputs/verneed.so.sh (removed)
@@ -1,58 +0,0 @@
-#!/bin/sh -eu
-
-# This script was used to produce the verneed{1,2}.so files.
-
-tmp=$(mktemp -d)
-
-echo "v1 {}; v2 {}; v3 {}; { local: *; };" > $tmp/verneed.script
-
-cat > $tmp/verneed1.s <<eof
-.globl f1_v1
-f1_v1:
-ret
-
-.globl f1_v2
-f1_v2:
-ret
-
-.globl f1_v3
-f1_v3:
-ret
-
-.symver f1_v1, f1 at v1
-.symver f1_v2, f1 at v2
-.symver f1_v3, f1@@v3
-
-.globl f2_v1
-f2_v1:
-ret
-
-.globl f2_v2
-f2_v2:
-ret
-
-.symver f2_v1, f2 at v1
-.symver f2_v2, f2@@v2
-
-.globl f3_v1
-f3_v1:
-ret
-
-.symver f3_v1, f3 at v1
-eof
-
-as -o $tmp/verneed1.o $tmp/verneed1.s
-ld.gold -shared -o verneed1.so $tmp/verneed1.o --version-script $tmp/verneed.script -soname verneed1.so.0
-
-cat > $tmp/verneed2.s <<eof
-.globl g1_v1
-g1_v1:
-ret
-
-.symver g1_v1, g1@@v1
-eof
-
-as -o $tmp/verneed2.o $tmp/verneed2.s
-ld.gold -shared -o verneed2.so $tmp/verneed2.o --version-script $tmp/verneed.script -soname verneed2.so.0
-
-rm -rf $tmp
Added: lld/trunk/test/ELF/Inputs/verneed1.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/Inputs/verneed1.s?rev=314889&view=auto
==============================================================================
--- lld/trunk/test/ELF/Inputs/verneed1.s (added)
+++ lld/trunk/test/ELF/Inputs/verneed1.s Wed Oct 4 02:46:53 2017
@@ -0,0 +1,32 @@
+.globl f1_v1
+f1_v1:
+ret
+
+.globl f1_v2
+f1_v2:
+ret
+
+.globl f1_v3
+f1_v3:
+ret
+
+.symver f1_v1, f1 at v1
+.symver f1_v2, f1 at v2
+.symver f1_v3, f1@@v3
+
+.globl f2_v1
+f2_v1:
+ret
+
+.globl f2_v2
+f2_v2:
+ret
+
+.symver f2_v1, f2 at v1
+.symver f2_v2, f2@@v2
+
+.globl f3_v1
+f3_v1:
+ret
+
+.symver f3_v1, f3 at v1
Removed: lld/trunk/test/ELF/Inputs/verneed1.so
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/Inputs/verneed1.so?rev=314888&view=auto
==============================================================================
Binary files lld/trunk/test/ELF/Inputs/verneed1.so (original) and lld/trunk/test/ELF/Inputs/verneed1.so (removed) differ
Added: lld/trunk/test/ELF/Inputs/verneed2.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/Inputs/verneed2.s?rev=314889&view=auto
==============================================================================
--- lld/trunk/test/ELF/Inputs/verneed2.s (added)
+++ lld/trunk/test/ELF/Inputs/verneed2.s Wed Oct 4 02:46:53 2017
@@ -0,0 +1,5 @@
+.globl g1_v1
+g1_v1:
+ret
+
+.symver g1_v1, g1@@v1
Removed: lld/trunk/test/ELF/Inputs/verneed2.so
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/Inputs/verneed2.so?rev=314888&view=auto
==============================================================================
Binary files lld/trunk/test/ELF/Inputs/verneed2.so (original) and lld/trunk/test/ELF/Inputs/verneed2.so (removed) differ
Modified: lld/trunk/test/ELF/verneed-as-needed-weak.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/verneed-as-needed-weak.s?rev=314889&r1=314888&r2=314889&view=diff
==============================================================================
--- lld/trunk/test/ELF/verneed-as-needed-weak.s (original)
+++ lld/trunk/test/ELF/verneed-as-needed-weak.s Wed Oct 4 02:46:53 2017
@@ -1,6 +1,10 @@
# REQUIRES: x86
+# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %S/Inputs/verneed1.s -o %t1.o
+# RUN: echo "v1 {}; v2 {}; v3 { local: *; };" > %t.script
+# RUN: ld.lld -shared %t1.o --version-script %t.script -o %t.so
+
# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
-# RUN: ld.lld %t.o --as-needed %S/Inputs/verneed1.so -o %t
+# RUN: ld.lld %t.o --as-needed %t.so -o %t
# RUN: llvm-readobj -V %t | FileCheck %s
# CHECK: SHT_GNU_verneed {
Modified: lld/trunk/test/ELF/verneed-local.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/verneed-local.s?rev=314889&r1=314888&r2=314889&view=diff
==============================================================================
--- lld/trunk/test/ELF/verneed-local.s (original)
+++ lld/trunk/test/ELF/verneed-local.s Wed Oct 4 02:46:53 2017
@@ -1,6 +1,10 @@
# REQUIRES: x86
+# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %S/Inputs/verneed1.s -o %t1.o
+# RUN: echo "v1 {}; v2 {}; v3 { local: *; };" > %t.script
+# RUN: ld.lld -shared %t1.o --version-script %t.script -o %t.so
+
# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
-# RUN: not ld.lld %t.o %S/Inputs/verneed1.so -o %t 2>&1 | FileCheck %s
+# RUN: not ld.lld %t.o %t.so -o %t 2>&1 | FileCheck %s
# CHECK: error: undefined symbol: f3
# CHECK: >>> referenced by {{.*}}:(.text+0x1)
Modified: lld/trunk/test/ELF/verneed.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/verneed.s?rev=314889&r1=314888&r2=314889&view=diff
==============================================================================
--- lld/trunk/test/ELF/verneed.s (original)
+++ lld/trunk/test/ELF/verneed.s Wed Oct 4 02:46:53 2017
@@ -1,6 +1,12 @@
# REQUIRES: x86
+# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %S/Inputs/verneed1.s -o %t1.o
+# RUN: echo "v1 {}; v2 {}; v3 { local: *; };" > %t.script
+# RUN: ld.lld -shared %t1.o --version-script %t.script -o %t1.so -soname verneed1.so.0
+# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %S/Inputs/verneed2.s -o %t2.o
+# RUN: ld.lld -shared %t2.o --version-script %t.script -o %t2.so -soname verneed2.so.0
+
# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
-# RUN: ld.lld %t.o %S/Inputs/verneed1.so %S/Inputs/verneed2.so -o %t
+# RUN: ld.lld %t.o %t1.so %t2.so -o %t
# RUN: llvm-readobj -V -sections -section-data -dyn-symbols -dynamic-table %t | FileCheck %s
# CHECK: Section {
More information about the llvm-commits
mailing list