1; RUN: llc < %s 2; PR3288 3 4define void @a() { 5 %i = insertvalue [2 x [2 x i32]] undef, [2 x i32] undef, 1 6 ret void 7} 8define void @b() { 9 %i = insertvalue {{i32,float},{i16,double}} undef, {i16,double} undef, 1 10 ret void 11} 12define void @c() { 13 %i = insertvalue [2 x [2 x i32]] zeroinitializer, [2 x i32] zeroinitializer, 1 14 ret void 15} 16define void @d() { 17 %i = insertvalue {{i32,float},{i16,double}} zeroinitializer, {i16,double} zeroinitializer, 1 18 ret void 19} 20define void @e() { 21 %i = insertvalue [2 x [2 x i32]] undef, [2 x i32] undef, 0 22 ret void 23} 24define void @f() { 25 %i = insertvalue {{i32,float},{i16,double}} undef, {i32,float} undef, 0 26 ret void 27} 28define void @g() { 29 %i = insertvalue [2 x [2 x i32]] zeroinitializer, [2 x i32] zeroinitializer, 0 30 ret void 31} 32define void @h() { 33 %i = insertvalue {{i32,float},{i16,double}} zeroinitializer, {i32,float} zeroinitializer, 0 34 ret void 35} 36define void @ax() { 37 %i = insertvalue [2 x [2 x i32]] undef, i32 undef, 1, 1 38 ret void 39} 40define void @bx() { 41 %i = insertvalue {{i32,float},{i16,double}} undef, double undef, 1, 1 42 ret void 43} 44define void @cx() { 45 %i = insertvalue [2 x [2 x i32]] zeroinitializer, i32 zeroinitializer, 1, 1 46 ret void 47} 48define void @dx() { 49 %i = insertvalue {{i32,float},{i16,double}} zeroinitializer, double zeroinitializer, 1, 1 50 ret void 51} 52define void @ex() { 53 %i = insertvalue [2 x [2 x i32]] undef, i32 undef, 0, 1 54 ret void 55} 56define void @fx() { 57 %i = insertvalue {{i32,float},{i16,double}} undef, float undef, 0, 1 58 ret void 59} 60define void @gx() { 61 %i = insertvalue [2 x [2 x i32]] zeroinitializer, i32 zeroinitializer, 0, 1 62 ret void 63} 64define void @hx() { 65 %i = insertvalue {{i32,float},{i16,double}} zeroinitializer, float zeroinitializer, 0, 1 66 ret void 67} 68