[flang] Accept polymorphic component element in storage_size
[llvm-project.git] / flang / test / Lower / dense-attributed-array.f90
bloba9c3ef3a57a4223fe5e1ceba17decc5128e8d2c3
1 ! RUN: bbc --emit-fir %s -o - | FileCheck %s
3 ! Test generation of dense attributed global array. Also, make sure there are
4 ! no dead ssa assignments.
5 module mm
6 integer, parameter :: qq(3) = [(i,i=51,53)]
7 end
8 subroutine ss
9 use mm
10 n = qq(3)
11 end
12 !CHECK-NOT: %{{.*}} = fir.undefined !fir.array<3xi32>
13 !CHECK-NOT: %{{.*}} = arith.constant %{{.*}} : index
14 !CHECK-NOT: %{{.*}} = arith.constant %{{.*}} : i32
15 !CHECK-NOT: %{{.*}} = fir.insert_value %{{.*}}, %{{.*}}, [%{{.*}} : index] : (!fir.array<3xi32>, i32) -> !fir.array<3xi32>
16 !CHECK: fir.global @_QMmmECqq(dense<[51, 52, 53]> : tensor<3xi32>) constant : !fir.array<3xi32>
17 !CHECK: func @_QPss() {
18 !CHECK: %[[a0:.*]] = fir.alloca i32 {bindc_name = "n", uniq_name = "_QFssEn"}
19 !CHECK: %[[c0:.*]] = arith.constant 53 : i32
20 !CHECK: fir.store %[[c0]] to %[[a0]] : !fir.ref<i32>
21 !CHECK: return
22 !CHECK: }