[InstCombine] Signed saturation patterns
[llvm-core.git] / test / Transforms / NewGVN / 2010-03-31-RedundantPHIs.ll
blob0ff199182f1a2008d0991bd0e23805da4f8ae106
1 ; RUN: opt < %s -basicaa -newgvn -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*, i8** undef, align 4                   ; <i8*> [#uses=0]
28   %1 = load i8*, 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