This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi, a previous patch of Cesar's has made the middle-end omp-lowering automatically create and insert a tofrom (i.e. present_or_copy) map for parallel reductions. This allowed the user to not need explicit clauses to copy out the reduction result, but because reduction arguments are not marked addressable, async does not work as expected, i.e. the asynchronous copy-out results are not used in the compiler generated code. This patch fixes this in the front-ends, I've tested this patch without new regressions, and fixes some C++ OpenACC tests that regressed after my last OpenACC async patch. Is this okay for trunk? Thanks, Chung-Lin 2016-05-30 Chung-Lin Tang <cltang@codesourcery.com> c/ * c-typeck.c (c_finish_omp_clauses): Mark OpenACC reduction arguments as addressable. cp/ * semantics.c (finish_omp_clauses): Mark OpenACC reduction arguments as addressable. fortran/ * trans-openmp.c (gfc_trans_oacc_construct): Mark OpenACC reduction arguments as addressable. (gfc_trans_oacc_combined_directive): Likewise.
Attachment:
a.diff
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |