summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2015-11-23 13:33:42 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2015-11-23 13:33:42 +0000
commit92e82f9cce62ae50e72530563811f0d3bd98e892 (patch)
treec8416687ecd478da0cec200c19a51721843d2e2e /clang/lib/CodeGen
parenta6b867eb0d6a79a378db68cd913b96f400675e24 (diff)
downloadbcm5719-llvm-92e82f9cce62ae50e72530563811f0d3bd98e892.tar.gz
bcm5719-llvm-92e82f9cce62ae50e72530563811f0d3bd98e892.zip
[OPENMP] 'out' dependency for 'task' directives must be the same as 'inout'.
Runtime library requires, that codegen for 'depend' clause for 'out' dependency kind must be the same as codegen for 'depend' clause with 'inout' dependency. llvm-svn: 253866
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r--clang/lib/CodeGen/CGOpenMPRuntime.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/CGOpenMPRuntime.cpp b/clang/lib/CodeGen/CGOpenMPRuntime.cpp
index ea4300c7f00..f9fe8d2ecda 100644
--- a/clang/lib/CodeGen/CGOpenMPRuntime.cpp
+++ b/clang/lib/CodeGen/CGOpenMPRuntime.cpp
@@ -2437,7 +2437,7 @@ void CGOpenMPRuntime::emitTaskCall(
unsigned NumDependencies = Dependences.size();
if (NumDependencies) {
// Dependence kind for RTL.
- enum RTLDependenceKindTy { DepIn = 1, DepOut = 2, DepInOut = 3 };
+ enum RTLDependenceKindTy { DepIn = 0x01, DepInOut = 0x3 };
enum RTLDependInfoFieldsTy { BaseAddr, Len, Flags };
RecordDecl *KmpDependInfoRD;
QualType FlagsTy =
@@ -2496,9 +2496,8 @@ void CGOpenMPRuntime::emitTaskCall(
case OMPC_DEPEND_in:
DepKind = DepIn;
break;
+ // Out and InOut dependencies must use the same code.
case OMPC_DEPEND_out:
- DepKind = DepOut;
- break;
case OMPC_DEPEND_inout:
DepKind = DepInOut;
break;
OpenPOWER on IntegriCloud