fix a globalopt crash on two Adobe-C++ testcases that the recent
[llvm.git] / test / Transforms / GVN / 2010-03-31-RedundantPHIs.ll
blobd6e1c6b76d0b3d709e61ad44569341832657f27f
1 ; RUN: opt < %s -basicaa -gvn -S | FileCheck %s
3 ; CHECK-NOT: load
4 ; CHECK-NOT: phi
6 define i8* @cat(i8* %s1, ...) nounwind {
7 entry:
8   br i1 undef, label %bb, label %bb3
10 bb:                                               ; preds = %entry
11   unreachable
13 bb3:                                              ; preds = %entry
14   store i8* undef, i8** undef, align 4
15   br i1 undef, label %bb5, label %bb6
17 bb5:                                              ; preds = %bb3
18   unreachable
20 bb6:                                              ; preds = %bb3
21   br label %bb12
23 bb8:                                              ; preds = %bb12
24   br i1 undef, label %bb9, label %bb10
26 bb9:                                              ; preds = %bb8
27   %0 = load i8** undef, align 4                   ; <i8*> [#uses=0]
28   %1 = load i8** undef, align 4                   ; <i8*> [#uses=0]
29   br label %bb11
31 bb10:                                             ; preds = %bb8
32   br label %bb11
34 bb11:                                             ; preds = %bb10, %bb9
35   br label %bb12
37 bb12:                                             ; preds = %bb11, %bb6
38   br i1 undef, label %bb8, label %bb13
40 bb13:                                             ; preds = %bb12
41   ret i8* undef