[DAG] TransformFPLoadStorePair - early out if we're not loading a simple type
[llvm-project.git] / llvm / test / Transforms / GVN / 2010-03-31-RedundantPHIs.ll
blobca48a12ef6d9e24e247f02232161adf76c2eeda6
1 ; RUN: opt < %s -passes=gvn -S | FileCheck %s
3 ; CHECK-NOT: load
4 ; CHECK-NOT: phi
6 define ptr @cat(ptr %s1, ...) nounwind {
7 entry:
8   br i1 undef, label %bb, label %bb3
10 bb:                                               ; preds = %entry
11   unreachable
13 bb3:                                              ; preds = %entry
14   store ptr undef, ptr 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 ptr, ptr undef, align 4                   ; <ptr> [#uses=0]
28   %1 = load ptr, ptr undef, align 4                   ; <ptr> [#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 ptr undef