Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / CodeGenObjCXX / designated-initializers.mm
blobf1c66592073c477d8b5651fb6f182ad58f3d11fa
1 // RUN: %clang_cc1 -triple arm64 %s -verify -emit-llvm -o - -Wno-c99-designator | FileCheck %s
2 // expected-no-diagnostics
4 // Make sure we don't enter an infinite loop
6 int vals1[] = {
7   [__objc_yes] = 1,
8   [__objc_no] = 2
9 };
10 // CHECK: @vals1 ={{.*}} global [2 x i32] [i32 2, i32 1]
12 int vals2[] = {
13   [true] = 3,
14   [false] = 4
16 // CHECK: @vals2 ={{.*}} global [2 x i32] [i32 4, i32 3]
18 int vals3[] = {
19   [false] = 1,
20   [true] = 2,
21   5
23 // CHECK: @vals3 ={{.*}} global [3 x i32] [i32 1, i32 2, i32 5]
25 int vals4[2] = {
26   [true] = 5,
27   [false] = 6
29 // CHECK: @vals4 ={{.*}} global [2 x i32] [i32 6, i32 5]
31 int vals5[3] = {
32   [false] = 1,
33   [true] = 2,
34   6
36 // CHECK: @vals5 ={{.*}} global [3 x i32] [i32 1, i32 2, i32 6]
38 enum SomeEnum : unsigned char {
39   blah = 255
41 char vals6[] = {
42   [blah] = 'a'
44 // CHECK: @vals6 ={{.*}} global [256 x i8] c"\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00a"