Skip to content

Commit 6335f74

Browse files
authored
[Clang][OpenMP] Switch to __kmpc_parallel_60 with strict parameter (upstream llvm#171082) (#802)
2 parents 0b6f58e + 7845ad5 commit 6335f74

File tree

72 files changed

+730
-725
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+730
-725
lines changed

clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1510,6 +1510,9 @@ void CGOpenMPRuntimeGPU::emitParallelCall(
15101510
else
15111511
NumThreadsVal = Bld.CreateZExtOrTrunc(NumThreadsVal, CGF.Int32Ty);
15121512

1513+
// No strict prescriptiveness for the number of threads.
1514+
llvm::Value *StrictNumThreadsVal = llvm::ConstantInt::get(CGF.Int32Ty, 0);
1515+
15131516
assert(IfCondVal && "Expected a value");
15141517
llvm::Value *RTLoc = emitUpdateLocation(CGF, Loc);
15151518
llvm::Value *Args[] = {
@@ -1522,9 +1525,11 @@ void CGOpenMPRuntimeGPU::emitParallelCall(
15221525
ID,
15231526
Bld.CreateBitOrPointerCast(CapturedVarsAddrs.emitRawPointer(CGF),
15241527
CGF.VoidPtrPtrTy),
1525-
llvm::ConstantInt::get(CGM.SizeTy, CapturedVars.size())};
1528+
llvm::ConstantInt::get(CGM.SizeTy, CapturedVars.size()),
1529+
StrictNumThreadsVal};
1530+
15261531
CGF.EmitRuntimeCall(OMPBuilder.getOrCreateRuntimeFunction(
1527-
CGM.getModule(), OMPRTL___kmpc_parallel_51),
1532+
CGM.getModule(), OMPRTL___kmpc_parallel_60),
15281533
Args);
15291534
};
15301535

