This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r106539 - in /branches/gomp-20050608-branch/gcc...
- From: jakub at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Sat, 05 Nov 2005 23:31:06 -0000
- Subject: r106539 - in /branches/gomp-20050608-branch/gcc...
Author: jakub
Date: Sat Nov 5 23:31:05 2005
New Revision: 106539
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=106539
Log:
* tree.h (OMP_CLAUSE_REDUCTION_INIT, OMP_CLAUSE_REDUCTION_MERGE,
OMP_CLAUSE_REDUCTION_PLACEHOLDER): Define.
* tree.def (OMP_CLAUSE_REDUCTION): Add 3 extra operands, update
comment.
* gimplify.c (gimplify_scan_omp_clauses): Call omp_add_variable
on OMP_CLAUSE_REDUCTION_PLACEHOLDER, gimplify
OMP_CLAUSE_REDUCTION_{INIT,MERGE} to notice all used variables.
* tree-gimple.h (omp_reduction_init): New prototype.
* omp-low.c (scan_sharing_clauses): Call scan_omp at the end on
OMP_CLAUSE_REDUCTION_{INIT,MERGE}.
(build_reduction_init): Renamed to...
(omp_reduction_init): ... this. No longer static. Don't handle
ARRAY_TYPE here.
(array_reduction_init, array_reduction_op): Removed.
(expand_rec_input_clauses): Don't call array_reduction_init,
instead gimplify OMP_CLAUSE_REDUCTION_INIT if non-NULL, in
the second pass.
(expand_reduction_clauses): Don't call array_reduction_op,
instead gimplify OMP_CLAUSE_REDUCTION_MERGE if non-NULL.
fortran/
* trans-openmp.c (gfc_omp_privatize_by_reference): Return
true if a pointer has GFC_DECL_SAVED_DESCRIPTOR set.
(gfc_trans_omp_array_reduction, gfc_trans_omp_reduction_list): New
functions.
(gfc_trans_omp_clauses): Add WHERE argument. Call
gfc_trans_omp_reduction_list rather than gfc_trans_omp_variable_list
for reductions.
(gfc_trans_omp_do, gfc_trans_omp_parallel, gfc_trans_omp_parallel_do,
gfc_trans_omp_parallel_sections, gfc_trans_omp_parallel_workshare,
gfc_trans_omp_sections, gfc_trans_omp_single): Adjust
gfc_trans_omp_clauses callers.
Modified:
branches/gomp-20050608-branch/gcc/ChangeLog.gomp
branches/gomp-20050608-branch/gcc/fortran/ChangeLog.gomp
branches/gomp-20050608-branch/gcc/fortran/trans-openmp.c
branches/gomp-20050608-branch/gcc/gimplify.c
branches/gomp-20050608-branch/gcc/omp-low.c
branches/gomp-20050608-branch/gcc/tree-gimple.h
branches/gomp-20050608-branch/gcc/tree.def
branches/gomp-20050608-branch/gcc/tree.h