@@ -698,7 +698,7 @@ llvm.func @simd_simple(%lb : i64, %ub : i64, %step : i64, %arg0: !llvm.ptr) {
698
698
// CHECK-LABEL: @simd_simple_multiple
699
699
llvm.func @simd_simple_multiple (%lb1 : i64 , %ub1 : i64 , %step1 : i64 , %lb2 : i64 , %ub2 : i64 , %step2 : i64 , %arg0: !llvm.ptr , %arg1: !llvm.ptr ) {
700
700
omp.simd {
701
- omp.loop_nest (%iv1 , %iv2 ) : i64 = (%lb1 , %lb2 ) to (%ub1 , %ub2 ) inclusive step (%step1 , %step2 ) {
701
+ omp.loop_nest (%iv1 , %iv2 ) : i64 = (%lb1 , %lb2 ) to (%ub1 , %ub2 ) inclusive step (%step1 , %step2 ) collapse ( 2 ) {
702
702
%3 = llvm.mlir.constant (2.000000e+00 : f32 ) : f32
703
703
// The form of the emitted IR is controlled by OpenMPIRBuilder and
704
704
// tested there. Just check that the right metadata is added and collapsed
@@ -736,7 +736,7 @@ llvm.func @simd_simple_multiple(%lb1 : i64, %ub1 : i64, %step1 : i64, %lb2 : i64
736
736
// CHECK-LABEL: @simd_simple_multiple_simdlen
737
737
llvm.func @simd_simple_multiple_simdlen (%lb1 : i64 , %ub1 : i64 , %step1 : i64 , %lb2 : i64 , %ub2 : i64 , %step2 : i64 , %arg0: !llvm.ptr , %arg1: !llvm.ptr ) {
738
738
omp.simd simdlen (2 ) {
739
- omp.loop_nest (%iv1 , %iv2 ) : i64 = (%lb1 , %lb2 ) to (%ub1 , %ub2 ) step (%step1 , %step2 ) {
739
+ omp.loop_nest (%iv1 , %iv2 ) : i64 = (%lb1 , %lb2 ) to (%ub1 , %ub2 ) step (%step1 , %step2 ) collapse ( 2 ) {
740
740
%3 = llvm.mlir.constant (2.000000e+00 : f32 ) : f32
741
741
// The form of the emitted IR is controlled by OpenMPIRBuilder and
742
742
// tested there. Just check that the right metadata is added.
@@ -760,7 +760,7 @@ llvm.func @simd_simple_multiple_simdlen(%lb1 : i64, %ub1 : i64, %step1 : i64, %l
760
760
// CHECK-LABEL: @simd_simple_multiple_safelen
761
761
llvm.func @simd_simple_multiple_safelen (%lb1 : i64 , %ub1 : i64 , %step1 : i64 , %lb2 : i64 , %ub2 : i64 , %step2 : i64 , %arg0: !llvm.ptr , %arg1: !llvm.ptr ) {
762
762
omp.simd safelen (2 ) {
763
- omp.loop_nest (%iv1 , %iv2 ) : i64 = (%lb1 , %lb2 ) to (%ub1 , %ub2 ) step (%step1 , %step2 ) {
763
+ omp.loop_nest (%iv1 , %iv2 ) : i64 = (%lb1 , %lb2 ) to (%ub1 , %ub2 ) step (%step1 , %step2 ) collapse ( 2 ) {
764
764
%3 = llvm.mlir.constant (2.000000e+00 : f32 ) : f32
765
765
%4 = llvm.getelementptr %arg0 [%iv1 ] : (!llvm.ptr , i64 ) -> !llvm.ptr , f32
766
766
%5 = llvm.getelementptr %arg1 [%iv2 ] : (!llvm.ptr , i64 ) -> !llvm.ptr , f32
@@ -779,7 +779,7 @@ llvm.func @simd_simple_multiple_safelen(%lb1 : i64, %ub1 : i64, %step1 : i64, %l
779
779
// CHECK-LABEL: @simd_simple_multiple_simdlen_safelen
780
780
llvm.func @simd_simple_multiple_simdlen_safelen (%lb1 : i64 , %ub1 : i64 , %step1 : i64 , %lb2 : i64 , %ub2 : i64 , %step2 : i64 , %arg0: !llvm.ptr , %arg1: !llvm.ptr ) {
781
781
omp.simd simdlen (1 ) safelen (2 ) {
782
- omp.loop_nest (%iv1 , %iv2 ) : i64 = (%lb1 , %lb2 ) to (%ub1 , %ub2 ) step (%step1 , %step2 ) {
782
+ omp.loop_nest (%iv1 , %iv2 ) : i64 = (%lb1 , %lb2 ) to (%ub1 , %ub2 ) step (%step1 , %step2 ) collapse ( 2 ) {
783
783
%3 = llvm.mlir.constant (2.000000e+00 : f32 ) : f32
784
784
%4 = llvm.getelementptr %arg0 [%iv1 ] : (!llvm.ptr , i64 ) -> !llvm.ptr , f32
785
785
%5 = llvm.getelementptr %arg1 [%iv2 ] : (!llvm.ptr , i64 ) -> !llvm.ptr , f32
@@ -1179,7 +1179,7 @@ llvm.func @collapse_wsloop(
1179
1179
// CHECK: store i32 %[[TOTAL_SUB_1]], ptr
1180
1180
// CHECK: call void @__kmpc_for_static_init_4u
1181
1181
omp.wsloop {
1182
- omp.loop_nest (%arg0 , %arg1 , %arg2 ) : i32 = (%0 , %1 , %2 ) to (%3 , %4 , %5 ) step (%6 , %7 , %8 ) {
1182
+ omp.loop_nest (%arg0 , %arg1 , %arg2 ) : i32 = (%0 , %1 , %2 ) to (%3 , %4 , %5 ) step (%6 , %7 , %8 ) collapse ( 3 ) {
1183
1183
%31 = llvm.load %20 : !llvm.ptr -> i32
1184
1184
%32 = llvm.add %31 , %arg0 : i32
1185
1185
%33 = llvm.add %32 , %arg1 : i32
@@ -1241,7 +1241,7 @@ llvm.func @collapse_wsloop_dynamic(
1241
1241
// CHECK: store i32 %[[TOTAL]], ptr
1242
1242
// CHECK: call void @__kmpc_dispatch_init_4u
1243
1243
omp.wsloop schedule (dynamic ) {
1244
- omp.loop_nest (%arg0 , %arg1 , %arg2 ) : i32 = (%0 , %1 , %2 ) to (%3 , %4 , %5 ) step (%6 , %7 , %8 ) {
1244
+ omp.loop_nest (%arg0 , %arg1 , %arg2 ) : i32 = (%0 , %1 , %2 ) to (%3 , %4 , %5 ) step (%6 , %7 , %8 ) collapse ( 3 ) {
1245
1245
%31 = llvm.load %20 : !llvm.ptr -> i32
1246
1246
%32 = llvm.add %31 , %arg0 : i32
1247
1247
%33 = llvm.add %32 , %arg1 : i32
0 commit comments