diff --git a/ld/ChangeLog b/ld/ChangeLog index b1ccec8b0c5..c5838d294bb 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,14 @@ +2018-08-02 H.J. Lu + + PR binutils/23460 + * testsuite/ld-plugin/lto.exp: Run the PR binutils/23460 test. + * testsuite/ld-plugin/pr23460a.c: New file. + * testsuite/ld-plugin/pr23460b.c: Likewise. + * testsuite/ld-plugin/pr23460c.c: Likewise. + * testsuite/ld-plugin/pr23460d.c: Likewise. + * testsuite/ld-plugin/pr23460e.c: Likewise. + * testsuite/ld-plugin/pr23460f.c: Likewise. + 2018-08-01 Roland McGrath * testsuite/ld-aarch64/ifunc-1-local.d: Adjust regexps to match diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp index 7c50b0f1021..5d354bfa9e6 100644 --- a/ld/testsuite/ld-plugin/lto.exp +++ b/ld/testsuite/ld-plugin/lto.exp @@ -556,6 +556,32 @@ if { [at_least_gcc_version 4 7] } { } { fail $testname } + + run_cc_link_tests [list \ + [list \ + "Build pr23460*.o" \ + "$plug_opt" \ + "-O2 -fPIC -flto $lto_no_fat" \ + {pr23460a.c pr23460b.c pr23460c.c \ + pr23460d.c pr23460e.c pr23460f.c} \ + ] \ + ] + set exec_output [run_host_cmd "sh" \ + "-c \"ulimit -n 16; \ + $ar -rc $plug_opt \ + tmpdir/libpr23460.a \ + tmpdir/pr23460a.o \ + tmpdir/pr23460b.o \ + tmpdir/pr23460c.o \ + tmpdir/pr23460d.o \ + tmpdir/pr23460e.o \ + tmpdir/pr23460f.o\""] + set exec_output [prune_warnings $exec_output] + if [string match "" $exec_output] then { + pass "PR binutils/23460" + } else { + fail "PR binutils/23460" + } } # Run "ld -r" to generate inputs for complex LTO tests. diff --git a/ld/testsuite/ld-plugin/pr23460a.c b/ld/testsuite/ld-plugin/pr23460a.c new file mode 100644 index 00000000000..4a8cd140a2f --- /dev/null +++ b/ld/testsuite/ld-plugin/pr23460a.c @@ -0,0 +1,4 @@ +void +x1 (void) +{ +} diff --git a/ld/testsuite/ld-plugin/pr23460b.c b/ld/testsuite/ld-plugin/pr23460b.c new file mode 100644 index 00000000000..6c178fbc76a --- /dev/null +++ b/ld/testsuite/ld-plugin/pr23460b.c @@ -0,0 +1,4 @@ +void +x2 (void) +{ +} diff --git a/ld/testsuite/ld-plugin/pr23460c.c b/ld/testsuite/ld-plugin/pr23460c.c new file mode 100644 index 00000000000..99b23c5dcdd --- /dev/null +++ b/ld/testsuite/ld-plugin/pr23460c.c @@ -0,0 +1,4 @@ +void +x3 (void) +{ +} diff --git a/ld/testsuite/ld-plugin/pr23460d.c b/ld/testsuite/ld-plugin/pr23460d.c new file mode 100644 index 00000000000..432d39b39c3 --- /dev/null +++ b/ld/testsuite/ld-plugin/pr23460d.c @@ -0,0 +1,4 @@ +void +x4 (void) +{ +} diff --git a/ld/testsuite/ld-plugin/pr23460e.c b/ld/testsuite/ld-plugin/pr23460e.c new file mode 100644 index 00000000000..2809011ee7a --- /dev/null +++ b/ld/testsuite/ld-plugin/pr23460e.c @@ -0,0 +1,4 @@ +void +x5 (void) +{ +} diff --git a/ld/testsuite/ld-plugin/pr23460f.c b/ld/testsuite/ld-plugin/pr23460f.c new file mode 100644 index 00000000000..e500bf5ae6a --- /dev/null +++ b/ld/testsuite/ld-plugin/pr23460f.c @@ -0,0 +1,4 @@ +void +x6 (void) +{ +}