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]

[PATCH] Add a testcase for PR binutils/23460


Add a testcase to limit open files to 16 for AR with plugin.  Before

commit 103da91bc083f94769e3758175a96d06cef1f8fe
Author: Nick Clifton <nickc@redhat.com>
Date:   Wed Aug 1 14:34:41 2018 +0100

    Close resource leaks in the BFD library's plugin handler.

it failed with:

../binutils/ar: tmpdir/pr23460f.o: plugin needed to handle lto object

OK for master branch?


H.J.
---
	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.
---
 ld/testsuite/ld-plugin/lto.exp    | 25 +++++++++++++++++++++++++
 ld/testsuite/ld-plugin/pr23460a.c |  4 ++++
 ld/testsuite/ld-plugin/pr23460b.c |  4 ++++
 ld/testsuite/ld-plugin/pr23460c.c |  4 ++++
 ld/testsuite/ld-plugin/pr23460d.c |  4 ++++
 ld/testsuite/ld-plugin/pr23460e.c |  4 ++++
 ld/testsuite/ld-plugin/pr23460f.c |  4 ++++
 7 files changed, 49 insertions(+)
 create mode 100644 ld/testsuite/ld-plugin/pr23460a.c
 create mode 100644 ld/testsuite/ld-plugin/pr23460b.c
 create mode 100644 ld/testsuite/ld-plugin/pr23460c.c
 create mode 100644 ld/testsuite/ld-plugin/pr23460d.c
 create mode 100644 ld/testsuite/ld-plugin/pr23460e.c
 create mode 100644 ld/testsuite/ld-plugin/pr23460f.c

diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp
index 7c50b0f102..b607561f8b 100644
--- a/ld/testsuite/ld-plugin/lto.exp
+++ b/ld/testsuite/ld-plugin/lto.exp
@@ -556,6 +556,31 @@ 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 "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 0000000000..4a8cd140a2
--- /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 0000000000..6c178fbc76
--- /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 0000000000..99b23c5dcd
--- /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 0000000000..432d39b39c
--- /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 0000000000..2809011ee7
--- /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 0000000000..e500bf5ae6
--- /dev/null
+++ b/ld/testsuite/ld-plugin/pr23460f.c
@@ -0,0 +1,4 @@
+void
+x6 (void)
+{
+}
-- 
2.17.1


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