[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