gcc gcc/ChangeLog.gomp gcc/defaults.h gcc/vara ...
jakub@gcc.gnu.org
jakub@gcc.gnu.org
Mon Sep 26 20:35:00 GMT 2005
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gomp-20050608-branch
Changes by: jakub@gcc.gnu.org 2005-09-26 20:35:58
Modified files:
gcc : ChangeLog.gomp defaults.h varasm.c
gcc/fortran : ChangeLog.gomp Make-lang.in dump-parse-tree.c
gfortran.h module.c openmp.c resolve.c symbol.c
trans-common.c trans-decl.c trans-openmp.c
libgomp : ChangeLog
libgomp/testsuite/libgomp.fortran: omp_parse3.f90
Log message:
* varasm.c (assemble_variable): Handle thread-local COMMON data.
* defaults.h (ASM_OUTPUT_TLS_COMMON): Define.
* gfortran.h (symbol_attribute): Add threadprivate bit.
(gfc_common_head): Add threadprivate member, change use_assoc
and saved into char to save space.
(gfc_add_threadprivate): New prototype.
* symbol.c (check_conflict): Handle threadprivate.
(gfc_add_threadprivate): New function.
(gfc_copy_attr): Copy threadprivate.
* trans-openmp.c (gfc_trans_omp_clauses): Avoid creating a temporary
if IF or NUM_THREADS is constant. Create OMP_CLAUSE_SCHEDULE and
OMP_CLAUSE_ORDERED.
* resolve.c (resolve_symbol): Complain if a THREADPRIVATE symbol
outside a module and not in COMMON has is not SAVEd.
(resolve_equivalence): Ensure THREADPRIVATE objects don't get
EQUIVALENCEd.
* trans-common.c: Include target.h and rtl.h.
(build_common_decl): Set DECL_TLS_MODEL if THREADPRIVATE.
* trans-decl.c: Include rtl.h.
(gfc_finish_var_decl): Set DECL_TLS_MODEL if THREADPRIVATE.
* dump-parse-tree.c (gfc_show_attr): Handle THREADPRIVATE.
* Make-lang.in (fortran/trans-decl.o): Depend on $(RTL_H).
(fortran/trans-common.o): Depend on $(RTL_H) and $(TARGET_H).
* openmp.c (gfc_match_omp_variable_list): Ensure COMMON block
is from current namespace.
(gfc_match_omp_threadprivate): Rewrite.
(resolve_omp_clauses): Check some clause restrictions.
* module.c (ab_attribute): Add AB_THREADPRIVATE.
(attr_bits): Add THREADPRIVATE.
(mio_symbol_attribute, mio_symbol_attribute): Handle threadprivate.
(load_commons, write_common, write_blank_common): Adjust for type
change of saved, store/load threadprivate bit from the integer
as well.
* testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
constructs.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.gomp.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.1.6.39&r2=1.1.6.40
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/defaults.h.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.170.4.3&r2=1.170.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/varasm.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.513.4.5&r2=1.513.4.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/ChangeLog.gomp.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.1.2.7&r2=1.1.2.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/Make-lang.in.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.17.4.6&r2=1.17.4.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/dump-parse-tree.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.17.4.4&r2=1.17.4.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/gfortran.h.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.70.4.7&r2=1.70.4.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/module.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.32.6.4&r2=1.32.6.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/openmp.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.1.2.3&r2=1.1.2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/resolve.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.44.4.5&r2=1.44.4.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/symbol.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.29.4.3&r2=1.29.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/trans-common.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.27.4.4&r2=1.27.4.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/trans-decl.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.60.4.4&r2=1.60.4.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/trans-openmp.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.1.2.4&r2=1.1.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libgomp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.1.6.16&r2=1.1.6.17
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libgomp/testsuite/libgomp.fortran/omp_parse3.f90.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.1.2.1&r2=1.1.2.2
More information about the Gcc-cvs
mailing list