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