diff options
author | Alexey Bataev <a.bataev@hotmail.com> | 2019-05-21 15:11:58 +0000 |
---|---|---|
committer | Alexey Bataev <a.bataev@hotmail.com> | 2019-05-21 15:11:58 +0000 |
commit | 1353fe814c52fd2eb0324cea1099ed79703896ff (patch) | |
tree | 13b6f4738d767d699d11a0e9a6ae68dbf70a27ca /test/OpenMP/taskloop_reduction_codegen.cpp | |
parent | 6b544e2d0d0e55b57c95825ee03a9f7423174ada (diff) | |
download | clang-1353fe814c52fd2eb0324cea1099ed79703896ff.tar.gz |
[OPENMP][NVPTX]Mark more functions as always_inline for better
performance.
Internally generated functions must be marked as always_inlines in most
cases. Patch marks some extra reduction function + outlined parallel
functions as always_inline for better performance, but only if the
optimization is requested.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@361269 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/OpenMP/taskloop_reduction_codegen.cpp')
-rw-r--r-- | test/OpenMP/taskloop_reduction_codegen.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/test/OpenMP/taskloop_reduction_codegen.cpp b/test/OpenMP/taskloop_reduction_codegen.cpp index 0eff06d886..3c6227b173 100644 --- a/test/OpenMP/taskloop_reduction_codegen.cpp +++ b/test/OpenMP/taskloop_reduction_codegen.cpp @@ -167,9 +167,15 @@ sum = 0.0; // 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: call void [[OMP_INIT1:@.+]]( // CHECK: ret void +// CHECK: define internal void [[OMP_COMB1:@.+]](%struct.S* noalias, %struct.S* noalias) +// CHECK: fadd float % + +// CHECK: define internal void [[OMP_INIT1]](%struct.S* noalias, %struct.S* noalias) +// CHECK: call void @llvm.memcpy.p0i8.p0i8.i64( + // CHECK: define internal void @[[RED_FINI2]](i8*) // CHECK: call i8* @__kmpc_threadprivate_cached( // CHECK: call void @ @@ -177,8 +183,7 @@ sum = 0.0; // CHECK: define internal void @[[RED_COMB2]](i8*, i8*) // CHECK: call i8* @__kmpc_threadprivate_cached( -// CHECK: fadd float % -// CHECK: store float %{{.+}}, float* % +// CHECK: call void [[OMP_COMB1]]( // CHECK: ret void // CHECK: define internal void @[[RED_INIT3]](i8*) |