[PATCH] D105874: [flang][OpenMP] Fix semantic check of test case in taskloop simd construct

Arnamoy B via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 14 07:33:35 PDT 2021


This revision was automatically updated to reflect the committed changes.
Closed by commit rG67002b5f20c2: [flang][OpenMP] Fix semantic check of test case in taskloop simd construct (authored by peixin, committed by arnamoy10).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D105874/new/

https://reviews.llvm.org/D105874

Files:
  flang/lib/Semantics/check-omp-structure.cpp
  flang/test/Semantics/omp-clause-validity01.f90
  flang/test/Semantics/omp-taskloop-simd01.f90


Index: flang/test/Semantics/omp-taskloop-simd01.f90
===================================================================
--- flang/test/Semantics/omp-taskloop-simd01.f90
+++ flang/test/Semantics/omp-taskloop-simd01.f90
@@ -1,18 +1,15 @@
 ! RUN: %S/test_errors.sh %s %t %flang -fopenmp
-! XFAIL: *
+! REQUIRES: shell
 
-! OpenMP Version 4.5
-! 2.9.3 taskloop simd Construct
-! No reduction clause may be specified for !$omp taskloop simd.
+! OpenMP Version 5.0
+! 2.10.3 taskloop simd Construct
 
 program omp_taskloop_simd
   integer i , j , k
 
-  !ERROR: Unexpected clause specified for !$OMP taskloop simd
   !$omp taskloop simd reduction(+:k)
   do i=1,10000
     do j=1,i
-      call loop_body(i, j)
       k = k + 1
     end do
   end do
Index: flang/test/Semantics/omp-clause-validity01.f90
===================================================================
--- flang/test/Semantics/omp-clause-validity01.f90
+++ flang/test/Semantics/omp-clause-validity01.f90
@@ -7,8 +7,6 @@
 !    2.7.1 Loop construct
 !    ...
 
-! TODO: all the internal errors
-
   integer :: b = 128
   integer :: z, c = 32
   integer, parameter :: num = 16
@@ -87,7 +85,7 @@
   do i = 1, N
      z = 2
   enddo
-   !$omp end target data
+  !$omp end target data
 
   !ERROR: SCHEDULE clause is not allowed on the PARALLEL directive
   !$omp parallel schedule(static)
@@ -177,7 +175,7 @@
       exit outofparallel
     end do inner
   end do outer
-  !$end omp do
+  !$omp end do
   !$omp end parallel
   end do outofparallel
 
Index: flang/lib/Semantics/check-omp-structure.cpp
===================================================================
--- flang/lib/Semantics/check-omp-structure.cpp
+++ flang/lib/Semantics/check-omp-structure.cpp
@@ -931,7 +931,7 @@
 // 3. Checks on clauses which are not in 'struct OmpClause' from parse-tree.h.
 
 void OmpStructureChecker::Leave(const parser::OmpClauseList &) {
-  // 2.7 Loop Construct Restriction
+  // 2.7.1 Loop Construct Restriction
   if (llvm::omp::doSet.test(GetContext().directive)) {
     if (auto *clause{FindClause(llvm::omp::Clause::OMPC_schedule)}) {
       // only one schedule clause is allowed


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D105874.358597.patch
Type: text/x-patch
Size: 2139 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210714/2ba041f0/attachment.bin>


More information about the llvm-commits mailing list