|
423 | 423 | ! CHECK: } combiner {
|
424 | 424 | ! CHECK: ^bb0(%[[ARG0:.*]]: !fir.ref<!fir.array<100x10xi32>>, %[[ARG1:.*]]: !fir.ref<!fir.array<100x10xi32>>):
|
425 | 425 | ! CHECK: %[[LB0:.*]] = arith.constant 0 : index
|
426 |
| -! CHECK: %[[UB0:.*]] = arith.constant 99 : index |
| 426 | +! CHECK: %[[UB0:.*]] = arith.constant 9 : index |
427 | 427 | ! CHECK: %[[STEP0:.*]] = arith.constant 1 : index
|
428 | 428 | ! CHECK: fir.do_loop %[[IV0:.*]] = %[[LB0]] to %[[UB0]] step %[[STEP0]] {
|
429 | 429 | ! CHECK: %[[LB1:.*]] = arith.constant 0 : index
|
430 |
| -! CHECK: %[[UB1:.*]] = arith.constant 9 : index |
| 430 | +! CHECK: %[[UB1:.*]] = arith.constant 99 : index |
431 | 431 | ! CHECK: %[[STEP1:.*]] = arith.constant 1 : index
|
432 | 432 | ! CHECK: fir.do_loop %[[IV1:.*]] = %[[LB1]] to %[[UB1]] step %[[STEP1]] {
|
433 |
| -! CHECK: %[[COORD1:.*]] = fir.coordinate_of %[[ARG0:.*]], %[[IV0]], %[[IV1]] : (!fir.ref<!fir.array<100x10xi32>>, index, index) -> !fir.ref<i32> |
434 |
| -! CHECK: %[[COORD2:.*]] = fir.coordinate_of %[[ARG1:.*]], %[[IV0]], %[[IV1]] : (!fir.ref<!fir.array<100x10xi32>>, index, index) -> !fir.ref<i32> |
| 433 | +! CHECK: %[[COORD1:.*]] = fir.coordinate_of %[[ARG0:.*]], %[[IV1]], %[[IV0]] : (!fir.ref<!fir.array<100x10xi32>>, index, index) -> !fir.ref<i32> |
| 434 | +! CHECK: %[[COORD2:.*]] = fir.coordinate_of %[[ARG1:.*]], %[[IV1]], %[[IV0]] : (!fir.ref<!fir.array<100x10xi32>>, index, index) -> !fir.ref<i32> |
435 | 435 | ! CHECK: %[[LOAD1:.*]] = fir.load %[[COORD1]] : !fir.ref<i32>
|
436 | 436 | ! CHECK: %[[LOAD2:.*]] = fir.load %[[COORD2]] : !fir.ref<i32>
|
437 | 437 | ! CHECK: %[[CMP:.*]] = arith.cmpi sgt, %[[LOAD1]], %[[LOAD2]] : i32
|
|
469 | 469 | ! CHECK: } combiner {
|
470 | 470 | ! CHECK: ^bb0(%[[ARG0:.*]]: !fir.ref<!fir.array<100x10xf32>>, %[[ARG1:.*]]: !fir.ref<!fir.array<100x10xf32>>):
|
471 | 471 | ! CHECK: %[[LB0:.*]] = arith.constant 0 : index
|
472 |
| -! CHECK: %[[UB0:.*]] = arith.constant 99 : index |
| 472 | +! CHECK: %[[UB0:.*]] = arith.constant 9 : index |
473 | 473 | ! CHECK: %[[STEP0:.*]] = arith.constant 1 : index
|
474 | 474 | ! CHECK: fir.do_loop %[[IV0:.*]] = %[[LB0]] to %[[UB0]] step %[[STEP0]] {
|
475 | 475 | ! CHECK: %[[LB1:.*]] = arith.constant 0 : index
|
476 |
| -! CHECK: %[[UB1:.*]] = arith.constant 9 : index |
| 476 | +! CHECK: %[[UB1:.*]] = arith.constant 99 : index |
477 | 477 | ! CHECK: %[[STEP1:.*]] = arith.constant 1 : index
|
478 | 478 | ! CHECK: fir.do_loop %[[IV1:.*]] = %[[LB1]] to %[[UB1]] step %[[STEP1]] {
|
479 |
| -! CHECK: %[[COORD1:.*]] = fir.coordinate_of %[[ARG0]], %[[IV0]], %[[IV1]] : (!fir.ref<!fir.array<100x10xf32>>, index, index) -> !fir.ref<f32> |
480 |
| -! CHECK: %[[COORD2:.*]] = fir.coordinate_of %[[ARG1]], %[[IV0]], %[[IV1]] : (!fir.ref<!fir.array<100x10xf32>>, index, index) -> !fir.ref<f32> |
| 479 | +! CHECK: %[[COORD1:.*]] = fir.coordinate_of %[[ARG0]], %[[IV1]], %[[IV0]] : (!fir.ref<!fir.array<100x10xf32>>, index, index) -> !fir.ref<f32> |
| 480 | +! CHECK: %[[COORD2:.*]] = fir.coordinate_of %[[ARG1]], %[[IV1]], %[[IV0]] : (!fir.ref<!fir.array<100x10xf32>>, index, index) -> !fir.ref<f32> |
481 | 481 | ! CHECK: %[[LOAD1:.*]] = fir.load %[[COORD1]] : !fir.ref<f32>
|
482 | 482 | ! CHECK: %[[LOAD2:.*]] = fir.load %[[COORD2]] : !fir.ref<f32>
|
483 | 483 | ! CHECK: %[[CMP:.*]] = arith.cmpf olt, %[[LOAD1]], %[[LOAD2]] {{.*}} : f32
|
|
650 | 650 | ! CHECK: } combiner {
|
651 | 651 | ! CHECK: ^bb0(%[[ARG0:.*]]: !fir.ref<!fir.array<100x10x2xi32>>, %[[ARG1:.*]]: !fir.ref<!fir.array<100x10x2xi32>>):
|
652 | 652 | ! CHECK: %[[LB0:.*]] = arith.constant 0 : index
|
653 |
| -! CHECK: %[[UB0:.*]] = arith.constant 99 : index |
| 653 | +! CHECK: %[[UB0:.*]] = arith.constant 1 : index |
654 | 654 | ! CHECK: %[[STEP0:.*]] = arith.constant 1 : index
|
655 | 655 | ! CHECK: fir.do_loop %[[IV0:.*]] = %[[LB0]] to %[[UB0]] step %[[STEP0]] {
|
656 | 656 | ! CHECK: %[[LB1:.*]] = arith.constant 0 : index
|
657 | 657 | ! CHECK: %[[UB1:.*]] = arith.constant 9 : index
|
658 | 658 | ! CHECK: %[[STEP1:.*]] = arith.constant 1 : index
|
659 | 659 | ! CHECK: fir.do_loop %[[IV1:.*]] = %[[LB1]] to %[[UB1]] step %[[STEP1]] {
|
660 | 660 | ! CHECK: %[[LB2:.*]] = arith.constant 0 : index
|
661 |
| -! CHECK: %[[UB2:.*]] = arith.constant 1 : index |
| 661 | +! CHECK: %[[UB2:.*]] = arith.constant 99 : index |
662 | 662 | ! CHECK: %[[STEP2:.*]] = arith.constant 1 : index
|
663 | 663 | ! CHECK: fir.do_loop %[[IV2:.*]] = %[[LB2]] to %[[UB2]] step %[[STEP2]] {
|
664 |
| -! CHECK: %[[COORD1:.*]] = fir.coordinate_of %[[ARG0]], %[[IV0]], %[[IV1]], %[[IV2]] : (!fir.ref<!fir.array<100x10x2xi32>>, index, index, index) -> !fir.ref<i32> |
665 |
| -! CHECK: %[[COORD2:.*]] = fir.coordinate_of %[[ARG1]], %[[IV0]], %[[IV1]], %[[IV2]] : (!fir.ref<!fir.array<100x10x2xi32>>, index, index, index) -> !fir.ref<i32> |
| 664 | +! CHECK: %[[COORD1:.*]] = fir.coordinate_of %[[ARG0]], %[[IV2]], %[[IV1]], %[[IV0]] : (!fir.ref<!fir.array<100x10x2xi32>>, index, index, index) -> !fir.ref<i32> |
| 665 | +! CHECK: %[[COORD2:.*]] = fir.coordinate_of %[[ARG1]], %[[IV2]], %[[IV1]], %[[IV0]] : (!fir.ref<!fir.array<100x10x2xi32>>, index, index, index) -> !fir.ref<i32> |
666 | 666 | ! CHECK: %[[LOAD1:.*]] = fir.load %[[COORD1]] : !fir.ref<i32>
|
667 | 667 | ! CHECK: %[[LOAD2:.*]] = fir.load %[[COORD2]] : !fir.ref<i32>
|
668 | 668 | ! CHECK: %[[COMBINED:.*]] = arith.addi %[[LOAD1]], %[[LOAD2]] : i32
|
|
683 | 683 | ! CHECK: } combiner {
|
684 | 684 | ! CHECK: ^bb0(%[[ARG0:.*]]: !fir.ref<!fir.array<100x10xi32>>, %[[ARG1:.*]]: !fir.ref<!fir.array<100x10xi32>>):
|
685 | 685 | ! CHECK: %[[LB0:.*]] = arith.constant 0 : index
|
686 |
| -! CHECK: %[[UB0:.*]] = arith.constant 99 : index |
| 686 | +! CHECK: %[[UB0:.*]] = arith.constant 9 : index |
687 | 687 | ! CHECK: %[[STEP0:.*]] = arith.constant 1 : index
|
688 | 688 | ! CHECK: fir.do_loop %[[IV0:.*]] = %[[LB0]] to %[[UB0]] step %[[STEP0]] {
|
689 | 689 | ! CHECK: %[[LB1:.*]] = arith.constant 0 : index
|
690 |
| -! CHECK: %[[UB1:.*]] = arith.constant 9 : index |
| 690 | +! CHECK: %[[UB1:.*]] = arith.constant 99 : index |
691 | 691 | ! CHECK: %[[STEP1:.*]] = arith.constant 1 : index
|
692 | 692 | ! CHECK: fir.do_loop %[[IV1:.*]] = %[[LB1]] to %[[UB1]] step %[[STEP1]] {
|
693 |
| -! CHECK: %[[COORD1:.*]] = fir.coordinate_of %[[ARG0]], %[[IV0]], %[[IV1]] : (!fir.ref<!fir.array<100x10xi32>>, index, index) -> !fir.ref<i32> |
694 |
| -! CHECK: %[[COORD2:.*]] = fir.coordinate_of %[[ARG1]], %[[IV0]], %[[IV1]] : (!fir.ref<!fir.array<100x10xi32>>, index, index) -> !fir.ref<i32> |
| 693 | +! CHECK: %[[COORD1:.*]] = fir.coordinate_of %[[ARG0]], %[[IV1]], %[[IV0]] : (!fir.ref<!fir.array<100x10xi32>>, index, index) -> !fir.ref<i32> |
| 694 | +! CHECK: %[[COORD2:.*]] = fir.coordinate_of %[[ARG1]], %[[IV1]], %[[IV0]] : (!fir.ref<!fir.array<100x10xi32>>, index, index) -> !fir.ref<i32> |
695 | 695 | ! CHECK: %[[LOAD1]] = fir.load %[[COORD1]] : !fir.ref<i32>
|
696 | 696 | ! CHECK: %[[LOAD2]] = fir.load %[[COORD2]] : !fir.ref<i32>
|
697 | 697 | ! CHECK: %[[COMBINED:.*]] = arith.addi %[[LOAD1]], %[[LOAD2]] : i32
|
|
0 commit comments