1 ; RUN: opt < %s -passes=sccp -disable-output
3 target datalayout = "E-p:32:32"
4 target triple = "powerpc-unknown-linux-gnu"
5 %struct.pat_list = type { i32, ptr }
6 @JUMP = external global i32 ; <ptr> [#uses=1]
7 @old_D_pat = external global [16 x i8] ; <ptr> [#uses=0]
9 define void @asearch1(i32 %D, i1 %arg) {
11 %tmp80 = icmp ult i32 0, %D ; <i1> [#uses=1]
12 br i1 %tmp80, label %bb647.preheader, label %cond_true81.preheader
13 cond_true81.preheader: ; preds = %entry
15 bb647.preheader: ; preds = %entry
16 %tmp3.i = call i32 @read( ) ; <i32> [#uses=1]
17 %tmp6.i = add i32 %tmp3.i, 0 ; <i32> [#uses=1]
18 %tmp653 = icmp sgt i32 %tmp6.i, 0 ; <i1> [#uses=1]
19 br i1 %tmp653, label %cond_true654, label %UnifiedReturnBlock
20 cond_true612: ; preds = %cond_true654
22 cond_next624: ; preds = %cond_true654
24 cond_true654: ; preds = %bb647.preheader
25 br i1 %arg, label %cond_true612, label %cond_next624
26 UnifiedReturnBlock: ; preds = %bb647.preheader
30 define void @bitap(i32 %D) {
32 %tmp29 = icmp eq i32 0, 0 ; <i1> [#uses=1]
33 br i1 %tmp29, label %cond_next50, label %cond_next37
34 cond_next37: ; preds = %entry
36 cond_next50: ; preds = %entry
37 %tmp52 = icmp sgt i32 %D, 0 ; <i1> [#uses=1]
38 br i1 %tmp52, label %cond_true53, label %cond_next71
39 cond_true53: ; preds = %cond_next50
40 %tmp54 = load i32, ptr @JUMP ; <i32> [#uses=1]
41 %tmp55 = icmp eq i32 %tmp54, 1 ; <i1> [#uses=1]
42 br i1 %tmp55, label %cond_true56, label %cond_next63
43 cond_true56: ; preds = %cond_true53
44 %tmp57 = bitcast i32 %D to i32 ; <i32> [#uses=1]
45 call void @asearch1( i32 %tmp57 )
47 cond_next63: ; preds = %cond_true53
49 cond_next71: ; preds = %cond_next50
55 define void @initial_value() {
62 br label %cond_next252
63 cond_next208: ; preds = %cond_true260
64 %tmp229 = call i32 @atoi( ) ; <i32> [#uses=1]
65 br label %cond_next252
66 bb217: ; preds = %cond_true260
68 cond_next252: ; preds = %cond_next208, %entry
69 %D.0.0 = phi i32 [ 0, %entry ], [ %tmp229, %cond_next208 ] ; <i32> [#uses=1]
70 %tmp254 = getelementptr ptr, ptr null, i32 1 ; <ptr> [#uses=1]
71 %tmp256 = load ptr, ptr %tmp254 ; <ptr> [#uses=1]
72 %tmp258 = load i8, ptr %tmp256 ; <i8> [#uses=1]
73 %tmp259 = icmp eq i8 %tmp258, 45 ; <i1> [#uses=1]
74 br i1 %tmp259, label %cond_true260, label %bb263
75 cond_true260: ; preds = %cond_next252
76 %tmp205818 = icmp sgt i8 0, -1 ; <i1> [#uses=1]
77 br i1 %tmp205818, label %cond_next208, label %bb217
78 bb263: ; preds = %cond_next252
79 %tmp265 = icmp eq i32 0, 0 ; <i1> [#uses=1]
80 br i1 %tmp265, label %cond_next276, label %cond_true266
81 cond_true266: ; preds = %bb263
83 cond_next276: ; preds = %bb263
84 %tmp278 = icmp eq i32 0, 0 ; <i1> [#uses=1]
85 br i1 %tmp278, label %cond_next298, label %cond_true279
86 cond_true279: ; preds = %cond_next276
88 cond_next298: ; preds = %cond_next276
89 call void @bitap( i32 %D.0.0 )
95 define void @subset_pset() {
100 define void @strcmp() {