Add support for code generation of the one register with immediate form of vorr.
[oota-llvm.git] / test / Transforms / GVN / 2010-03-31-RedundantPHIs.ll
1 ; RUN: opt < %s -basicaa -gvn -S | FileCheck %s
2
3 define i8* @cat(i8* %s1, ...) nounwind {
4 entry:
5   br i1 undef, label %bb, label %bb3
6
7 bb:                                               ; preds = %entry
8   unreachable
9
10 bb3:                                              ; preds = %entry
11   store i8* undef, i8** undef, align 4
12   br i1 undef, label %bb5, label %bb6
13
14 bb5:                                              ; preds = %bb3
15   unreachable
16
17 bb6:                                              ; preds = %bb3
18   br label %bb12
19
20 bb8:                                              ; preds = %bb12
21   br i1 undef, label %bb9, label %bb10
22
23 bb9:                                              ; preds = %bb8
24   %0 = load i8** undef, align 4                   ; <i8*> [#uses=0]
25   %1 = load i8** undef, align 4                   ; <i8*> [#uses=0]
26   br label %bb11
27
28 bb10:                                             ; preds = %bb8
29   br label %bb11
30
31 bb11:                                             ; preds = %bb10, %bb9
32 ; CHECK: bb11:
33 ; CHECK: phi
34 ; CHECK-NOT: phi
35   br label %bb12
36
37 bb12:                                             ; preds = %bb11, %bb6
38 ; CHECK: bb12:
39 ; CHECK: phi
40 ; CHECK-NOT: phi
41   br i1 undef, label %bb8, label %bb13
42
43 bb13:                                             ; preds = %bb12
44 ; CHECK: bb13:
45   ret i8* undef
46 }