clang/test/OpenMP/amdgcn_target_device_vla.cpp

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ int main() {
113113
// CHECK-NEXT: [[I1_ASCAST:%.*]] = addrspacecast ptr addrspace(5) [[I1]] to ptr
114114
// CHECK-NEXT: store ptr [[DYN_PTR]], ptr [[DYN_PTR_ADDR_ASCAST]], align 8
115115
// CHECK-NEXT: store ptr [[SUM]], ptr [[SUM_ADDR_ASCAST]], align 8
116-
// CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[SUM_ADDR_ASCAST]], align 8
116+
// CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[SUM_ADDR_ASCAST]], align 8, !nonnull [[META9:![0-9]+]], !align [[META10:![0-9]+]]
117117
// CHECK-NEXT: [[TMP1:%.*]] = call i32 @__kmpc_target_init(ptr addrspacecast (ptr addrspace(1) @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo1v_l12_kernel_environment to ptr), ptr [[DYN_PTR]])
118118
// CHECK-NEXT: [[EXEC_USER_CODE:%.*]] = icmp eq i32 [[TMP1]], -1
119119
// CHECK-NEXT: br i1 [[EXEC_USER_CODE]], label [[USER_CODE_ENTRY:%.*]], label [[WORKER_EXIT:%.*]]
@@ -145,7 +145,7 @@ int main() {
145145
// CHECK-NEXT: [[TMP12:%.*]] = load i32, ptr [[I_ASCAST]], align 4
146146
// CHECK-NEXT: [[INC:%.*]] = add nsw i32 [[TMP12]], 1
147147
// CHECK-NEXT: store i32 [[INC]], ptr [[I_ASCAST]], align 4
148-
// CHECK-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP13:![0-9]+]]
148+
// CHECK-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP11:![0-9]+]]
149149
// CHECK: worker.exit:
150150
// CHECK-NEXT: ret void
151151
// CHECK: for.end:
@@ -169,7 +169,7 @@ int main() {
169169
// CHECK-NEXT: [[TMP18:%.*]] = load i32, ptr [[I1_ASCAST]], align 4
170170
// CHECK-NEXT: [[INC8:%.*]] = add nsw i32 [[TMP18]], 1
171171
// CHECK-NEXT: store i32 [[INC8]], ptr [[I1_ASCAST]], align 4
172-
// CHECK-NEXT: br label [[FOR_COND2]], !llvm.loop [[LOOP15:![0-9]+]]
172+
// CHECK-NEXT: br label [[FOR_COND2]], !llvm.loop [[LOOP13:![0-9]+]]
173173
// CHECK: for.end9:
174174
// CHECK-NEXT: call void @__kmpc_free_shared(ptr [[A]], i64 [[TMP7]])
175175
// CHECK-NEXT: call void @__kmpc_target_deinit()
@@ -214,7 +214,7 @@ int main() {
214214
// CHECK-NEXT: store i64 [[VLA]], ptr [[VLA_ADDR_ASCAST]], align 8
215215
// CHECK-NEXT: store ptr [[RESULT]], ptr [[RESULT_ADDR_ASCAST]], align 8
216216
// CHECK-NEXT: [[TMP0:%.*]] = load i64, ptr [[VLA_ADDR_ASCAST]], align 8
217-
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8
217+
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
218218
// CHECK-NEXT: call void @__kmpc_specialized_kernel_init()
219219
// CHECK-NEXT: store i32 0, ptr [[I_ASCAST]], align 4
220220
// CHECK-NEXT: [[TMP2:%.*]] = load i32, ptr [[M_ADDR_ASCAST]], align 4
@@ -281,7 +281,7 @@ int main() {
281281
// CHECK-NEXT: [[TMP24:%.*]] = load i32, ptr [[J_ASCAST]], align 4
282282
// CHECK-NEXT: [[INC:%.*]] = add nsw i32 [[TMP24]], 1
283283
// CHECK-NEXT: store i32 [[INC]], ptr [[J_ASCAST]], align 4
284-
// CHECK-NEXT: br label [[FOR_COND4]], !llvm.loop [[LOOP16:![0-9]+]]
284+
// CHECK-NEXT: br label [[FOR_COND4]], !llvm.loop [[LOOP14:![0-9]+]]
285285
// CHECK: for.end:
286286
// CHECK-NEXT: store i32 0, ptr [[J9_ASCAST]], align 4
287287
// CHECK-NEXT: br label [[FOR_COND10:%.*]]
@@ -306,7 +306,7 @@ int main() {
306306
// CHECK-NEXT: [[TMP31:%.*]] = load i32, ptr [[J9_ASCAST]], align 4
307307
// CHECK-NEXT: [[INC19:%.*]] = add nsw i32 [[TMP31]], 1
308308
// CHECK-NEXT: store i32 [[INC19]], ptr [[J9_ASCAST]], align 4
309-
// CHECK-NEXT: br label [[FOR_COND10]], !llvm.loop [[LOOP17:![0-9]+]]
309+
// CHECK-NEXT: br label [[FOR_COND10]], !llvm.loop [[LOOP15:![0-9]+]]
310310
// CHECK: for.end20:
311311
// CHECK-NEXT: [[TMP32:%.*]] = load ptr addrspace(5), ptr [[SAVED_STACK_ASCAST]], align 4
312312
// CHECK-NEXT: call void @llvm.stackrestore.p5(ptr addrspace(5) [[TMP32]])
@@ -319,7 +319,7 @@ int main() {
319319
// CHECK-NEXT: [[TMP36:%.*]] = load i32, ptr [[DOTOMP_IV_ASCAST]], align 4
320320
// CHECK-NEXT: [[TMP37:%.*]] = add i32 [[TMP35]], [[TMP36]]
321321
// CHECK-NEXT: store i32 [[TMP37]], ptr [[DOTOMP_IV_ASCAST]], align 4
322-
// CHECK-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP18:![0-9]+]]
322+
// CHECK-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP16:![0-9]+]]
323323
// CHECK: for.end23:
324324
// CHECK-NEXT: ret void
325325
//
@@ -346,7 +346,7 @@ int main() {
346346
// CHECK-NEXT: store i64 [[VLA]], ptr [[VLA_ADDR_ASCAST]], align 8
347347
// CHECK-NEXT: store ptr [[RESULT]], ptr [[RESULT_ADDR_ASCAST]], align 8
348348
// CHECK-NEXT: [[TMP0:%.*]] = load i64, ptr [[VLA_ADDR_ASCAST]], align 8
349-
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8
349+
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
350350
// CHECK-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_target_init(ptr addrspacecast (ptr addrspace(1) @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo3v_l52_kernel_environment to ptr), ptr [[DYN_PTR]])
351351
// CHECK-NEXT: [[EXEC_USER_CODE:%.*]] = icmp eq i32 [[TMP2]], -1
352352
// CHECK-NEXT: br i1 [[EXEC_USER_CODE]], label [[USER_CODE_ENTRY:%.*]], label [[WORKER_EXIT:%.*]]
@@ -409,7 +409,7 @@ int main() {
409409
// CHECK-NEXT: store i64 [[VLA]], ptr [[VLA_ADDR_ASCAST]], align 8
410410
// CHECK-NEXT: store ptr [[RESULT]], ptr [[RESULT_ADDR_ASCAST]], align 8
411411
// CHECK-NEXT: [[TMP0:%.*]] = load i64, ptr [[VLA_ADDR_ASCAST]], align 8
412-
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8
412+
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
413413
// CHECK-NEXT: [[N:%.*]] = call align 8 ptr @__kmpc_alloc_shared(i64 4)
414414
// CHECK-NEXT: [[TMP2:%.*]] = load i32, ptr [[M_ADDR_ASCAST]], align 4
415415
// CHECK-NEXT: store i32 [[TMP2]], ptr [[DOTCAPTURE_EXPR__ASCAST]], align 4
@@ -480,7 +480,7 @@ int main() {
480480
// CHECK-NEXT: store ptr [[A]], ptr [[TMP27]], align 8
481481
// CHECK-NEXT: [[TMP28:%.*]] = load ptr, ptr [[DOTGLOBAL_TID__ADDR_ASCAST]], align 8
482482
// CHECK-NEXT: [[TMP29:%.*]] = load i32, ptr [[TMP28]], align 4
483-
// CHECK-NEXT: call void @__kmpc_parallel_51(ptr addrspacecast (ptr addrspace(1) @[[GLOB1]] to ptr), i32 [[TMP29]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo3v_l52_omp_outlined_omp_outlined, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo3v_l52_omp_outlined_omp_outlined_wrapper, ptr [[CAPTURED_VARS_ADDRS_ASCAST]], i64 3)
483+
// CHECK-NEXT: call void @__kmpc_parallel_60(ptr addrspacecast (ptr addrspace(1) @[[GLOB1]] to ptr), i32 [[TMP29]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo3v_l52_omp_outlined_omp_outlined, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo3v_l52_omp_outlined_omp_outlined_wrapper, ptr [[CAPTURED_VARS_ADDRS_ASCAST]], i64 3, i32 0)
484484
// CHECK-NEXT: store i32 0, ptr [[J_ASCAST]], align 4
485485
// CHECK-NEXT: br label [[FOR_COND:%.*]]
486486
// CHECK: for.cond:
@@ -504,7 +504,7 @@ int main() {
504504
// CHECK-NEXT: [[TMP36:%.*]] = load i32, ptr [[J_ASCAST]], align 4
505505
// CHECK-NEXT: [[INC:%.*]] = add nsw i32 [[TMP36]], 1
506506
// CHECK-NEXT: store i32 [[INC]], ptr [[J_ASCAST]], align 4
507-
// CHECK-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP19:![0-9]+]]
507+
// CHECK-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP17:![0-9]+]]
508508
// CHECK: for.end:
509509
// CHECK-NEXT: call void @__kmpc_free_shared(ptr [[A]], i64 [[TMP21]])
510510
// CHECK-NEXT: br label [[OMP_BODY_CONTINUE:%.*]]
@@ -565,9 +565,9 @@ int main() {
565565
// CHECK-NEXT: store ptr [[N]], ptr [[N_ADDR_ASCAST]], align 8
566566
// CHECK-NEXT: store i64 [[VLA]], ptr [[VLA_ADDR_ASCAST]], align 8
567567
// CHECK-NEXT: store ptr [[A]], ptr [[A_ADDR_ASCAST]], align 8
568-
// CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[N_ADDR_ASCAST]], align 8
568+
// CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[N_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
569569
// CHECK-NEXT: [[TMP1:%.*]] = load i64, ptr [[VLA_ADDR_ASCAST]], align 8
570-
// CHECK-NEXT: [[TMP2:%.*]] = load ptr, ptr [[A_ADDR_ASCAST]], align 8
570+
// CHECK-NEXT: [[TMP2:%.*]] = load ptr, ptr [[A_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
571571
// CHECK-NEXT: [[TMP3:%.*]] = load i32, ptr [[TMP0]], align 4
572572
// CHECK-NEXT: store i32 [[TMP3]], ptr [[DOTCAPTURE_EXPR__ASCAST]], align 4
573573
// CHECK-NEXT: [[TMP4:%.*]] = load i32, ptr [[DOTCAPTURE_EXPR__ASCAST]], align 4
@@ -708,7 +708,7 @@ int main() {
708708
// CHECK-NEXT: store i64 [[VLA]], ptr [[VLA_ADDR_ASCAST]], align 8
709709
// CHECK-NEXT: store ptr [[RESULT]], ptr [[RESULT_ADDR_ASCAST]], align 8
710710
// CHECK-NEXT: [[TMP0:%.*]] = load i64, ptr [[VLA_ADDR_ASCAST]], align 8
711-
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8
711+
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
712712
// CHECK-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_target_init(ptr addrspacecast (ptr addrspace(1) @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo4v_l76_kernel_environment to ptr), ptr [[DYN_PTR]])
713713
// CHECK-NEXT: [[EXEC_USER_CODE:%.*]] = icmp eq i32 [[TMP2]], -1
714714
// CHECK-NEXT: br i1 [[EXEC_USER_CODE]], label [[USER_CODE_ENTRY:%.*]], label [[WORKER_EXIT:%.*]]
@@ -777,7 +777,7 @@ int main() {
777777
// CHECK-NEXT: store i64 [[VLA]], ptr [[VLA_ADDR_ASCAST]], align 8
778778
// CHECK-NEXT: store ptr [[RESULT]], ptr [[RESULT_ADDR_ASCAST]], align 8
779779
// CHECK-NEXT: [[TMP0:%.*]] = load i64, ptr [[VLA_ADDR_ASCAST]], align 8
780-
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8
780+
// CHECK-NEXT: [[TMP1:%.*]] = load ptr, ptr [[RESULT_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
781781
// CHECK-NEXT: [[TMP2:%.*]] = load i32, ptr [[N_ADDR_ASCAST]], align 4
782782
// CHECK-NEXT: [[N1:%.*]] = call align 8 ptr @__kmpc_alloc_shared(i64 4)
783783
// CHECK-NEXT: store i32 [[TMP2]], ptr [[N1]], align 4
@@ -849,7 +849,7 @@ int main() {
849849
// CHECK-NEXT: store ptr [[A]], ptr [[TMP28]], align 8
850850
// CHECK-NEXT: [[TMP29:%.*]] = load ptr, ptr [[DOTGLOBAL_TID__ADDR_ASCAST]], align 8
851851
// CHECK-NEXT: [[TMP30:%.*]] = load i32, ptr [[TMP29]], align 4
852-
// CHECK-NEXT: call void @__kmpc_parallel_51(ptr addrspacecast (ptr addrspace(1) @[[GLOB1]] to ptr), i32 [[TMP30]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo4v_l76_omp_outlined_omp_outlined, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo4v_l76_omp_outlined_omp_outlined_wrapper, ptr [[CAPTURED_VARS_ADDRS_ASCAST]], i64 3)
852+
// CHECK-NEXT: call void @__kmpc_parallel_60(ptr addrspacecast (ptr addrspace(1) @[[GLOB1]] to ptr), i32 [[TMP30]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo4v_l76_omp_outlined_omp_outlined, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z4foo4v_l76_omp_outlined_omp_outlined_wrapper, ptr [[CAPTURED_VARS_ADDRS_ASCAST]], i64 3, i32 0)
853853
// CHECK-NEXT: store i32 0, ptr [[J_ASCAST]], align 4
854854
// CHECK-NEXT: br label [[FOR_COND:%.*]]
855855
// CHECK: for.cond:
@@ -873,7 +873,7 @@ int main() {
873873
// CHECK-NEXT: [[TMP37:%.*]] = load i32, ptr [[J_ASCAST]], align 4
874874
// CHECK-NEXT: [[INC:%.*]] = add nsw i32 [[TMP37]], 1
875875
// CHECK-NEXT: store i32 [[INC]], ptr [[J_ASCAST]], align 4
876-
// CHECK-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP20:![0-9]+]]
876+
// CHECK-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP18:![0-9]+]]
877877
// CHECK: for.end:
878878
// CHECK-NEXT: call void @__kmpc_free_shared(ptr [[A]], i64 [[TMP22]])
879879
// CHECK-NEXT: br label [[OMP_BODY_CONTINUE:%.*]]
@@ -934,9 +934,9 @@ int main() {
934934
// CHECK-NEXT: store ptr [[N]], ptr [[N_ADDR_ASCAST]], align 8
935935
// CHECK-NEXT: store i64 [[VLA]], ptr [[VLA_ADDR_ASCAST]], align 8
936936
// CHECK-NEXT: store ptr [[A]], ptr [[A_ADDR_ASCAST]], align 8
937-
// CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[N_ADDR_ASCAST]], align 8
937+
// CHECK-NEXT: [[TMP0:%.*]] = load ptr, ptr [[N_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
938938
// CHECK-NEXT: [[TMP1:%.*]] = load i64, ptr [[VLA_ADDR_ASCAST]], align 8
939-
// CHECK-NEXT: [[TMP2:%.*]] = load ptr, ptr [[A_ADDR_ASCAST]], align 8
939+
// CHECK-NEXT: [[TMP2:%.*]] = load ptr, ptr [[A_ADDR_ASCAST]], align 8, !nonnull [[META9]], !align [[META10]]
940940
// CHECK-NEXT: [[TMP3:%.*]] = load i32, ptr [[TMP0]], align 4
941941
// CHECK-NEXT: store i32 [[TMP3]], ptr [[DOTCAPTURE_EXPR__ASCAST]], align 4
942942
// CHECK-NEXT: [[TMP4:%.*]] = load i32, ptr [[DOTCAPTURE_EXPR__ASCAST]], align 4

clang/test/OpenMP/amdgpu_target_with_aligned_attribute.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ void write_to_aligned_array(int *a, int N) {
9292
// CHECK-AMD-NEXT: [[TMP19:%.*]] = load i32, ptr [[DOTOMP_IV_ASCAST]], align 4
9393
// CHECK-AMD-NEXT: [[TMP20:%.*]] = add i32 [[TMP18]], [[TMP19]]
9494
// CHECK-AMD-NEXT: store i32 [[TMP20]], ptr [[DOTOMP_IV_ASCAST]], align 4
95-
// CHECK-AMD-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP7:![0-9]+]]
95+
// CHECK-AMD-NEXT: br label [[FOR_COND]], !llvm.loop [[LOOP6:![0-9]+]]
9696
// CHECK-AMD: for.end:
9797
// CHECK-AMD-NEXT: ret void
9898
//

clang/test/OpenMP/declare_target_codegen_globalization.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ int maini1() {
4040
// CHECK1-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_global_thread_num(ptr @[[GLOB1:[0-9]+]])
4141
// CHECK1-NEXT: [[TMP3:%.*]] = getelementptr inbounds [1 x ptr], ptr [[CAPTURED_VARS_ADDRS]], i64 0, i64 0
4242
// CHECK1-NEXT: store ptr [[TMP0]], ptr [[TMP3]], align 8
43-
// CHECK1-NEXT: call void @__kmpc_parallel_51(ptr @[[GLOB1]], i32 [[TMP2]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z6maini1v_l16_omp_outlined, ptr null, ptr [[CAPTURED_VARS_ADDRS]], i64 1)
43+
// CHECK1-NEXT: call void @__kmpc_parallel_60(ptr @[[GLOB1]], i32 [[TMP2]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}__Z6maini1v_l16_omp_outlined, ptr null, ptr [[CAPTURED_VARS_ADDRS]], i64 1, i32 0)
4444
// CHECK1-NEXT: call void @__kmpc_target_deinit()
4545
// CHECK1-NEXT: ret void
4646
// CHECK1: worker.exit:

clang/test/OpenMP/metadirective_device_arch_codegen.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ int metadirective1() {
4242
// CHECK: entry:
4343
// CHECK: %{{[0-9]}} = call i32 @__kmpc_target_init
4444
// CHECK: user_code.entry:
45-
// CHECK: call void @[[METADIRECTIVE]]_omp_outlined
46-
// CHECK-NOT: call void @__kmpc_parallel_51
45+
// CHECK: call{{.*}} void @[[METADIRECTIVE]]_omp_outlined
46+
// CHECK-NOT: call{{.*}} void @__kmpc_parallel_60
4747
// CHECK: ret void
4848

4949

clang/test/OpenMP/metadirective_device_isa_codegen_amdgcn.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ int amdgcn_device_isa_selected() {
2424

2525
// CHECK: define weak_odr protected amdgpu_kernel void @__omp_offloading_{{.*}}amdgcn_device_isa_selected
2626
// CHECK: user_code.entry:
27-
// CHECK: call void @__kmpc_parallel_51
27+
// CHECK: call void @__kmpc_parallel_60
2828
// CHECK-NOT: call i32 @__kmpc_single
2929
// CHECK: ret void
3030

@@ -47,7 +47,7 @@ int amdgcn_device_isa_not_selected() {
4747
// CHECK: define weak_odr protected amdgpu_kernel void @__omp_offloading_{{.*}}amdgcn_device_isa_not_selected
4848
// CHECK: user_code.entry:
4949
// CHECK: call i32 @__kmpc_single
50-
// CHECK-NOT: call void @__kmpc_parallel_51
50+
// CHECK-NOT: call void @__kmpc_parallel_60
5151
// CHECK: ret void
5252

5353
#endif

clang/test/OpenMP/no_loop_split_codegen.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -705,7 +705,7 @@ int main()
705705
// CHECK-NEXT: store ptr [[TMP4]], ptr [[TMP34]], align 8
706706
// CHECK-NEXT: [[TMP35:%.*]] = load ptr, ptr [[DOTGLOBAL_TID__ADDR_ASCAST]], align 8
707707
// CHECK-NEXT: [[TMP36:%.*]] = load i32, ptr [[TMP35]], align 4
708-
// CHECK-NEXT: call void @__kmpc_parallel_51(ptr addrspacecast (ptr addrspace(1) @[[GLOB1]] to ptr), i32 [[TMP36]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l61_omp_outlined_omp_outlined, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l61_omp_outlined_omp_outlined_wrapper, ptr [[CAPTURED_VARS_ADDRS_ASCAST]], i64 7)
708+
// CHECK-NEXT: call void @__kmpc_parallel_60(ptr addrspacecast (ptr addrspace(1) @[[GLOB1]] to ptr), i32 [[TMP36]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l61_omp_outlined_omp_outlined, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l61_omp_outlined_omp_outlined_wrapper, ptr [[CAPTURED_VARS_ADDRS_ASCAST]], i64 7, i32 0)
709709
// CHECK-NEXT: br label [[OMP_INNER_FOR_INC:%.*]]
710710
// CHECK: omp.inner.for.inc:
711711
// CHECK-NEXT: [[TMP37:%.*]] = load i32, ptr [[DOTOMP_IV_ASCAST]], align 4
@@ -788,7 +788,7 @@ int main()
788788
// CHECK-NEXT: store ptr [[TMP4]], ptr [[TMP68]], align 8
789789
// CHECK-NEXT: [[TMP69:%.*]] = load ptr, ptr [[DOTGLOBAL_TID__ADDR_ASCAST]], align 8
790790
// CHECK-NEXT: [[TMP70:%.*]] = load i32, ptr [[TMP69]], align 4
791-
// CHECK-NEXT: call void @__kmpc_parallel_51(ptr addrspacecast (ptr addrspace(1) @[[GLOB1]] to ptr), i32 [[TMP70]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l61_omp_outlined_omp_outlined.1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l61_omp_outlined_omp_outlined.1_wrapper, ptr [[CAPTURED_VARS_ADDRS34_ASCAST]], i64 7)
791+
// CHECK-NEXT: call void @__kmpc_parallel_60(ptr addrspacecast (ptr addrspace(1) @[[GLOB1]] to ptr), i32 [[TMP70]], i32 1, i32 -1, i32 -1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l61_omp_outlined_omp_outlined.1, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l61_omp_outlined_omp_outlined.1_wrapper, ptr [[CAPTURED_VARS_ADDRS34_ASCAST]], i64 7, i32 0)
792792
// CHECK-NEXT: br label [[OMP_INNER_FOR_INC35:%.*]]
793793
// CHECK: omp.inner.for.inc35:
794794
// CHECK-NEXT: [[TMP71:%.*]] = load i32, ptr [[DOTOMP_IV10_ASCAST]], align 4

0 commit comments

Comments
 (0)