This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Remove tests that test __gnu_lto_v1 symbol.


On Tue, Jul 23, 2019 at 8:43 AM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> On Mon, Jul 22, 2019 at 6:02 AM Martin Liška <mliska@suse.cz> wrote:
> >
> > Hi.
> >
> > As of r273662, the GCC compiler stopped emitting __gnu_lto_v1 symbol
> > for LTO objects.
> >
> > Thus I'm suggesting to remove the tests for it.
> >
> > Ready for trunk?
> > Thanks,
> > Martin
> >
> > ld/ChangeLog:
> >
> > 2019-07-22  Martin Liska  <mliska@suse.cz>
> >
> >         * testsuite/ld-plugin/lto-3r.d: Remove.
> >         * testsuite/ld-plugin/lto-5r.d: Remove.
> >         * testsuite/ld-plugin/lto.exp: Do not run lto-3r and lto-5r
> >         tests.
> > ---
> >  ld/testsuite/ld-plugin/lto-3r.d | 7 -------
> >  ld/testsuite/ld-plugin/lto-5r.d | 7 -------
> >  ld/testsuite/ld-plugin/lto.exp  | 6 ------
> >  3 files changed, 20 deletions(-)
> >  delete mode 100644 ld/testsuite/ld-plugin/lto-3r.d
> >  delete mode 100644 ld/testsuite/ld-plugin/lto-5r.d
> >
> >
>
> This caused:
>
> FAIL: LTO 5 symbol
> FAIL: LTO 3b
> FAIL: LTO 5
>
> cc: error: tmpdir/lto-5.o: No such file or directory
> cc: error: tmpdir/lto-5.o: No such file or directory
> Unexpected linker warning or error
> FAIL: LTO 5 symbol
>

This patch fixes it.  OK for master?


-- 
H.J.
From b4287b2cf172813ac83d80501c5a0e1fab6c5076 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Tue, 23 Jul 2019 08:51:31 -0700
Subject: [PATCH] Revert "Remove tests that test __gnu_lto_v1 symbol."

Revert

commit 8c728a9d93e2342c57039fcdd6e4a502875b9e09
Author: Martin Liska <mliska@suse.cz>
Date:   Mon Jul 22 14:23:32 2019 +0200

    Remove tests that test __gnu_lto_v1 symbol.

since outputs of these tests are used by later tests.  Check the normal
symbol, foo, instead of __gnu_lto_v.*, which GCC stopped emitting after
r273662.

	* testsuite/ld-plugin/lto-3r.d: Restored.  Check foo instead
	of __gnu_lto_v.*.
	* testsuite/ld-plugin/lto-5r.d: Likewise.
	* testsuite/ld-plugin/lto.exp: Run lto-3r and lto-5r tests.
---
 ld/testsuite/ld-plugin/lto-3r.d | 7 +++++++
 ld/testsuite/ld-plugin/lto-5r.d | 7 +++++++
 ld/testsuite/ld-plugin/lto.exp  | 6 ++++++
 3 files changed, 20 insertions(+)
 create mode 100644 ld/testsuite/ld-plugin/lto-3r.d
 create mode 100644 ld/testsuite/ld-plugin/lto-5r.d

diff --git a/ld/testsuite/ld-plugin/lto-3r.d b/ld/testsuite/ld-plugin/lto-3r.d
new file mode 100644
index 0000000000..8ce4482d15
--- /dev/null
+++ b/ld/testsuite/ld-plugin/lto-3r.d
@@ -0,0 +1,7 @@
+#ld: -r tmpdir/lto-3b.o
+#source: dummy.s
+#nm: -p
+
+#...
+[0-9a-f]+ T _?foo
+#pass
diff --git a/ld/testsuite/ld-plugin/lto-5r.d b/ld/testsuite/ld-plugin/lto-5r.d
new file mode 100644
index 0000000000..57d41781c2
--- /dev/null
+++ b/ld/testsuite/ld-plugin/lto-5r.d
@@ -0,0 +1,7 @@
+#ld: -r tmpdir/lto-5a.o tmpdir/lto-5b.o
+#source: dummy.s
+#nm: -p
+
+#...
+[0-9a-f]+ T _?foo
+#pass
diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp
index b80de4902c..e913c6f203 100644
--- a/ld/testsuite/ld-plugin/lto.exp
+++ b/ld/testsuite/ld-plugin/lto.exp
@@ -630,6 +630,12 @@ if { [at_least_gcc_version 4 7] } {
     }
 }
 
+# Run "ld -r" to generate inputs for complex LTO tests.
+run_dump_test "lto-3r"
+remote_exec host "mv" "tmpdir/dump tmpdir/lto-3.o"
+run_dump_test "lto-5r"
+remote_exec host "mv" "tmpdir/dump tmpdir/lto-5.o"
+
 run_cc_link_tests $lto_link_symbol_tests
 
 run_ld_link_tests [list \
-- 
2.20.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]