@@ -4,43 +4,8 @@ module attributes {omp.is_target_device = false} {
44 ^bb0(%arg0: !fir.ref<!fir.box<!fir.heap<i32>>>):
55 %0 = fir.alloca !fir.box<!fir.heap<i32>> {bindc_name = "simple_var", pinned, uniq_name = "_QFtarget_simpleEsimple_var"}
66 %1 = fir.load %arg0 : !fir.ref<!fir.box<!fir.heap<i32>>>
7- %2 = fir.box_addr %1 : (!fir.box<!fir.heap<i32>>) -> !fir.heap<i32>
8- %3 = fir.convert %2 : (!fir.heap<i32>) -> i64
9- %c0_i64 = arith.constant 0 : i64
10- %4 = arith.cmpi ne, %3, %c0_i64 : i64
11- fir.if %4 {
12- %6 = fir.load %arg0 : !fir.ref<!fir.box<!fir.heap<i32>>>
13- %7 = fir.box_addr %6 : (!fir.box<!fir.heap<i32>>) -> !fir.heap<i32>
14- %8 = fir.allocmem i32 {fir.must_be_heap = true, uniq_name = "_QFtarget_simpleEsimple_var.alloc"}
15- %9 = fir.embox %8 : (!fir.heap<i32>) -> !fir.box<!fir.heap<i32>>
16- fir.store %9 to %0 : !fir.ref<!fir.box<!fir.heap<i32>>>
17- } else {
18- %6 = fir.zero_bits !fir.heap<i32>
19- %7 = fir.embox %6 : (!fir.heap<i32>) -> !fir.box<!fir.heap<i32>>
20- fir.store %7 to %0 : !fir.ref<!fir.box<!fir.heap<i32>>>
21- }
227 %5:2 = hlfir.declare %0 {fortran_attrs = #fir.var_attrs<allocatable>, uniq_name = "_QFtarget_simpleEsimple_var"} : (!fir.ref<!fir.box<!fir.heap<i32>>>) -> (!fir.ref<!fir.box<!fir.heap<i32>>>, !fir.ref<!fir.box<!fir.heap<i32>>>)
238 omp.yield(%5#0 : !fir.ref<!fir.box<!fir.heap<i32>>>)
24- } dealloc {
25- ^bb0(%arg0: !fir.ref<!fir.box<!fir.heap<i32>>>):
26- %0 = fir.load %arg0 : !fir.ref<!fir.box<!fir.heap<i32>>>
27- %1 = fir.box_addr %0 : (!fir.box<!fir.heap<i32>>) -> !fir.heap<i32>
28- %2 = fir.convert %1 : (!fir.heap<i32>) -> i64
29- %c0_i64 = arith.constant 0 : i64
30- %3 = arith.cmpi ne, %2, %c0_i64 : i64
31- fir.if %3 {
32- %false = arith.constant false
33- %4 = fir.absent !fir.box<none>
34- %c70 = arith.constant 70 : index
35- %c10_i32 = arith.constant 10 : i32
36- %6 = fir.load %arg0 : !fir.ref<!fir.box<!fir.heap<i32>>>
37- %7 = fir.box_addr %6 : (!fir.box<!fir.heap<i32>>) -> !fir.heap<i32>
38- fir.freemem %7 : !fir.heap<i32>
39- %8 = fir.zero_bits !fir.heap<i32>
40- %9 = fir.embox %8 : (!fir.heap<i32>) -> !fir.box<!fir.heap<i32>>
41- fir.store %9 to %arg0 : !fir.ref<!fir.box<!fir.heap<i32>>>
42- }
43- omp.yield
449 }
4510 func.func @_QPtarget_simple() {
4611 %0 = fir.alloca i32 {bindc_name = "a", uniq_name = "_QFtarget_simpleEa"}
0 commit comments