fix PR4963: folding insertvalue would sometimes turn a packed struct into
[llvm/avr.git] / test / Transforms / InstCombine / malloc2.ll
blob102422ee5fc7d3dae5b0af33657ea74077545d20
1 ; RUN: opt < %s -instcombine -S | grep {ret i32 0}
2 ; RUN: opt < %s -instcombine -S | not grep malloc
3 ; PR1313
5 define i32 @test1(i32 %argc, i8* %argv, i8* %envp) {
6         %tmp15.i.i.i23 = malloc [2564 x i32]            ; <[2564 x i32]*> [#uses=1]
7         %c = icmp eq [2564 x i32]* %tmp15.i.i.i23, null              ; <i1>:0 [#uses=1]
8         %retval = zext i1 %c to i32             ; <i32> [#uses=1]
9         ret i32 %retval
12 define i32 @test2(i32 %argc, i8* %argv, i8* %envp) {
13         %tmp15.i.i.i23 = malloc [2564 x i32]            ; <[2564 x i32]*> [#uses=1]
14         %X = bitcast [2564 x i32]* %tmp15.i.i.i23 to i32*
15         %c = icmp ne i32* %X, null
16         %retval = zext i1 %c to i32             ; <i32> [#uses=1]
17         ret i32 %retval