[all-commits] [llvm/llvm-project] bdfe5d: [flang][openacc] Apply mutually exclusive clauses ...

Valentin Clement (バレンタイン クレメン) via All-commits all-commits at lists.llvm.org
Thu Jan 11 13:11:05 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bdfe5d69dee7baa0a54cddca8a99e0fdaeded4a2
      https://github.com/llvm/llvm-project/commit/bdfe5d69dee7baa0a54cddca8a99e0fdaeded4a2
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-01-11 (Thu, 11 Jan 2024)

  Changed paths:
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-directive-structure.h
    M flang/test/Semantics/OpenACC/acc-routine.f90

  Log Message:
  -----------
  [flang][openacc] Apply mutually exclusive clauses restriction to routine (#77802)

this patch enforce or fix the enforcement of two restrictions from
section 2.15.1:

> Only the gang, worker, vector, seq and bind clauses may follow a
device_type clause.

`seq` was not allowed after `device_type` with the current
implementation.

> Exactly one of the gang, worker, vector, or seq clauses must appear.

This was not properly checked. This patch check correctly for mutually
exclusion as described in section 2.4. Mutually exclusive clauses may
appear on the same directive if they apply for different device_type.




More information about the All-commits mailing list