-
Notifications
You must be signed in to change notification settings - Fork 14.3k
[Flang][OpenMP] Error gracefully for dependence-type with depobj #116621
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Flang][OpenMP] Error gracefully for dependence-type with depobj #116621
Conversation
@llvm/pr-subscribers-flang-openmp @llvm/pr-subscribers-flang-fir-hlfir Author: Kiran Chandramohan (kiranchandramohan) ChangesIt also modifies the error message to specify it is the dependence-type that is not supported. Resolves the crash in #115647. A fix can come in later as part of future OpenMP version support. Full diff: https://github.com/llvm/llvm-project/pull/116621.diff 4 Files Affected:
diff --git a/flang/lib/Lower/OpenMP/ClauseProcessor.cpp b/flang/lib/Lower/OpenMP/ClauseProcessor.cpp
index dd0068deb94265..993acd81f55690 100644
--- a/flang/lib/Lower/OpenMP/ClauseProcessor.cpp
+++ b/flang/lib/Lower/OpenMP/ClauseProcessor.cpp
@@ -139,9 +139,9 @@ genDependKindAttr(lower::AbstractConverter &converter,
break;
case omp::clause::DependenceType::Mutexinoutset:
case omp::clause::DependenceType::Inoutset:
- TODO(currentLocation, "INOUTSET and MUTEXINOUTSET are not supported yet");
- break;
case omp::clause::DependenceType::Depobj:
+ TODO(currentLocation, "INOUTSET, MUTEXINOUTSET and DEPOBJ dependence-types");
+ break;
case omp::clause::DependenceType::Sink:
case omp::clause::DependenceType::Source:
llvm_unreachable("unhandled parser task dependence type");
diff --git a/flang/test/Lower/OpenMP/Todo/depend-clause-depobj.f90 b/flang/test/Lower/OpenMP/Todo/depend-clause-depobj.f90
new file mode 100644
index 00000000000000..3bc730f849192b
--- /dev/null
+++ b/flang/test/Lower/OpenMP/Todo/depend-clause-depobj.f90
@@ -0,0 +1,10 @@
+!RUN: %not_todo_cmd bbc -emit-hlfir -fopenmp -fopenmp-version=52 -o - %s 2>&1 | FileCheck %s
+!RUN: %not_todo_cmd %flang_fc1 -emit-hlfir -fopenmp -fopenmp-version=52 -o - %s 2>&1 | FileCheck %s
+
+!CHECK: not yet implemented: INOUTSET, MUTEXINOUTSET and DEPOBJ dependence-types
+
+subroutine f00(x)
+ integer :: x
+ !$omp task depend(depobj: x)
+ !$omp end task
+end
diff --git a/flang/test/Lower/OpenMP/Todo/depend-clause-inoutset.f90 b/flang/test/Lower/OpenMP/Todo/depend-clause-inoutset.f90
index 017df006308331..160893fccdc5f2 100644
--- a/flang/test/Lower/OpenMP/Todo/depend-clause-inoutset.f90
+++ b/flang/test/Lower/OpenMP/Todo/depend-clause-inoutset.f90
@@ -1,7 +1,7 @@
!RUN: %not_todo_cmd bbc -emit-hlfir -fopenmp -fopenmp-version=52 -o - %s 2>&1 | FileCheck %s
!RUN: %not_todo_cmd %flang_fc1 -emit-hlfir -fopenmp -fopenmp-version=52 -o - %s 2>&1 | FileCheck %s
-!CHECK: not yet implemented: INOUTSET and MUTEXINOUTSET are not supported yet
+!CHECK: not yet implemented: INOUTSET, MUTEXINOUTSET and DEPOBJ dependence-types
subroutine f00(x)
integer :: x
!$omp task depend(inoutset: x)
diff --git a/flang/test/Lower/OpenMP/Todo/depend-clause-mutexinoutset.f90 b/flang/test/Lower/OpenMP/Todo/depend-clause-mutexinoutset.f90
index 2f6ff77b20a88c..17cc3894c548f1 100644
--- a/flang/test/Lower/OpenMP/Todo/depend-clause-mutexinoutset.f90
+++ b/flang/test/Lower/OpenMP/Todo/depend-clause-mutexinoutset.f90
@@ -1,7 +1,7 @@
!RUN: %not_todo_cmd bbc -emit-hlfir -fopenmp -fopenmp-version=52 -o - %s 2>&1 | FileCheck %s
!RUN: %not_todo_cmd %flang_fc1 -emit-hlfir -fopenmp -fopenmp-version=52 -o - %s 2>&1 | FileCheck %s
-!CHECK: not yet implemented: INOUTSET and MUTEXINOUTSET are not supported yet
+!CHECK: not yet implemented: INOUTSET, MUTEXINOUTSET and DEPOBJ dependence-types
subroutine f00(x)
integer :: x
!$omp task depend(mutexinoutset: x)
|
✅ With the latest revision this PR passed the C/C++ code formatter. |
Also modifies the error message to specify it is the dependence-type that is not supported.
aa4ceed
to
d7d3c88
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the fix!
It also modifies the error message to specify it is the dependence-type that is not supported.
Resolves the crash in #115647. A fix can come in later as part of future OpenMP version support.