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: Add gcc-4.9 libgomp symbols requiring --plt-thread-safe for power7


On Tue, Oct 21, 2014 at 05:23:00PM +1030, Alan Modra wrote:
> Found when investigating some intermittent mainline gcc libgomp test
> failures.
> 
> powerpc64 ld builds plt call stubs with a read barrier to provide
> thread safety on lazy plt updates, necessary on multi-threaded apps
> with power7 or later, weakly ordered memory.  gcc-4.9 libgomp
> introduced more functions that could call pthread_create, which means
> we have more functions that if referenced in an executable should
> cause a default of --plt-thread-safe.

This of course is needed for gold too.  Committed 80272b8c.

	* powerpc.cc (do_relax): Add gcc-4.9 libgomp functions to
	thread_starter.

diff --git a/gold/powerpc.cc b/gold/powerpc.cc
index 0a9ab7d..828bc16 100644
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -2708,11 +2708,17 @@ Target_powerpc<size, big_endian>::do_relax(int pass,
 	      /* libanl */
 	      "getaddrinfo_a",
 	      /* libgomp */
+	      "GOMP_parallel",
 	      "GOMP_parallel_start",
+	      "GOMP_parallel_loop_static",
 	      "GOMP_parallel_loop_static_start",
+	      "GOMP_parallel_loop_dynamic",
 	      "GOMP_parallel_loop_dynamic_start",
+	      "GOMP_parallel_loop_guided",
 	      "GOMP_parallel_loop_guided_start",
+	      "GOMP_parallel_loop_runtime",
 	      "GOMP_parallel_loop_runtime_start",
+	      "GOMP_parallel_sections",
 	      "GOMP_parallel_sections_start",
 	    };
 

-- 
Alan Modra
Australia Development Lab, IBM


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