diff options
Diffstat (limited to 'clang/test')
-rw-r--r-- | clang/test/OpenMP/critical_codegen.cpp | 4 | ||||
-rw-r--r-- | clang/test/OpenMP/parallel_copyin_codegen.cpp | 16 | ||||
-rw-r--r-- | clang/test/OpenMP/single_codegen.cpp | 10 | ||||
-rw-r--r-- | clang/test/OpenMP/taskgroup_codegen.cpp | 1 |
4 files changed, 19 insertions, 12 deletions
diff --git a/clang/test/OpenMP/critical_codegen.cpp b/clang/test/OpenMP/critical_codegen.cpp index e44e2202e9a..aad60cfd4f7 100644 --- a/clang/test/OpenMP/critical_codegen.cpp +++ b/clang/test/OpenMP/critical_codegen.cpp @@ -39,7 +39,11 @@ int main() { #pragma omp critical(the_name1) hint(23) foo(); // CHECK: call {{.*}}void @__kmpc_critical([[IDENT_T_TY]]* [[DEFAULT_LOC]], i32 [[GTID]], [8 x i32]* [[THE_NAME_LOCK]]) +// CHECK: br label // CHECK-NOT: call {{.*}}void @__kmpc_end_critical( +// CHECK: br label +// CHECK-NOT: call {{.*}}void @__kmpc_end_critical( +// CHECK: br label if (a) #pragma omp critical(the_name) while (1) diff --git a/clang/test/OpenMP/parallel_copyin_codegen.cpp b/clang/test/OpenMP/parallel_copyin_codegen.cpp index ff76cfe4dd6..49e7b3fd618 100644 --- a/clang/test/OpenMP/parallel_copyin_codegen.cpp +++ b/clang/test/OpenMP/parallel_copyin_codegen.cpp @@ -87,10 +87,6 @@ int main() { // TLS-LAMBDA: [[G_CPY_VAL:%.+]] = call{{( cxx_fast_tlscc)?}} i{{[0-9]+}}* [[G_CTOR:@.+]]() // TLS-LAMBDA: call {{.*}}void {{.+}} @__kmpc_fork_call({{.+}}, i32 1, {{.+}}* [[OMP_REGION:@.+]] to {{.+}}, i32* [[G_CPY_VAL]]) - // TLS-LAMBDA: define {{.*}}i{{[0-9]+}}* [[G_CTOR]]() - // TLS-LAMBDA: ret i{{[0-9]+}}* [[G]] - // TLS-LAMBDA: } - #pragma omp parallel copyin(g) { // LAMBDA: define{{.*}} internal{{.*}} void [[OMP_REGION]](i32* noalias %{{.+}}, i32* noalias %{{.+}}) @@ -122,6 +118,11 @@ int main() { g = 1; // LAMBDA: call{{.*}} void [[INNER_LAMBDA:@.+]](%{{.+}}* // TLS-LAMBDA: call{{.*}} void [[INNER_LAMBDA:@.+]](%{{.+}}* + + // TLS-LAMBDA: define {{.*}}i{{[0-9]+}}* [[G_CTOR]]() + // TLS-LAMBDA: ret i{{[0-9]+}}* [[G]] + // TLS-LAMBDA: } + [&]() { // LAMBDA: define {{.+}} void [[INNER_LAMBDA]](%{{.+}}* [[ARG_PTR:%.+]]) // LAMBDA: store %{{.+}}* [[ARG_PTR]], %{{.+}}** [[ARG_PTR_REF:%.+]], @@ -149,9 +150,6 @@ int main() { // TLS-BLOCKS: [[G_CPY_VAL:%.+]] = call{{( cxx_fast_tlscc)?}} i{{[0-9]+}}* [[G_CTOR:@.+]]() // TLS-BLOCKS: call {{.*}}void {{.+}} @__kmpc_fork_call({{.+}}, i32 1, {{.+}}* [[OMP_REGION:@.+]] to {{.+}}, i32* [[G_CPY_VAL]]) - // TLS-BLOCKS: define {{.*}}i{{[0-9]+}}* [[G_CTOR]]() - // TLS-BLOCKS: ret i{{[0-9]+}}* [[G]] - // TLS-BLOCKS: } #pragma omp parallel copyin(g) { // BLOCKS: define{{.*}} internal{{.*}} void [[OMP_REGION]](i32* noalias %{{.+}}, i32* noalias %{{.+}}) @@ -189,6 +187,10 @@ int main() { // TLS-BLOCKS: store volatile i{{[0-9]+}} 1, i{{[0-9]+}}* [[G_CAPTURE_DST]] // TLS-BLOCKS-NOT: [[G]]{{[[^:word:]]}} // TLS-BLOCKS: call {{.*}}void {{%.+}}(i8 + + // TLS-BLOCKS: define {{.*}}i{{[0-9]+}}* [[G_CTOR]]() + // TLS-BLOCKS: ret i{{[0-9]+}}* [[G]] + // TLS-BLOCKS: } ^{ // BLOCKS: define {{.+}} void {{@.+}}(i8* // TLS-BLOCKS: define {{.+}} void {{@.+}}(i8* diff --git a/clang/test/OpenMP/single_codegen.cpp b/clang/test/OpenMP/single_codegen.cpp index 58c5e82c16a..ca1f80245d9 100644 --- a/clang/test/OpenMP/single_codegen.cpp +++ b/clang/test/OpenMP/single_codegen.cpp @@ -111,8 +111,8 @@ int main() { // CHECK-NEXT: invoke void [[FOO]]() // CHECK: to label {{%?}}[[CONT:.+]] unwind // CHECK: [[CONT]] -// CHECK: store i32 1, i32* [[DID_IT]] // CHECK: call void @__kmpc_end_single([[IDENT_T_TY]]* [[DEFAULT_LOC]], i32 [[GTID]]) +// CHECK: store i32 1, i32* [[DID_IT]] // CHECK-NEXT: br label {{%?}}[[EXIT]] // CHECK: [[EXIT]] // CHECK: [[A_PTR_REF:%.+]] = getelementptr inbounds [5 x i8*], [5 x i8*]* [[COPY_LIST]], i{{[0-9]+}} 0, i{{[0-9]+}} 0 @@ -255,8 +255,8 @@ void array_func(int n, int a[n], St s[2]) { // CHECK-LABEL: invoke void @_ZZN2SSC1ERiENKUlvE_clEv( // CHECK-SAME: [[CAP_TY]]* [[CAP]]) -// CHECK: store i32 1, i32* [[DID_IT]], // CHECK: call void @__kmpc_end_single([[IDENT_T_TY]]* @{{.+}}, i32 %{{.+}}) +// CHECK: store i32 1, i32* [[DID_IT]], // CHECK: br label // CHECK: call void @__kmpc_end_single(%{{.+}}* @{{.+}}, i32 %{{.+}}) @@ -334,8 +334,8 @@ void array_func(int n, int a[n], St s[2]) { // CHECK-NEXT: load i32, i32* % // CHECK-NEXT: sdiv i32 %{{.+}}, 1 // CHECK-NEXT: store i32 % -// CHECK-NEXT: store i32 1, i32* [[DID_IT]], // CHECK-NEXT: call void @__kmpc_end_single([[IDENT_T_TY]]* @{{.+}}, i32 %{{.+}}) +// CHECK-NEXT: store i32 1, i32* [[DID_IT]], // CHECK-NEXT: br label // CHECK: getelementptr inbounds [3 x i8*], [3 x i8*]* [[LIST:%.+]], i64 0, i64 0 @@ -376,8 +376,8 @@ void array_func(int n, int a[n], St s[2]) { // CHECK-NEXT: store double* % // CHECK-LABEL: invoke void @_ZZN3SSTIdEC1EvENKUlvE_clEv( -// CHECK: store i32 1, i32* [[DID_IT]], -// CHECK-NEXT: call void @__kmpc_end_single([[IDENT_T_TY]]* @{{.+}}, i32 %{{.+}}) +// CHECK: call void @__kmpc_end_single([[IDENT_T_TY]]* @{{.+}}, i32 %{{.+}}) +// CHECK-NEXT: store i32 1, i32* [[DID_IT]], // CHECK-NEXT: br label // CHECK: call void @__kmpc_end_single([[IDENT_T_TY]]* @{{.+}}, i32 %{{.+}}) diff --git a/clang/test/OpenMP/taskgroup_codegen.cpp b/clang/test/OpenMP/taskgroup_codegen.cpp index d1bc2aafc7b..0f6e81b3ba0 100644 --- a/clang/test/OpenMP/taskgroup_codegen.cpp +++ b/clang/test/OpenMP/taskgroup_codegen.cpp @@ -32,6 +32,7 @@ int main() { foo(); // CHECK-NOT: call {{.*}}void @__kmpc_taskgroup // CHECK-NOT: call {{.*}}void @__kmpc_end_taskgroup +// CHECK: ret return a; } |