blob: b73b7f03f7e7a1c066eb4189e05ee82048d69510 [file] [log] [blame]
Dan Gohman3c7d3082009-09-11 18:01:28 +00001; RUN: opt < %s -analyze -postdomfrontier \
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002; RUN: -disable-verify
Dan Gohmanf17a25c2007-07-18 16:29:46 +00003; ModuleID = '2006-09-26-PostDominanceFrontier.bc'
Tanya Lattnera695f012008-02-14 06:56:27 +00004target datalayout = "e-p:64:64"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00005target triple = "alphaev67-unknown-linux-gnu"
Tanya Lattnera695f012008-02-14 06:56:27 +00006 %struct.FILE = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker*, %struct.FILE*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i32, [44 x i8] }
7 %struct._IO_marker = type { %struct._IO_marker*, %struct.FILE*, i32 }
8@TOP = external global i64* ; <i64**> [#uses=1]
9@BOT = external global i64* ; <i64**> [#uses=1]
10@str = external global [2 x i8] ; <[2 x i8]*> [#uses=0]
Dan Gohmanf17a25c2007-07-18 16:29:46 +000011
Tanya Lattnera695f012008-02-14 06:56:27 +000012declare void @fopen()
Dan Gohmanf17a25c2007-07-18 16:29:46 +000013
Tanya Lattnera695f012008-02-14 06:56:27 +000014define void @main(i8** %argv) {
Dan Gohmanf17a25c2007-07-18 16:29:46 +000015entry:
Tanya Lattnera695f012008-02-14 06:56:27 +000016 %netSelect.i507 = alloca i64, align 8 ; <i64*> [#uses=0]
17 %topStart.i = alloca i64, align 8 ; <i64*> [#uses=0]
18 %topEnd.i = alloca i64, align 8 ; <i64*> [#uses=0]
19 %botStart.i = alloca i64, align 8 ; <i64*> [#uses=0]
20 %botEnd.i = alloca i64, align 8 ; <i64*> [#uses=0]
21 %c1.i154 = alloca i32, align 4 ; <i32*> [#uses=0]
22 %b1.i155 = alloca i32, align 4 ; <i32*> [#uses=0]
23 %t1.i156 = alloca i32, align 4 ; <i32*> [#uses=0]
24 %c1.i = alloca i32, align 4 ; <i32*> [#uses=0]
25 %b1.i = alloca i32, align 4 ; <i32*> [#uses=0]
26 %t1.i = alloca i32, align 4 ; <i32*> [#uses=0]
27 %netSelect.i5 = alloca i64, align 8 ; <i64*> [#uses=0]
28 %netSelect.i = alloca i64, align 8 ; <i64*> [#uses=0]
29 %tmp2.i = getelementptr i8** %argv, i32 1 ; <i8**> [#uses=1]
30 %tmp3.i4 = load i8** %tmp2.i ; <i8*> [#uses=0]
31 call void @fopen( )
32 br i1 false, label %DimensionChannel.exit, label %bb.backedge.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000033
34bb.backedge.i: ; preds = %entry
35 ret void
36
37DimensionChannel.exit: ; preds = %entry
Tanya Lattnera695f012008-02-14 06:56:27 +000038 %tmp13.i137 = malloc i64, i32 0 ; <i64*> [#uses=1]
39 %tmp610.i = malloc i64, i32 0 ; <i64*> [#uses=1]
Dan Gohmanf17a25c2007-07-18 16:29:46 +000040 br label %cond_true.i143
41
42cond_true.i143: ; preds = %cond_true.i143, %DimensionChannel.exit
Tanya Lattnera695f012008-02-14 06:56:27 +000043 %tmp9.i140 = getelementptr i64* %tmp13.i137, i64 0 ; <i64*> [#uses=0]
44 %tmp12.i = getelementptr i64* %tmp610.i, i64 0 ; <i64*> [#uses=0]
45 br i1 false, label %bb18.i144, label %cond_true.i143
Dan Gohmanf17a25c2007-07-18 16:29:46 +000046
47bb18.i144: ; preds = %cond_true.i143
Tanya Lattnera695f012008-02-14 06:56:27 +000048 call void @fopen( )
49 %tmp76.i105 = malloc i64, i32 0 ; <i64*> [#uses=3]
50 %tmp674.i = malloc i64, i32 0 ; <i64*> [#uses=2]
51 %tmp1072.i = malloc i64, i32 0 ; <i64*> [#uses=2]
52 %tmp1470.i = malloc i64, i32 0 ; <i64*> [#uses=1]
Dan Gohmanf17a25c2007-07-18 16:29:46 +000053 br label %cond_true.i114
54
55cond_true.i114: ; preds = %cond_true.i114, %bb18.i144
Tanya Lattnera695f012008-02-14 06:56:27 +000056 %tmp17.i108 = getelementptr i64* %tmp76.i105, i64 0 ; <i64*> [#uses=0]
57 %tmp20.i = getelementptr i64* %tmp674.i, i64 0 ; <i64*> [#uses=0]
58 %tmp23.i111 = getelementptr i64* %tmp1470.i, i64 0 ; <i64*> [#uses=0]
59 br i1 false, label %cond_true40.i, label %cond_true.i114
Dan Gohmanf17a25c2007-07-18 16:29:46 +000060
61cond_true40.i: ; preds = %cond_true40.i, %cond_true.i114
Tanya Lattnera695f012008-02-14 06:56:27 +000062 %tmp33.i115 = getelementptr i64* %tmp1072.i, i64 0 ; <i64*> [#uses=0]
63 br i1 false, label %bb142.i, label %cond_true40.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000064
65cond_next54.i: ; preds = %cond_true76.i
Tanya Lattnera695f012008-02-14 06:56:27 +000066 %tmp57.i = getelementptr i64* %tmp55.i, i64 0 ; <i64*> [#uses=0]
67 br i1 false, label %bb64.i, label %bb69.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000068
69bb64.i: ; preds = %cond_true76.i, %cond_next54.i
Tanya Lattnera695f012008-02-14 06:56:27 +000070 %tmp67.i117 = getelementptr i64* %tmp76.i105, i64 0 ; <i64*> [#uses=0]
71 br i1 false, label %bb114.i, label %cond_true111.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000072
73bb69.i: ; preds = %cond_next54.i
Tanya Lattnera695f012008-02-14 06:56:27 +000074 br i1 false, label %bb79.i, label %cond_true76.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000075
76cond_true76.i: ; preds = %bb142.i, %bb69.i
Tanya Lattnera695f012008-02-14 06:56:27 +000077 %tmp48.i = getelementptr i64* %tmp46.i, i64 0 ; <i64*> [#uses=0]
78 br i1 false, label %bb64.i, label %cond_next54.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000079
80bb79.i: ; preds = %bb69.i
Tanya Lattnera695f012008-02-14 06:56:27 +000081 br i1 false, label %bb114.i, label %cond_true111.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000082
83cond_true111.i: ; preds = %bb79.i, %bb64.i
Tanya Lattnera695f012008-02-14 06:56:27 +000084 %tmp84.i127 = getelementptr i64* %tmp46.i, i64 0 ; <i64*> [#uses=0]
Dan Gohmanf17a25c2007-07-18 16:29:46 +000085 ret void
86
87bb114.i: ; preds = %bb142.i, %bb79.i, %bb64.i
Tanya Lattnera695f012008-02-14 06:56:27 +000088 %tmp117.i = getelementptr i64* %tmp76.i105, i64 0 ; <i64*> [#uses=0]
89 %tmp132.i131 = getelementptr i64* %tmp674.i, i64 0 ; <i64*> [#uses=0]
90 %tmp122.i = getelementptr i64* %tmp1072.i, i64 0 ; <i64*> [#uses=0]
Dan Gohmanf17a25c2007-07-18 16:29:46 +000091 ret void
92
93bb142.i: ; preds = %cond_true40.i
Tanya Lattnera695f012008-02-14 06:56:27 +000094 %tmp46.i = load i64** @BOT ; <i64*> [#uses=2]
95 %tmp55.i = load i64** @TOP ; <i64*> [#uses=1]
96 br i1 false, label %bb114.i, label %cond_true76.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000097}