Commit fc2a1f2f by Thomas Schwinge Committed by Thomas Schwinge

Clean up Fortran OpenACC wait clause handling

"wait" can be deduced from "wait_list".

	gcc/fortran/
	* gfortran.h (struct gfc_omp_clauses): Remove "wait".  Adjust all
	users.

From-SVN: r266685
parent c34f4fbc
2018-11-30 Thomas Schwinge <thomas@codesourcery.com> 2018-11-30 Thomas Schwinge <thomas@codesourcery.com>
* gfortran.h (struct gfc_omp_clauses): Remove "wait". Adjust all
users.
* openmp.c (gfc_match_omp_clauses): Support multiple OpenACC wait * openmp.c (gfc_match_omp_clauses): Support multiple OpenACC wait
clauses. clauses.
......
...@@ -1345,7 +1345,7 @@ typedef struct gfc_omp_clauses ...@@ -1345,7 +1345,7 @@ typedef struct gfc_omp_clauses
gfc_expr_list *wait_list; gfc_expr_list *wait_list;
gfc_expr_list *tile_list; gfc_expr_list *tile_list;
unsigned async:1, gang:1, worker:1, vector:1, seq:1, independent:1; unsigned async:1, gang:1, worker:1, vector:1, seq:1, independent:1;
unsigned wait:1, par_auto:1, gang_static:1; unsigned par_auto:1, gang_static:1;
unsigned if_present:1, finalize:1; unsigned if_present:1, finalize:1;
locus loc; locus loc;
......
...@@ -1878,7 +1878,6 @@ gfc_match_omp_clauses (gfc_omp_clauses **cp, const omp_mask mask, ...@@ -1878,7 +1878,6 @@ gfc_match_omp_clauses (gfc_omp_clauses **cp, const omp_mask mask,
if ((mask & OMP_CLAUSE_WAIT) if ((mask & OMP_CLAUSE_WAIT)
&& gfc_match ("wait") == MATCH_YES) && gfc_match ("wait") == MATCH_YES)
{ {
c->wait = true;
match m = match_oacc_expr_list (" (", &c->wait_list, false); match m = match_oacc_expr_list (" (", &c->wait_list, false);
if (m == MATCH_ERROR) if (m == MATCH_ERROR)
{ {
...@@ -4779,8 +4778,6 @@ resolve_omp_clauses (gfc_code *code, gfc_omp_clauses *omp_clauses, ...@@ -4779,8 +4778,6 @@ resolve_omp_clauses (gfc_code *code, gfc_omp_clauses *omp_clauses,
resolve_positive_int_expr (omp_clauses->worker_expr, "WORKER"); resolve_positive_int_expr (omp_clauses->worker_expr, "WORKER");
if (omp_clauses->vector_expr) if (omp_clauses->vector_expr)
resolve_positive_int_expr (omp_clauses->vector_expr, "VECTOR"); resolve_positive_int_expr (omp_clauses->vector_expr, "VECTOR");
if (omp_clauses->wait)
if (omp_clauses->wait_list)
for (el = omp_clauses->wait_list; el; el = el->next) for (el = omp_clauses->wait_list; el; el = el->next)
resolve_scalar_int_expr (el->expr, "WAIT"); resolve_scalar_int_expr (el->expr, "WAIT");
if (omp_clauses->collapse && omp_clauses->tile_list) if (omp_clauses->collapse && omp_clauses->tile_list)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment