Home
last modified time | relevance | path

Searched refs:boxproc (Results 1 – 13 of 13) sorted by relevance

/llvm-project-15.0.7/flang/test/Fir/
H A Dboxproc-2.fir1 // Test fir.boxproc type conversion in the boxed-procedure pass.
5 func.func private @test1(!fir.type<a{x:i32, y:f64}>, !fir.boxproc<() -> ()>) -> none
8 func.func private @test2(!fir.boxproc<(!fir.type<a{x:i32, y:f64}>) -> ()>) -> none
11 func.func private @test3(!fir.boxproc<() -> (!fir.type<a{x:i32, y:f64}>)>) -> none
14 func.func private @test5(!fir.boxproc<(!fir.boxproc<(i32) -> (f32)>) -> ()>)
H A Dboxproc.fir34 …>, !fir.ref<tuple<!fir.ref<i32>>>) -> (), !fir.ref<tuple<!fir.ref<i32>>>) -> !fir.boxproc<() -> ()>
35 fir.call @_QPtest_proc_dummy_other(%4) : (!fir.boxproc<() -> ()>) -> ()
54 func.func @_QPtest_proc_dummy_other(%arg0: !fir.boxproc<() -> ()>) {
58 %1 = fir.box_addr %arg0 : (!fir.boxproc<() -> ()>) -> ((!fir.ref<i32>) -> ())
190 %24 = fir.undefined tuple<!fir.boxproc<() -> ()>, i64>
191 …alue %24, %23, [0 : index] : (tuple<!fir.boxproc<() -> ()>, i64>, !fir.boxproc<() -> ()>) -> tuple…
192 …ert_value %25, %c10_i64, [1 : index] : (tuple<!fir.boxproc<() -> ()>, i64>, i64) -> tuple<!fir.box…
194 …t_message(%0, %c40, %26) : (!fir.ref<!fir.char<1,40>>, index, tuple<!fir.boxproc<() -> ()>, i64>) …
246 …%2 = fir.extract_value %arg2, [0 : index] : (tuple<!fir.boxproc<() -> ()>, i64>) -> !fir.boxproc<(…
247 %3 = fir.box_addr %2 : (!fir.boxproc<() -> ()>) -> (() -> ())
[all …]
H A Doptional.fir57 func.func @foo4(%arg0: !fir.boxproc<(i32)->(i64)>) -> i1 {
60 %0 = fir.is_present %arg0 : (!fir.boxproc<(i32)->(i64)>) -> i1
66 %0 = fir.absent !fir.boxproc<(i32)->(i64)>
68 %1 = fir.call @foo4(%0) : (!fir.boxproc<(i32)->(i64)>) -> i1
H A Dfir-ops.fir7 // CHECK: func private @box2() -> !fir.boxproc<(i32, i32) -> i64>
11 func.func private @box2() -> !fir.boxproc<(i32, i32) -> i64>
57 // CHECK: %[[WAL_2:.*]] = fir.undefined !fir.boxproc<() -> ()>
58 %ba1 = fir.undefined !fir.boxproc<() -> ()>
59 // CHECK: %{{.*}} = fir.box_addr %[[WAL_2]] : (!fir.boxproc<() -> ()>) -> (() -> ())
60 %ba2 = fir.box_addr %ba1 : (!fir.boxproc<() -> ()>) -> (() -> ())
87 // CHECK: [[VAL_19:%.*]] = fir.call @box2() : () -> !fir.boxproc<(i32, i32) -> i64>
92 %17 = fir.call @box2() : () -> !fir.boxproc<(i32, i32) -> i64>
93 %18 = fir.boxproc_host %17 : (!fir.boxproc<(i32, i32) -> i64>) -> !fir.ref<i32>
167 // CHECK: [[VAL_58:%.*]] = fir.call @box2() : () -> !fir.boxproc<(i32, i32) -> i64>
[all …]
H A Dexternal-mangling-emboxproc.fir6 …ox<!fir.type<derived3{f:f32}>>) -> (), !fir.ref<tuple<i32,f64>>) -> !fir.boxproc<(!fir.box<!fir.ty…
H A Dfir-types.fir70 // CHECK-LABEL: func private @box3() -> !fir.boxproc<(i32, i32) -> i64>
75 func.func private @box3() -> !fir.boxproc<(i32, i32) -> i64>
H A Dinvalid-types.fir5 func.func private @box3() -> !fir.boxproc<>
/llvm-project-15.0.7/flang/test/Fir/Todo/
H A Dunboxproc.fir5 // Currently fails since coversion for boxproc type is not implemented.
8 func.func @boxing_match(%bproc: !fir.boxproc<(i32) -> ()>) {
9 …%ubproc:2 = fir.unboxproc %bproc : (!fir.boxproc<(i32) -> ()>) -> ((i32) -> (), !fir.ref<tuple<i32…
H A Dboxproc_host.fir4 // At the moment this test fails since `fir.boxproc` type does not have a conversion.
7 func.func @test(%bproc: !fir.boxproc<(i32) -> ()>) {
8 %tuple = fir.boxproc_host %bproc : (!fir.boxproc<(i32) -> ()>) -> (!fir.ref<tuple<i32,f64>>)
/llvm-project-15.0.7/flang/lib/Optimizer/CodeGen/
H A DTypeConverter.h62 addConversion([&](BoxProcType boxproc) { in LLVMTypeConverter()
277 mlir::Type convertBoxProcType(BoxProcType boxproc) { in convertBoxProcType() argument
278 auto funcTy = convertType(boxproc.getEleTy()); in convertBoxProcType()
H A DBoxedProcedure.cpp91 [&](BoxProcType boxproc) { return convertType(boxproc.getEleTy()); }); in __anonfdb31fde0402() argument
/llvm-project-15.0.7/flang/include/flang/Optimizer/Dialect/
H A DFIROps.td885 %0 = fir.emboxproc %f : ((i32) -> i32) -> !fir.boxproc<(i32) -> i32>
897 …g, %4 : ((i32) -> i32, !fir.ref<tuple<!fir.ref<i32>, !fir.ref<i32>>>) -> !fir.boxproc<(i32) -> i32>
931 let summary = "unbox a boxproc value into a pair value";
934 Unboxes a value of `boxproc` type into a pair consisting of a procedure
938 %47 = ... : !fir.boxproc<() -> i32>
945 let arguments = (ins fir_BoxProcType:$boxproc);
955 `boxchar`, and `boxproc`. The result for each of these
962 %53 = fir.box_addr %boxproc : (!fir.boxproc<!P>) -> !P
1112 Extract the host context pointer from a boxproc value.
1115 %8 = ... : !fir.boxproc<(!fir.ref<!fir.type<T>>) -> i32>
[all …]
H A DFIRTypes.td54 def fir_BoxProcType : FIR_Type<"BoxProc", "boxproc"> {