gcc/gcc ChangeLog.gomp c-common.h c-decl.c c-o ...
rth@gcc.gnu.org
rth@gcc.gnu.org
Wed Sep 28 12:37:00 GMT 2005
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gomp-20050608-branch
Changes by: rth@gcc.gnu.org 2005-09-28 12:37:13
Modified files:
gcc : ChangeLog.gomp c-common.h c-decl.c c-omp.c
c-parser.c gimplify.c omp-low.c tree-gimple.h
tree-pretty-print.c tree.def tree.h
gcc/fortran : ChangeLog.gomp trans-openmp.c
Added files:
gcc/testsuite/gcc.dg/gomp: copyin-1.c
Log message:
* c-decl.c (c_omp_remap_decl_1): Create OMP_CLAUSE_SHARED node here.
(c_finish_omp_parallel): And not here. Chain them in.
* c-omp.c (c_split_parallel_clauses): Rewrite to chain directly
through the clause nodes.
(c_finish_omp_bindings): Similarly.
* c-common.h (c_finish_omp_bindings): Update.
* c-parser.c (add_new_clause): Chain directly through the clauses.
(check_no_duplicate_clause): New.
(c_parser_pragma_omp_variable_list): Take a tree_code and create
clause nodes directly.
(c_parser_pragma_omp_variable_list_parens): New.
(c_parser_pragma_omp_clause_copyin): Use it.
(c_parser_pragma_omp_clause_copyprivate): Likewise.
(c_parser_pragma_omp_clause_firstprivate): Likewise.
(c_parser_pragma_omp_clause_lastprivate): Likewise.
(c_parser_pragma_omp_clause_private): Likewise.
(c_parser_pragma_omp_clause_shared): Likewise.
(c_parser_pragma_omp_clause_if): Use check_no_duplicate_clause.
(c_parser_pragma_omp_clause_nowait): Likewise.
(c_parser_pragma_omp_clause_num_threads): Likewise.
(c_parser_pragma_omp_clause_ordered): Likewise.
(c_parser_pragma_omp_clause_schedule): Likewise.
(c_parser_pragma_omp_clause_reduction): Update for chaining directly
through clauses; tidy error message.
* gimplify.c (gimplify_omp_for): Update for chaining directly
through clauses. Use find_omp_clause.
(gimplify_omp_single_simple): Split out of gimplify_omp_single.
(gimplify_omp_single_copy): Likewise. Update for chaining
directly through clauses. Create BLOCK for stack variable.
* omp-low.c (find_omp_clause): New.
(compute_num_threads): Use it.
(setup_data_fields): Update for chaining directly through clauses.
(setup_decl_value_expr_child): Likewise.
* tree-gimple.h (find_omp_clause): Declare.
* tree-pretty-print.c (op_symbol_1): Split out of op_symbol.
(dump_omp_clauses): New.
(dump_generic_node): Don't handle clause nodes here. Update
omp statements to use dump_omp_clauses.
* tree.def (OMP_CLAUSE_PRIVATE): Use 2 operands.
(OMP_CLAUSE_SHARED, OMP_CLAUSE_FIRSTPRIVATE): Likewise.
(OMP_CLAUSE_LASTPRIVATE, OMP_CLAUSE_REDUCTION): Likewise.
(OMP_CLAUSE_COPYIN, OMP_CLAUSE_COPYPRIVATE): Likewise.
* tree.h (OMP_PRIVATE_VARS, OMP_SHARED_VARS, OMP_FIRSTPRIVATE_VARS,
OMP_LASTPRIVATE_VARS, OMP_COPYIN_VARS, OMP_COPYPRIVATE_VARS): Remove.
(OMP_CLAUSE_CHAIN, OMP_CLAUSE_OUTER_DECL, OMP_CLAUSE_INNER_DECL): New.
(OMP_CLAUSE_NUM_THREADS_EXPR): Rename from OMP_NUM_THREADS_EXPR.
(OMP_CLAUSE_IF_EXPR): Rename from OMP_IF_EXPR.
(OMP_CLAUSE_SCHEDULE_CHUNK_EXPR): Rename from
OMP_CLAUSE_SCHEDULE_CHUNK_SIZE.
fortran/
* trans-openmp.c (gfc_trans_add_clause): New.
(gfc_trans_omp_variable_list): Take a tree code and build the clause
node here. Link it to the head of a list.
(gfc_trans_omp_clauses): Update to match.
(gfc_trans_omp_do): Use gfc_trans_add_clause.
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.51&r2=1.1.6.52
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-common.h.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.294.4.8&r2=1.294.4.9
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-decl.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.662.4.7&r2=1.662.4.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-omp.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.1.2.9&r2=1.1.2.10
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-parser.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=2.17.4.25&r2=2.17.4.26
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/gimplify.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=2.135.4.22&r2=2.135.4.23
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/omp-low.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.1.2.8&r2=1.1.2.9
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-gimple.h.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=2.22.8.3&r2=2.22.8.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-pretty-print.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=2.61.4.14&r2=2.61.4.15
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree.def.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.116.4.15&r2=1.116.4.16
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree.h.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=1.735.4.17&r2=1.735.4.18
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.9&r2=1.1.2.10
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.6&r2=1.1.2.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/gomp/copyin-1.c.diff?cvsroot=gcc&only_with_tag=gomp-20050608-branch&r1=NONE&r2=1.1.2.1
More information about the Gcc-cvs
mailing list