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]

Re: [PR c/64765, c/64880] Support OpenACC Combined Directives in C, C++


On 10/08/15 12:39, Thomas Schwinge wrote:
Hi!

Some bits extracted out of gomp-4_0-branch, and some other bits
rewritten; here is a patch to support OpenACC Combined Directives in C,
C++.  (The Fortran front end already does support these.)

As far as I know, Jakub is not available at this time, so maybe the C
(Joseph) and C++ (Jason, Nathan) front end maintainers could please
review this, instead of him?  (The front end changes as well as the few
other cleanup changes should all be straight forward.)  OK for trunk once
bootstrap tested?





--- gcc/cp/parser.c
+++ gcc/cp/parser.c
@@ -33132,69 +33132,64 @@ cp_parser_oacc_enter_exit_data (cp_parser *parser, cp_token *pragma_tok,

-/* OpenACC 2.0:
     # pragma acc loop oacc-loop-clause[optseq] new-line
       structured-block  */

  #define OACC_LOOP_CLAUSE_MASK						\
  	( (OMP_CLAUSE_MASK_1 << PRAGMA_OACC_CLAUSE_COLLAPSE)		\
-	| (OMP_CLAUSE_MASK_1 << PRAGMA_OACC_CLAUSE_REDUCTION))
+	| (OMP_CLAUSE_MASK_1 << PRAGMA_OACC_CLAUSE_REDUCTION) )

  static tree
-cp_parser_oacc_loop (cp_parser *parser, cp_token *pragma_tok)
+cp_parser_oacc_loop (cp_parser *parser, cp_token *pragma_tok, char *p_name,
+		     omp_clause_mask mask, tree *cclauses)


Needs documentation.


  static tree
-cp_parser_oacc_parallel (cp_parser *parser, cp_token *pragma_tok)
+cp_parser_oacc_kernels_parallel (cp_parser *parser, cp_token *pragma_tok,
+				 char *p_name)

Likewise,



diff --git gcc/cp/semantics.c gcc/cp/semantics.c
index c1f4330..3b9b714 100644
--- gcc/cp/semantics.c
+++ gcc/cp/semantics.c
@@ -6124,8 +6124,17 @@ finish_omp_structured_block (tree block)
    return do_poplevel (block);
  }

+/* Similarly, except force the retention of the BLOCK.  */

similar to what?

+
+tree
+begin_omp_parallel (void)

nathan


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]