blob: 5d590e086fe8bb571f897db811409e9859478e83 [file] [edit]
// RUN: cir-opt %s --cir-to-llvm -o - | FileCheck %s
!s32i = !cir.int<s, 32>
!rec_mixed = !cir.struct<{!s32i, !cir.ptr<!s32i>}>
module attributes {cir.triple = "x86_64-unknown-linux-gnu"} {
cir.global "private" constant cir_private dso_local @g0 = #cir.int<0> : !s32i
cir.global "private" constant cir_private dso_local @g1 = #cir.int<1> : !s32i
cir.global "private" constant cir_private dso_local @g2 = #cir.int<2> : !s32i
cir.global constant external dso_local @ptrs = #cir.const_array<[
#cir.global_view<@g0> : !cir.ptr<!s32i>,
#cir.global_view<@g1> : !cir.ptr<!s32i>,
#cir.global_view<@g2> : !cir.ptr<!s32i>
]> : !cir.array<!cir.ptr<!s32i> x 3>
cir.global constant external dso_local @mixed = #cir.const_record<{
#cir.int<7> : !s32i,
#cir.global_view<@g0> : !cir.ptr<!s32i>
}> : !rec_mixed
}
// CHECK-LABEL: llvm.mlir.global external constant @ptrs(
// CHECK-NOT: llvm.insertvalue
// CHECK-LABEL: llvm.mlir.global external constant @mixed(
// CHECK-SAME: [7 : i32, @g0]
// CHECK-SAME: : !llvm.struct<(i32, ptr)>
// CHECK-NOT: llvm.insertvalue
// CHECK-NOT: llvm.return