/llvm-project/flang/test/HLFIR/ |
H A D | all.fir | 6 func.func @all0(%arg0: !hlfir.expr<2x!fir.logical<4>>) { 7 %all = hlfir.all %arg0 : (!hlfir.expr<2x!fir.logical<4>>) -> !fir.logical<4> 10 // CHECK: func.func @all0(%[[ARRAY:.*]]: !hlfir.expr<2x!fir.logical<4>>) { 11 …CK-NEXT: %[[ALL:.*]] = hlfir.all %[[ARRAY]] : (!hlfir.expr<2x!fir.logical<4>>) -> !fir.logical<4> 16 func.func @all1(%arg0: !hlfir.expr<?x!fir.logical<4>>) { 17 %all = hlfir.all %arg0 : (!hlfir.expr<?x!fir.logical<4>>) -> !fir.logical<4> 20 // CHECK: func.func @all1(%[[ARRAY:.*]]: !hlfir.expr<?x!fir.logical<4>>) { 21 …CK-NEXT: %[[ALL:.*]] = hlfir.all %[[ARRAY]] : (!hlfir.expr<?x!fir.logical<4>>) -> !fir.logical<4> 26 func.func @all2(%arg0: !fir.box<!fir.array<2x!fir.logical<4>>>) { 27 %all = hlfir.all %arg0 : (!fir.box<!fir.array<2x!fir.logical<4>>>) -> !fir.logical<4> [all …]
|
H A D | any.fir | 6 func.func @any0(%arg0: !hlfir.expr<2x!fir.logical<4>>) { 7 %any = hlfir.any %arg0 : (!hlfir.expr<2x!fir.logical<4>>) -> !fir.logical<4> 10 // CHECK: func.func @any0(%[[ARRAY:.*]]: !hlfir.expr<2x!fir.logical<4>>) { 11 …CK-NEXT: %[[ANY:.*]] = hlfir.any %[[ARRAY]] : (!hlfir.expr<2x!fir.logical<4>>) -> !fir.logical<4> 16 func.func @any1(%arg0: !hlfir.expr<?x!fir.logical<4>>) { 17 %any = hlfir.any %arg0 : (!hlfir.expr<?x!fir.logical<4>>) -> !fir.logical<4> 20 // CHECK: func.func @any1(%[[ARRAY:.*]]: !hlfir.expr<?x!fir.logical<4>>) { 21 …CK-NEXT: %[[ANY:.*]] = hlfir.any %[[ARRAY]] : (!hlfir.expr<?x!fir.logical<4>>) -> !fir.logical<4> 26 func.func @any2(%arg0: !fir.box<!fir.array<2x!fir.logical<4>>>) { 27 %any = hlfir.any %arg0 : (!fir.box<!fir.array<2x!fir.logical<4>>>) -> !fir.logical<4> [all …]
|
H A D | product.fir | 7 %mask = fir.alloca !fir.logical<4> 10 %true_logical = fir.convert %true : (i1) -> !fir.logical<4> 11 fir.store %true_logical to %mask : !fir.ref<!fir.logical<4>> 12 %mask_box = fir.embox %mask : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<4>> 13 …duct %arg0 dim %c_1 mask %mask_box : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 17 // CHECK-NEXT: %[[MASK:.*]] = fir.alloca !fir.logical<4> 20 // CHECK-NEXT: %[[LOGICAL:.*]] = fir.convert %[[TRUE]] : (i1) -> !fir.logical<4> 21 // CHECK-NEXT: fir.store %[[LOGICAL]] to %[[MASK]] : !fir.ref<!fir.logical<4>> 22 // CHECK-NEXT: %[[BOX:.*]] = fir.embox %0 : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<… 23 …[ARRAY]] dim %[[C1]] mask %[[BOX]] : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 [all …]
|
H A D | sum.fir | 7 %mask = fir.alloca !fir.logical<4> 10 %true_logical = fir.convert %true : (i1) -> !fir.logical<4> 11 fir.store %true_logical to %mask : !fir.ref<!fir.logical<4>> 12 %mask_box = fir.embox %mask : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<4>> 13 …%0 = hlfir.sum %arg0 dim %c_1 mask %mask_box : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<… 17 // CHECK-NEXT: %[[MASK:.*]] = fir.alloca !fir.logical<4> 20 // CHECK-NEXT: %[[LOGICAL:.*]] = fir.convert %[[TRUE]] : (i1) -> !fir.logical<4> 21 // CHECK-NEXT: fir.store %[[LOGICAL]] to %[[MASK]] : !fir.ref<!fir.logical<4>> 22 // CHECK-NEXT: %[[BOX:.*]] = fir.embox %0 : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<… 23 …[ARRAY]] dim %[[C1]] mask %[[BOX]] : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 [all …]
|
H A D | all-lowering.fir | 4 func.func @_QPall1(%arg0: !fir.box<!fir.array<?x!fir.logical<4>>> {fir.bindc_name = "a"}, %arg1: !fir.ref<!fir.logical<4>> {fir.bindc_name = "s"}) { 5 %0:2 = hlfir.declare %arg0 {uniq_name = "_QFall1Ea"} : (!fir.box<!fir.array<?x!fir.logical<4>>>) -> (!fir.box<!fir.array<?x!fir.logical<4>>>, !fir.box<!fir.array<?x!fir.logical<4>>>) 6 %1:2 = hlfir.declare %arg1 {uniq_name = "_QFall1Es"} : (!fir.ref<!fir.logical<4>>) -> (!fir.ref<!fir.logical<4>>, !fir.ref<!fir.logical<4>>) 7 %2 = hlfir.all %0#0 : (!fir.box<!fir.array<?x!fir.logical<4>>>) -> !fir.logical< [all...] |
H A D | any-lowering.fir | 5 func.func @_QPany1(%arg0: !fir.box<!fir.array<?x!fir.logical<4>>> {fir.bindc_name = "a"}, %arg1: !fir.ref<!fir.logical<4>> {fir.bindc_name = "s"}) { 6 %0:2 = hlfir.declare %arg0 {uniq_name = "_QFany1Ea"} : (!fir.box<!fir.array<?x!fir.logical<4>>>) -> (!fir.box<!fir.array<?x!fir.logical<4>>>, !fir.box<!fir.array<?x!fir.logical<4>>>) 7 %1:2 = hlfir.declare %arg1 {uniq_name = "_QFany1Es"} : (!fir.ref<!fir.logical<4>>) -> (!fir.ref<!fir.logical<4>>, !fir.ref<!fir.logical<4>>) 8 %2 = hlfir.any %0#0 : (!fir.box<!fir.array<?x!fir.logical<4>>>) -> !fir.logical< [all...] |
H A D | minval.fir | 7 %mask = fir.alloca !fir.logical<4> 10 %true_logical = fir.convert %true : (i1) -> !fir.logical<4> 11 fir.store %true_logical to %mask : !fir.ref<!fir.logical<4>> 12 %mask_box = fir.embox %mask : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<4>> 13 …nval %arg0 dim %c_1 mask %mask_box : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 17 // CHECK-NEXT: %[[MASK:.*]] = fir.alloca !fir.logical<4> 20 // CHECK-NEXT: %[[LOGICAL:.*]] = fir.convert %[[TRUE]] : (i1) -> !fir.logical<4> 21 // CHECK-NEXT: fir.store %[[LOGICAL]] to %[[MASK]] : !fir.ref<!fir.logical<4>> 22 // CHECK-NEXT: %[[BOX:.*]] = fir.embox %0 : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<… 23 …[ARRAY]] dim %[[C1]] mask %[[BOX]] : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 [all …]
|
H A D | maxval.fir | 7 %mask = fir.alloca !fir.logical<4> 10 %true_logical = fir.convert %true : (i1) -> !fir.logical<4> 11 fir.store %true_logical to %mask : !fir.ref<!fir.logical<4>> 12 %mask_box = fir.embox %mask : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<4>> 13 …xval %arg0 dim %c_1 mask %mask_box : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 17 // CHECK-NEXT: %[[MASK:.*]] = fir.alloca !fir.logical<4> 20 // CHECK-NEXT: %[[LOGICAL:.*]] = fir.convert %[[TRUE]] : (i1) -> !fir.logical<4> 21 // CHECK-NEXT: fir.store %[[LOGICAL]] to %[[MASK]] : !fir.ref<!fir.logical<4>> 22 // CHECK-NEXT: %[[BOX:.*]] = fir.embox %0 : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<… 23 …[ARRAY]] dim %[[C1]] mask %[[BOX]] : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 [all …]
|
H A D | minloc.fir | 7 %mask = fir.alloca !fir.logical<4> 10 %true_logical = fir.convert %true : (i1) -> !fir.logical<4> 11 fir.store %true_logical to %mask : !fir.ref<!fir.logical<4>> 12 %mask_box = fir.embox %mask : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<4>> 13 …nloc %arg0 dim %c_1 mask %mask_box : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 17 // CHECK-NEXT: %[[MASK:.*]] = fir.alloca !fir.logical<4> 20 // CHECK-NEXT: %[[LOGICAL:.*]] = fir.convert %[[TRUE]] : (i1) -> !fir.logical<4> 21 // CHECK-NEXT: fir.store %[[LOGICAL]] to %[[MASK]] : !fir.ref<!fir.logical<4>> 22 // CHECK-NEXT: %[[BOX:.*]] = fir.embox %0 : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<… 23 …[ARRAY]] dim %[[C1]] mask %[[BOX]] : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 [all …]
|
H A D | maxloc.fir | 7 %mask = fir.alloca !fir.logical<4> 10 %true_logical = fir.convert %true : (i1) -> !fir.logical<4> 11 fir.store %true_logical to %mask : !fir.ref<!fir.logical<4>> 12 %mask_box = fir.embox %mask : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<4>> 13 …xloc %arg0 dim %c_1 mask %mask_box : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 17 // CHECK-NEXT: %[[MASK:.*]] = fir.alloca !fir.logical<4> 20 // CHECK-NEXT: %[[LOGICAL:.*]] = fir.convert %[[TRUE]] : (i1) -> !fir.logical<4> 21 // CHECK-NEXT: fir.store %[[LOGICAL]] to %[[MASK]] : !fir.ref<!fir.logical<4>> 22 // CHECK-NEXT: %[[BOX:.*]] = fir.embox %0 : (!fir.ref<!fir.logical<4>>) -> !fir.box<!fir.logical<… 23 …[ARRAY]] dim %[[C1]] mask %[[BOX]] : (!hlfir.expr<42xi32>, index, !fir.box<!fir.logical<4>>) -> i32 [all …]
|
H A D | count.fir | 6 func.func @count0(%arg0: !hlfir.expr<2x!fir.logical<4>>) { 7 %count = hlfir.count %arg0 : (!hlfir.expr<2x!fir.logical<4>>) -> i32 10 // CHECK: func.func @count0(%[[ARRAY:.*]]: !hlfir.expr<2x!fir.logical<4>>) { 11 // CHECK-NEXT: %[[COUNT:.*]] = hlfir.count %[[ARRAY]] : (!hlfir.expr<2x!fir.logical<4>>) -> i32 16 func.func @count1(%arg0: !hlfir.expr<?x!fir.logical<4>>) { 17 %count = hlfir.count %arg0 : (!hlfir.expr<?x!fir.logical<4>>) -> i32 20 // CHECK: func.func @count1(%[[ARRAY:.*]]: !hlfir.expr<?x!fir.logical<4>>) { 21 // CHECK-NEXT: %[[COUNT:.*]] = hlfir.count %[[ARRAY]] : (!hlfir.expr<?x!fir.logical<4>>) -> i32 26 func.func @count2(%arg0: !fir.box<!fir.array<2x!fir.logical<4>>>) { 27 %count = hlfir.count %arg0 : (!fir.box<!fir.array<2x!fir.logical<4>>>) -> i32 [all …]
|
H A D | dot_product-lowering.fir | 28 …x!fir.logical<4>>> {fir.bindc_name = "lhs"}, %arg1: !fir.box<!fir.array<?x!fir.logical<4>>> {fir.b… 29 …: (!fir.box<!fir.array<?x!fir.logical<4>>>) -> (!fir.box<!fir.array<?x!fir.logical<4>>>, !fir.box<… 30 …e = "_QFdot_product2Eres"} : (!fir.ref<!fir.logical<4>>) -> (!fir.ref<!fir.logical<4>>, !fir.ref<!… 31 …: (!fir.box<!fir.array<?x!fir.logical<4>>>) -> (!fir.box<!fir.array<?x!fir.logical<4>>>, !fir.box<… 32 …contract>} : (!fir.box<!fir.array<?x!fir.logical<4>>>, !fir.box<!fir.array<?x!fir.logical<4>>>) ->… 33 hlfir.assign %3 to %1#0 : !fir.logical<4>, !fir.ref<!fir.logical<4>> 37 // CHECK: %[[ARG0:.*]]: !fir.box<!fir.array<?x!fir.logical<4>>> {fir.bindc_name = "lhs"} 38 // CHECK: %[[ARG1:.*]]: !fir.box<!fir.array<?x!fir.logical<4>>> {fir.bindc_name = "rhs"} 39 // CHECK: %[[ARG2:.*]]: !fir.ref<!fir.logical<4>> {fir.bindc_name = "res"} 44 …[LHS_ARG:.*]] = fir.convert %[[LHS_VAR]]#1 : (!fir.box<!fir.array<?x!fir.logical<4>>>) -> !fir.box… [all …]
|
H A D | all-elemental.fir | 3 …<i32> {fir.bindc_name = "row"}, %arg2: !fir.ref<i32> {fir.bindc_name = "val"}) -> !fir.logical<4> { 10 %3 = fir.alloca !fir.logical<4> {bindc_name = "test", uniq_name = "_QFFtestEtest"} 11 …iq_name = "_QFFtestEtest"} : (!fir.ref<!fir.logical<4>>) -> (!fir.ref<!fir.logical<4>>, !fir.ref<!… 18 %11 = hlfir.elemental %8 unordered : (!fir.shape<1>) -> !hlfir.expr<7x!fir.logical<4>> { 23 %17 = fir.convert %16 : (i1) -> !fir.logical<4> 24 hlfir.yield_element %17 : !fir.logical<4> 26 %12 = hlfir.all %11 : (!hlfir.expr<7x!fir.logical<4>>) -> !fir.logical<4> 27 hlfir.assign %12 to %4#0 : !fir.logical<4>, !fir.ref<!fir.logical<4>> 28 hlfir.destroy %11 : !hlfir.expr<7x!fir.logical<4>> 29 %13 = fir.load %4#1 : !fir.ref<!fir.logical<4>> [all …]
|
H A D | any-elemental.fir | 3 func.func @_QFPtest(%arg0: !fir.ref<!fir.array<4x7xi32>> {fir.bindc_name = "b"}, %arg1: !fir.ref<i32> {fir.bindc_name = "row"}, %arg2: !fir.ref<i32> {fir.bindc_name = "val"}) -> !fir.logical<4> { 10 %3 = fir.alloca !fir.logical<4> {bindc_name = "test", uniq_name = "_QFFtestEtest"} 11 %4:2 = hlfir.declare %3 {uniq_name = "_QFFtestEtest"} : (!fir.ref<!fir.logical<4>>) -> (!fir.ref<!fir.logical<4>>, !fir.ref<!fir.logical<4>>) 18 %11 = hlfir.elemental %8 unordered : (!fir.shape<1>) -> !hlfir.expr<7x!fir.logical<4>> { 23 %17 = fir.convert %16 : (i1) -> !fir.logical<4> 24 hlfir.yield_element %17 : !fir.logical<4> 26 %12 = hlfir.any %11 : (!hlfir.expr<7x!fir.logical<4>>) -> !fir.logical< [all...] |
H A D | invalid.fir | 300 func.func @bad_any1(%arg0: !hlfir.expr<?x!fir.logical<4>>) { 302 %0 = hlfir.any %arg0 : (!hlfir.expr<?x!fir.logical<4>>) -> !fir.logical<8> 306 func.func @bad_any2(%arg0: !hlfir.expr<?x?x!fir.logical<4>>, %arg1: i32) { 308 %0 = hlfir.any %arg0 dim %arg1 : (!hlfir.expr<?x?x!fir.logical<4>>, i32) -> !hlfir.expr<?x!fir.logical<8>> 312 func.func @bad_any3(%arg0: !hlfir.expr<?x?x!fir.logical<4>>, %arg1: i32){ 314 %0 = hlfir.any %arg0 dim %arg1 : (!hlfir.expr<?x?x!fir.logical<4>>, i32) -> !hlfir.expr<?x?x!fir.logical<4>> 318 func.func @bad_any4(%arg0: !hlfir.expr<?x?x!fir.logical< [all...] |
H A D | dot_product.fir | 41 // arguments are logical 42 … @dot_product3(%arg0: !fir.box<!fir.array<2x!fir.logical<4>>>, %arg1: !fir.box<!fir.array<2x!fir.l… 43 …arg0 %arg1 : (!fir.box<!fir.array<2x!fir.logical<4>>>, !fir.box<!fir.array<2x!fir.logical<4>>>) ->… 47 // CHECK: %[[ARG0:.*]]: !fir.box<!fir.array<2x!fir.logical<4>>>, 48 // CHECK: %[[ARG1:.*]]: !fir.box<!fir.array<2x!fir.logical<4>>> 49 … %[[ARG1]] : (!fir.box<!fir.array<2x!fir.logical<4>>>, !fir.box<!fir.array<2x!fir.logical<4>>>) ->…
|
H A D | elsewhere.fir | 4 func.func @test_elsewhere(%mask: !fir.ref<!fir.array<10x!fir.logical<4>>>, %x: !fir.ref<!fir.array<… 6 hlfir.yield %mask : !fir.ref<!fir.array<10x!fir.logical<4>>> 19 // CHECK-SAME: %[[VAL_0:.*]]: !fir.ref<!fir.array<10x!fir.logical<4>>>, 23 // CHECK: hlfir.yield %[[VAL_0]] : !fir.ref<!fir.array<10x!fir.logical<4>>> 34 func.func @test_masked_elsewhere(%mask: !fir.ref<!fir.array<10x!fir.logical<4>>>, %x: !fir.ref<!fir… 36 hlfir.yield %mask : !fir.ref<!fir.array<10x!fir.logical<4>>> 39 %other_mask = fir.call @get_mask() : () -> !fir.ptr<!fir.array<10x!fir.logical<4>>> 40 hlfir.yield %other_mask : !fir.ptr<!fir.array<10x!fir.logical<4>>> 59 …-SAME: %[[VAL_0:.*]]: !fir.ref<!fir.array<10x!fir.logical<4>>>, 63 // CHECK: hlfir.yield %[[VAL_0]] : !fir.ref<!fir.array<10x!fir.logical<4>>> [all …]
|
H A D | count-lowering.fir | 4 func.func @_QPcount1(%arg0: !fir.box<!fir.array<?x!fir.logical<4>>> {fir.bindc_name = "a"}, %arg1: !fir.ref<i32> {fir.bindc_name = "s"}) { 5 %0:2 = hlfir.declare %arg0 {uniq_name = "_QFcount1Ea"} : (!fir.box<!fir.array<?x!fir.logical<4>>>) -> (!fir.box<!fir.array<?x!fir.logical<4>>>, !fir.box<!fir.array<?x!fir.logical<4>>>) 7 %2 = hlfir.count %0#0 {fastmath = #arith.fastmath<contract>} : (!fir.box<!fir.array<?x!fir.logical<4>>>) -> i32 12 // CHECK: %[[ARG0:.*]]: !fir.box<!fir.array<?x!fir.logical<4>>> 16 // CHECK-DAG: %[[MASK_ARG:.*]] = fir.convert %[[MASK]]#1 : (!fir.box<!fir.array<?x!fir.logical<4>>>) -> !fir.box<none> 23 func.func @_QPcount2(%arg0: !fir.box<!fir.array<?x?x!fir.logical<4>>> {fir.bindc_name = "a"}, %arg1: !fir.box<!fir.array<?xi32>> {fir.bindc_name = "s"}, %arg2: !fir.ref<i32> {fir.bindc_name = "d"}) { 24 %0:2 = hlfir.declare %arg0 {uniq_name = "_QFcount2Ea"} : (!fir.box<!fir.array<?x?x!fir.logical<4>>>) -> (!fir.box<!fir.array<?x?x!fir.logical< [all...] |
/llvm-project/flang/test/Fir/ |
H A D | logical-convert.fir | 11 func.func @test_l1_i1(%arg0: !fir.logical<1>) -> i1 { 12 %0 = fir.convert %arg0 : (!fir.logical<1>) -> i1 21 func.func @test_l1_i8(%arg0: !fir.logical<1>) -> i8 { 22 %0 = fir.convert %arg0 : (!fir.logical<1>) -> i8 31 func.func @test_l1_i16(%arg0: !fir.logical<1>) -> i16 { 32 %0 = fir.convert %arg0 : (!fir.logical<1>) -> i16 41 func.func @test_l1_i32(%arg0: !fir.logical<1>) -> i32 { 42 %0 = fir.convert %arg0 : (!fir.logical<1>) -> i32 51 func.func @test_l1_i64(%arg0: !fir.logical<1>) -> i64 { 52 %0 = fir.convert %arg0 : (!fir.logical<1>) -> i64 [all …]
|
H A D | struct-passing-x86-64-one-field-inreg.fir | 105 func.func @test_call_log1(%0 : !fir.ref<!fir.type<tlog1{i:!fir.logical<1>}>>) { 106 %7 = fir.load %0 : !fir.ref<!fir.type<tlog1{i:!fir.logical<1>}>> 107 fir.call @test_func_log1(%7) : (!fir.type<tlog1{i:!fir.logical<1>}>) -> () 110 func.func private @test_func_log1(%0 : !fir.type<tlog1{i:!fir.logical<1>}>) -> () { 114 func.func @test_call_log2(%0 : !fir.ref<!fir.type<tlog2{i:!fir.logical<2>}>>) { 115 %7 = fir.load %0 : !fir.ref<!fir.type<tlog2{i:!fir.logical<2>}>> 116 fir.call @test_func_log2(%7) : (!fir.type<tlog2{i:!fir.logical<2>}>) -> () 119 func.func private @test_func_log2(%0 : !fir.type<tlog2{i:!fir.logical<2>}>) -> () { 123 func.func @test_call_log4(%0 : !fir.ref<!fir.type<tlog4{i:!fir.logical<4>}>>) { 124 %7 = fir.load %0 : !fir.ref<!fir.type<tlog4{i:!fir.logical< [all...] |
H A D | convert-fold.fir | 6 %1 = fir.convert %x : (i1) -> !fir.logical<1> 7 %2 = fir.convert %1 : (!fir.logical<1>) -> i1 13 func.func @gtest(%x : !fir.logical<2>) -> !fir.logical<2> { 15 %1 = fir.convert %x : (!fir.logical<2>) -> i1 16 %2 = fir.convert %1 : (i1) -> !fir.logical<2> 17 // CHECK-NEXT: return %{{.*}} : !fir.logical<2> 18 return %2 : !fir.logical<2>
|
/llvm-project/flang/test/HLFIR/order_assignments/ |
H A D | where-codegen-no-conflict.fir | 5 … @test_simple(%arg0: !fir.box<!fir.array<?xf32>>, %arg1: !fir.box<!fir.array<?x!fir.logical<4>>>) { 7 …: (!fir.box<!fir.array<?x!fir.logical<4>>>) -> (!fir.box<!fir.array<?x!fir.logical<4>>>, !fir.box<… 10 hlfir.yield %0#0 : !fir.box<!fir.array<?x!fir.logical<4>>> 22 // CHECK-SAME: %[[VAL_1:.*]]: !fir.box<!fir.array<?x!fir.logical<4>>>) { 24 …: (!fir.box<!fir.array<?x!fir.logical<4>>>) -> (!fir.box<!fir.array<?x!fir.logical<4>>>, !fir.box<… 27 …:3 = fir.box_dims %[[VAL_3]]#0, %[[VAL_5]] : (!fir.box<!fir.array<?x!fir.logical<4>>>, index) -> (… 31 …VAL_3]]#0 (%[[VAL_9]]) : (!fir.box<!fir.array<?x!fir.logical<4>>>, index) -> !fir.ref<!fir.logica… 32 // CHECK: %[[VAL_11:.*]] = fir.load %[[VAL_10]] : !fir.ref<!fir.logical<4>> 33 // CHECK: %[[VAL_12:.*]] = fir.convert %[[VAL_11]] : (!fir.logical<4>) -> i1 43 …<100xf32>>, %arg3: !fir.ref<!fir.array<100x!fir.logical<4>>>, %arg4: !fir.ref<!fir.array<100x!fir.… [all …]
|
H A D | impure-where.fir | 6 func.func private @impure() -> !fir.heap<!fir.array<10x!fir.logical<4>>> 7 …rray<10xi32>>, %z: !fir.ref<!fir.array<10xi32>>, %mask: !fir.ref<!fir.array<10x!fir.logical<4>>>) { 13 hlfir.yield %mask : !fir.ref<!fir.array<10x!fir.logical<4>>> 16 %mask2 = hlfir.exactly_once : !fir.heap<!fir.array<10x!fir.logical<4>>> { 17 %imp = fir.call @impure() : () -> !fir.heap<!fir.array<10x!fir.logical<4>>> 18 hlfir.yield %imp : !fir.heap<!fir.array<10x!fir.logical<4>>> cleanup { 19 fir.freemem %imp : !fir.heap<!fir.array<10x!fir.logical<4>>> 22 hlfir.yield %mask2 : !fir.heap<!fir.array<10x!fir.logical<4>>> 39 …CK: %[[VAL_12:.*]] = fir.call @impure() : () -> !fir.heap<!fir.array<10x!fir.logical<4>>> 40 // CHECK: %[[VAL_21:.*]] = fir.allocmem !fir.array<?x!fir.logical<4>>, %[[extent:[^ ]*]] [all …]
|
H A D | user-defined-assignment.fir | 5 func.func @test_simple_scalar(%i: !fir.ref<i32>, %l: !fir.ref<!fir.logical<4>>) { 7 hlfir.yield %l : !fir.ref<!fir.logical<4>> 10 } user_defined_assign (%arg0: !fir.ref<!fir.logical<4>>) to (%arg1: !fir.ref<i32>) { 11 fir.call @logical_to_numeric(%arg1, %arg0) : (!fir.ref<i32>, !fir.ref<!fir.logical<4>>) -> () 17 // CHECK-SAME: %[[VAL_1:.*]]: !fir.ref<!fir.logical<4>>) { 18 // CHECK: %[[VAL_2:.*]] = fir.load %[[VAL_1]] : !fir.ref<!fir.logical<4>> 19 …VAL_2]] {uniq_name = ".tmp.assign"} : (!fir.logical<4>) -> (!fir.ref<!fir.logical<4>>, !fir.ref<!f… 20 …ll @logical_to_numeric(%[[VAL_0]], %[[VAL_3]]#0) : (!fir.ref<i32>, !fir.ref<!fir.logical<4>>) -> () 21 // CHECK: hlfir.end_associate %[[VAL_3]]#1, %[[VAL_3]]#2 : !fir.ref<!fir.logical<4>>, i1 28 %cmp = hlfir.elemental %shape : (!fir.shape<1>) -> !hlfir.expr<10x!fir.logical<4>> { [all …]
|
/llvm-project/flang/test/Transforms/ |
H A D | debug-fn-info.fir | 9 %4 = fir.alloca !fir.logical<1> {bindc_name = "l1", uniq_name = "_QFEl1"} 10 %5 = fircg.ext_declare %4 {uniq_name = "_QFEl1"} : (!fir.ref<!fir.logical<1>>) -> !fir.ref<!fir.logical<1>> 11 %6 = fir.alloca !fir.logical<4> {bindc_name = "l4", uniq_name = "_QFEl4"} 12 %7 = fircg.ext_declare %6 {uniq_name = "_QFEl4"} : (!fir.ref<!fir.logical<4>>) -> !fir.ref<!fir.logical<4>> 17 %12 = fir.call @_QFPfn1(%1, %11, %5) fastmath<contract> : (!fir.ref<i32>, !fir.ref<f64>, !fir.ref<!fir.logical<1>>) -> i64 19 %13 = fir.call @_QFPfn2(%3, %9, %7) fastmath<contract> : (!fir.ref<i64>, !fir.ref<f32>, !fir.ref<!fir.logical<4>>) -> i32 23 func.func private @_QFPfn1(%arg0: !fir.ref<i32> {fir.bindc_name = "a"} , %arg1: !fir.ref<f64> {fir.bindc_name = "b"}, %arg2: !fir.ref<!fir.logical<1>> {fir.bindc_name = "c"}) -> i64 attributes {fir.host_symbol = @_QQmain, llvm.linkage = #llvm.linkage<internal>} { 27 %3 = fircg.ext_declare %arg2 dummy_scope %0 {uniq_name = "_QFFfn1Ec"} : (!fir.ref<!fir.logical< [all...] |