@@ -447,7 +447,6 @@ void test() {
447
447
// CHECK1-NEXT: [[DOTADDR:%.*]] = alloca ptr, align 8
448
448
// CHECK1-NEXT: [[DOTADDR1:%.*]] = alloca i32, align 4
449
449
// CHECK1-NEXT: [[DOTCNT_ADDR:%.*]] = alloca i32, align 4
450
- // CHECK1-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_global_thread_num(ptr @[[GLOB1]])
451
450
// CHECK1-NEXT: store ptr [[TMP0]], ptr [[DOTADDR]], align 8
452
451
// CHECK1-NEXT: store i32 [[TMP1]], ptr [[DOTADDR1]], align 4
453
452
// CHECK1-NEXT: [[TMP3:%.*]] = call i32 @__kmpc_get_hardware_thread_id_in_block()
@@ -463,6 +462,7 @@ void test() {
463
462
// CHECK1-NEXT: [[TMP8:%.*]] = icmp ult i32 [[TMP7]], 2
464
463
// CHECK1-NEXT: br i1 [[TMP8]], label [[BODY:%.*]], label [[EXIT:%.*]]
465
464
// CHECK1: body:
465
+ // CHECK1-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_global_thread_num(ptr @[[GLOB1]])
466
466
// CHECK1-NEXT: call void @__kmpc_barrier(ptr @[[GLOB4:[0-9]+]], i32 [[TMP2]])
467
467
// CHECK1-NEXT: [[WARP_MASTER:%.*]] = icmp eq i32 [[NVPTX_LANE_ID]], 0
468
468
// CHECK1-NEXT: br i1 [[WARP_MASTER]], label [[THEN:%.*]], label [[ELSE:%.*]]
@@ -477,21 +477,22 @@ void test() {
477
477
// CHECK1: else:
478
478
// CHECK1-NEXT: br label [[IFCONT]]
479
479
// CHECK1: ifcont:
480
+ // CHECK1-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_global_thread_num(ptr @[[GLOB1]])
480
481
// CHECK1-NEXT: call void @__kmpc_barrier(ptr @[[GLOB4]], i32 [[TMP2]])
481
482
// CHECK1-NEXT: [[TMP14:%.*]] = load i32, ptr [[DOTADDR1]], align 4
482
483
// CHECK1-NEXT: [[IS_ACTIVE_THREAD:%.*]] = icmp ult i32 [[TMP3]], [[TMP14]]
483
484
// CHECK1-NEXT: br i1 [[IS_ACTIVE_THREAD]], label [[THEN2:%.*]], label [[ELSE3:%.*]]
484
- // CHECK1: then2 :
485
+ // CHECK1: then3 :
485
486
// CHECK1-NEXT: [[TMP15:%.*]] = getelementptr inbounds [32 x i32], ptr addrspace(3) @__openmp_nvptx_data_transfer_temporary_storage, i64 0, i32 [[TMP3]]
486
487
// CHECK1-NEXT: [[TMP16:%.*]] = getelementptr inbounds [1 x ptr], ptr [[TMP6]], i64 0, i64 0
487
488
// CHECK1-NEXT: [[TMP17:%.*]] = load ptr, ptr [[TMP16]], align 8
488
489
// CHECK1-NEXT: [[TMP18:%.*]] = getelementptr i32, ptr [[TMP17]], i32 [[TMP7]]
489
490
// CHECK1-NEXT: [[TMP19:%.*]] = load volatile i32, ptr addrspace(3) [[TMP15]], align 4
490
491
// CHECK1-NEXT: store i32 [[TMP19]], ptr [[TMP18]], align 4
491
492
// CHECK1-NEXT: br label [[IFCONT4:%.*]]
492
- // CHECK1: else3 :
493
+ // CHECK1: else4 :
493
494
// CHECK1-NEXT: br label [[IFCONT4]]
494
- // CHECK1: ifcont4 :
495
+ // CHECK1: ifcont5 :
495
496
// CHECK1-NEXT: [[TMP20:%.*]] = add nsw i32 [[TMP7]], 1
496
497
// CHECK1-NEXT: store i32 [[TMP20]], ptr [[DOTCNT_ADDR]], align 4
497
498
// CHECK1-NEXT: br label [[PRECOND]]
@@ -951,7 +952,6 @@ void test() {
951
952
// CHECK1-NEXT: [[DOTADDR:%.*]] = alloca ptr, align 8
952
953
// CHECK1-NEXT: [[DOTADDR1:%.*]] = alloca i32, align 4
953
954
// CHECK1-NEXT: [[DOTCNT_ADDR:%.*]] = alloca i32, align 4
954
- // CHECK1-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_global_thread_num(ptr @[[GLOB1]])
955
955
// CHECK1-NEXT: store ptr [[TMP0]], ptr [[DOTADDR]], align 8
956
956
// CHECK1-NEXT: store i32 [[TMP1]], ptr [[DOTADDR1]], align 4
957
957
// CHECK1-NEXT: [[TMP3:%.*]] = call i32 @__kmpc_get_hardware_thread_id_in_block()
@@ -967,6 +967,7 @@ void test() {
967
967
// CHECK1-NEXT: [[TMP8:%.*]] = icmp ult i32 [[TMP7]], 4
968
968
// CHECK1-NEXT: br i1 [[TMP8]], label [[BODY:%.*]], label [[EXIT:%.*]]
969
969
// CHECK1: body:
970
+ // CHECK1-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_global_thread_num(ptr @[[GLOB1]])
970
971
// CHECK1-NEXT: call void @__kmpc_barrier(ptr @[[GLOB4]], i32 [[TMP2]])
971
972
// CHECK1-NEXT: [[WARP_MASTER:%.*]] = icmp eq i32 [[NVPTX_LANE_ID]], 0
972
973
// CHECK1-NEXT: br i1 [[WARP_MASTER]], label [[THEN:%.*]], label [[ELSE:%.*]]
@@ -981,21 +982,22 @@ void test() {
981
982
// CHECK1: else:
982
983
// CHECK1-NEXT: br label [[IFCONT]]
983
984
// CHECK1: ifcont:
985
+ // CHECK1-NEXT: [[TMP2:%.*]] = call i32 @__kmpc_global_thread_num(ptr @[[GLOB1]])
984
986
// CHECK1-NEXT: call void @__kmpc_barrier(ptr @[[GLOB4]], i32 [[TMP2]])
985
987
// CHECK1-NEXT: [[TMP14:%.*]] = load i32, ptr [[DOTADDR1]], align 4
986
988
// CHECK1-NEXT: [[IS_ACTIVE_THREAD:%.*]] = icmp ult i32 [[TMP3]], [[TMP14]]
987
989
// CHECK1-NEXT: br i1 [[IS_ACTIVE_THREAD]], label [[THEN2:%.*]], label [[ELSE3:%.*]]
988
- // CHECK1: then2 :
990
+ // CHECK1: then3 :
989
991
// CHECK1-NEXT: [[TMP15:%.*]] = getelementptr inbounds [32 x i32], ptr addrspace(3) @__openmp_nvptx_data_transfer_temporary_storage, i64 0, i32 [[TMP3]]
990
992
// CHECK1-NEXT: [[TMP16:%.*]] = getelementptr inbounds [1 x ptr], ptr [[TMP6]], i64 0, i64 0
991
993
// CHECK1-NEXT: [[TMP17:%.*]] = load ptr, ptr [[TMP16]], align 8
992
994
// CHECK1-NEXT: [[TMP18:%.*]] = getelementptr i32, ptr [[TMP17]], i32 [[TMP7]]
993
995
// CHECK1-NEXT: [[TMP19:%.*]] = load volatile i32, ptr addrspace(3) [[TMP15]], align 4
994
996
// CHECK1-NEXT: store i32 [[TMP19]], ptr [[TMP18]], align 4
995
997
// CHECK1-NEXT: br label [[IFCONT4:%.*]]
996
- // CHECK1: else3 :
998
+ // CHECK1: else4 :
997
999
// CHECK1-NEXT: br label [[IFCONT4]]
998
- // CHECK1: ifcont4 :
1000
+ // CHECK1: ifcont5 :
999
1001
// CHECK1-NEXT: [[TMP20:%.*]] = add nsw i32 [[TMP7]], 1
1000
1002
// CHECK1-NEXT: store i32 [[TMP20]], ptr [[DOTCNT_ADDR]], align 4
1001
1003
// CHECK1-NEXT: br label [[PRECOND]]
0 commit comments