summaryrefslogtreecommitdiffstats
path: root/clang/test/OpenMP/taskloop_reduction_codegen.cpp
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2018-03-09 15:20:30 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2018-03-09 15:20:30 +0000
commit21dab12453d2e9bb222820002890cdd653c59b5f (patch)
treefb3d7fb21aec240ec5344caa122c3d20c271ae71 /clang/test/OpenMP/taskloop_reduction_codegen.cpp
parent14b7e1890916c3941153b373e007fd4ce2fecf85 (diff)
downloadbcm5719-llvm-21dab12453d2e9bb222820002890cdd653c59b5f.tar.gz
bcm5719-llvm-21dab12453d2e9bb222820002890cdd653c59b5f.zip
[OPENMP] Fix the address of the original variable in task reductions.
If initialization of the task reductions requires pointer to original variable, which is stored in the threadprivate storage, we used the address of this pointer instead. llvm-svn: 327136
Diffstat (limited to 'clang/test/OpenMP/taskloop_reduction_codegen.cpp')
-rw-r--r--clang/test/OpenMP/taskloop_reduction_codegen.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/test/OpenMP/taskloop_reduction_codegen.cpp b/clang/test/OpenMP/taskloop_reduction_codegen.cpp
index 2623d932c7f..fe261d4e064 100644
--- a/clang/test/OpenMP/taskloop_reduction_codegen.cpp
+++ b/clang/test/OpenMP/taskloop_reduction_codegen.cpp
@@ -164,7 +164,9 @@ sum = 0.0;
// CHECK: define internal void @[[RED_INIT2]](i8*)
// CHECK: call i8* @__kmpc_threadprivate_cached(
-// CHECK: call i8* @__kmpc_threadprivate_cached(
+// CHECK: [[ORIG_PTR_ADDR:%.+]] = call i8* @__kmpc_threadprivate_cached(
+// CHECK: [[ORIG_PTR_REF:%.+]] = bitcast i8* [[ORIG_PTR_ADDR]] to i8**
+// CHECK: load i8*, i8** [[ORIG_PTR_REF]],
// CHECK: call void @llvm.memcpy.p0i8.p0i8.i64(
// CHECK: ret void
OpenPOWER on IntegriCloud