gcc/libgomp
Jason Merrill 7c424acd9a Allow dynamic initialization of thread_locals.
gcc/cp/
	* decl.c: Define tls_aggregates.
	(expand_static_init): Remove sorry.  Add to tls_aggregates.
	* cp-tree.h: Declare tls_aggregates.
	* call.c (set_up_extended_ref_temp): Add to tls_aggregates.
	* decl2.c (var_needs_tls_wrapper): New.
	(var_defined_without_dynamic_init): New.
	(get_tls_init_fn, get_tls_wrapper_fn): New.
	(generate_tls_wrapper, handle_tls_init): New.
	(cp_write_global_declarations): Call handle_tls_init and
	enerate_tls_wrapper.
	* mangle.c (write_guarded_var_name): Split out from..
	(mangle_guard_variable): ...here.
	(mangle_tls_init_fn, mangle_tls_wrapper_fn): Use it.
	(decl_tls_wrapper_p): New.
	* semantics.c (finish_id_expression): Replace use of thread_local
	variable with a call to its wrapper.
libiberty/
	* cp-demangle.c (d_special_name, d_dump): Handle TH and TW.
	(d_make_comp, d_print_comp): Likewise.
include/
	* demangle.h (enum demangle_component_type): Add
	DEMANGLE_COMPONENT_TLS_INIT and DEMANGLE_COMPONENT_TLS_WRAPPER.

From-SVN: r192211
2012-10-08 10:45:37 -04:00
..
config futex.h (sys_futex0): Change to static function with noinline, nomips16 attributes under MIPS16. 2012-08-29 09:29:55 +00:00
testsuite Allow dynamic initialization of thread_locals. 2012-10-08 10:45:37 -04:00
acinclude.m4 Fix Solaris symbol versioning (PR libstdc++/52188) 2012-02-27 13:51:50 +00:00
aclocal.m4 re PR libstdc++/36104 (gnu-versioned-namespace is broken) 2011-01-20 23:41:24 +00:00
alloc.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
barrier.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
ChangeLog Allow dynamic initialization of thread_locals. 2012-10-08 10:45:37 -04:00
ChangeLog.graphite Add forgotten ChangeLog entries. 2010-03-08 17:49:42 +00:00
config.h.in acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style. 2010-07-05 17:19:33 +00:00
configure * configure: Regenerated. 2012-09-14 19:33:57 -04:00
configure.ac re PR target/40125 (libgcc_s DLL installed in wrong directory in cross toolchain) 2010-12-06 00:50:04 +00:00
configure.tgt Handle -mx32 like -m64 2012-03-31 14:08:22 -07:00
critical.c ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence. 2011-11-30 14:32:53 +10:30
env.c backport: re PR fortran/46752 (OpenMP - Seg fault for unallocated allocatable array in firstprivate clause) 2011-08-02 18:13:29 +02:00
error.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
fortran.c backport: re PR fortran/46752 (OpenMP - Seg fault for unallocated allocatable array in firstprivate clause) 2011-08-02 18:13:29 +02:00
iter_ull.c re PR libgomp/49490 (suboptimal load balancing in loops) 2011-06-22 22:39:25 +02:00
iter.c re PR libgomp/49490 (suboptimal load balancing in loops) 2011-06-22 22:39:25 +02:00
libgomp_f.h.in Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
libgomp_g.h backport: re PR fortran/46752 (OpenMP - Seg fault for unallocated allocatable array in firstprivate clause) 2011-08-02 18:13:29 +02:00
libgomp.h * libgomp.h (enum memmodel): New. 2011-11-28 18:19:05 -08:00
libgomp.map backport: re PR fortran/46752 (OpenMP - Seg fault for unallocated allocatable array in firstprivate clause) 2011-08-02 18:13:29 +02:00
libgomp.spec.in
libgomp.texi libgomp.texi (Library Index): Renamed from "Index" to prevent conflict with index.html on case-insensitive... 2012-07-04 22:53:03 -04:00
loop_ull.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
loop.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
Makefile.am Fix Solaris symbol versioning (PR libstdc++/52188) 2012-02-27 13:51:50 +00:00
Makefile.in Fix Solaris symbol versioning (PR libstdc++/52188) 2012-02-27 13:51:50 +00:00
omp_lib.f90.in backport: re PR fortran/46752 (OpenMP - Seg fault for unallocated allocatable array in firstprivate clause) 2011-08-02 18:13:29 +02:00
omp_lib.h.in backport: re PR fortran/46752 (OpenMP - Seg fault for unallocated allocatable array in firstprivate clause) 2011-08-02 18:13:29 +02:00
omp.h.in backport: re PR fortran/46752 (OpenMP - Seg fault for unallocated allocatable array in firstprivate clause) 2011-08-02 18:13:29 +02:00
ordered.c ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence. 2011-11-30 14:32:53 +10:30
parallel.c re PR libgomp/45240 (parallel.c: GOMP_parallel_end locks a mutex but fails to unlock it after atomic operation complete) 2010-12-02 15:30:37 +01:00
sections.c re PR libgomp/43569 (libgomp: Conditional jump or move depends on uninitialised value) 2010-04-20 17:36:45 +02:00
single.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
task.c re PR libgomp/51376 (libgomp taskwait failure) 2011-12-09 12:51:43 +10:30
team.c backport: re PR fortran/46752 (OpenMP - Seg fault for unallocated allocatable array in firstprivate clause) 2011-08-02 18:13:29 +02:00
work.c Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00