51 lines · plain
1! Test padding for BIND(C) derived types lowering for AIX target2! RUN: %flang_fc1 -emit-llvm %s -o - | FileCheck %s3 4! REQUIRES: target={{.+}}-aix{{.*}}5 6subroutine s1()7 use, intrinsic :: iso_c_binding8 type, bind(c) :: t09 character(c_char) :: x110 real(c_double) :: x211 end type12 type(t0) :: xt013! CHECK-DAG: %_QFs1Tt0 = type <{ [1 x i8], [3 x i8], double }>14 15 type, bind(c) :: t116 integer(c_short) :: x117 real(c_double) :: x218 end type19 type(t1) :: xt120! CHECK-DAG: %_QFs1Tt1 = type <{ i16, [2 x i8], double }>21 22 type, bind(c) :: t223 integer(c_short) :: x124 real(c_double) :: x225 character(c_char) :: x326 end type27 type(t2) :: xt228! CHECK-DAG: %_QFs1Tt2 = type <{ i16, [2 x i8], double, [1 x i8], [3 x i8] }>29 30 type, bind(c) :: t331 character(c_char) :: x132 complex(c_double_complex) :: x233 end type34 type(t3) :: xt335! CHECK-DAG: %_QFs1Tt3 = type <{ [1 x i8], [3 x i8], { double, double } }>36 37 type, bind(c) :: t438 integer(c_short) :: x139 complex(c_double_complex) :: x240 character(c_char) :: x341 end type42 type(t4) :: xt443! CHECK-DAG: %_QFs1Tt4 = type <{ i16, [2 x i8], { double, double }, [1 x i8], [3 x i8] }>44 45 xt0%x2 = 1.46 xt1%x2 = 1.47 xt2%x2 = 1.48 xt3%x2 = (1., 1.)49 xt4%x2 = (1., 1.)50end subroutine s151