1! This test checks lowering of OpenACC init directive. 2 3! RUN: bbc -fopenacc -emit-fir %s -o - | FileCheck %s 4 5subroutine acc_init 6 logical :: ifCondition = .TRUE. 7 8 !$acc init 9!CHECK: acc.init{{$}} 10 11 !$acc init if(.true.) 12!CHECK: [[IF1:%.*]] = arith.constant true 13!CHECK: acc.init if([[IF1]]){{$}} 14 15 !$acc init if(ifCondition) 16!CHECK: [[IFCOND:%.*]] = fir.load %{{.*}} : !fir.ref<!fir.logical<4>> 17!CHECK: [[IF2:%.*]] = fir.convert [[IFCOND]] : (!fir.logical<4>) -> i1 18!CHECK: acc.init if([[IF2]]){{$}} 19 20 !$acc init device_num(1) 21!CHECK: [[DEVNUM:%.*]] = arith.constant 1 : i32 22!CHECK: acc.init device_num([[DEVNUM]] : i32){{$}} 23 24 !$acc init device_num(1) device_type(1, 2) 25!CHECK: [[DEVNUM:%.*]] = arith.constant 1 : i32 26!CHECK: [[DEVTYPE1:%.*]] = arith.constant 1 : i32 27!CHECK: [[DEVTYPE2:%.*]] = arith.constant 2 : i32 28!CHECK: acc.init device_type([[DEVTYPE1]], [[DEVTYPE2]] : i32, i32) device_num([[DEVNUM]] : i32){{$}} 29 30end subroutine acc_init