Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Transforms / JumpThreading / ne-undef.ll
blob437ff3824ef43af5b9431d7266ab22077af64c54
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2 ; RUN: opt -passes=jump-threading -S %s | FileCheck %s
4 declare i1 @cond()
6 define hidden void @hoge(i1 %c1, i32 %x)  {
7 ; CHECK-LABEL: @hoge(
8 ; CHECK-NEXT:  bb:
9 ; CHECK-NEXT:    br label [[BB13:%.*]]
10 ; CHECK:       bb4:
11 ; CHECK-NEXT:    [[TMP3:%.*]] = icmp ne i32 [[TMP7:%.*]], undef
12 ; CHECK-NEXT:    br i1 [[TMP3]], label [[BB5:%.*]], label [[BB13]]
13 ; CHECK:       bb5:
14 ; CHECK-NEXT:    br label [[BB6:%.*]]
15 ; CHECK:       bb6:
16 ; CHECK-NEXT:    [[TMP7]] = phi i32 [ [[TMP7]], [[BB5]] ], [ [[X:%.*]], [[BB8:%.*]] ]
17 ; CHECK-NEXT:    [[C:%.*]] = call i1 @cond()
18 ; CHECK-NEXT:    br i1 [[C]], label [[BB4:%.*]], label [[BB8]]
19 ; CHECK:       bb8:
20 ; CHECK-NEXT:    br label [[BB6]]
21 ; CHECK:       bb13:
22 ; CHECK-NEXT:    ret void
24 bb:
25   br i1 false, label %bb1, label %bb13
27 bb1:                                              ; preds = %bb
28   br label %bb2
30 bb2:                                              ; preds = %bb12, %bb1
31   %tmp = phi i32 [ 10, %bb1 ], [ %tmp7, %bb12 ]
32   %tmp3 = icmp ne i32 %tmp, undef
33   br label %bb4
35 bb4:                                              ; preds = %bb2
36   br i1 %tmp3, label %bb5, label %bb13
38 bb5:                                              ; preds = %bb4
39   br label %bb6
41 bb6:                                              ; preds = %bb8, %bb5
42   %tmp7 = phi i32 [ %tmp, %bb5 ], [ %x, %bb8 ]
43   %c = call i1 @cond()
44   br i1 %c, label %bb9, label %bb8
46 bb8:                                              ; preds = %bb6
47   br label %bb6
49 bb9:                                              ; preds = %bb6
50   br label %bb10
52 bb10:                                             ; preds = %bb9
53   br label %bb12
55 bb12:                                             ; preds = %bb10
56   br label %bb2
58 bb13:                                             ; preds = %bb4
59   ret void