blob: 212004b24f8da54aea4884c687659c7facc4aae5 [file] [log] [blame]
Rafael Espindolacd06b482012-02-22 03:21:39 +00001; RUN: opt < %s -loop-reduce
2
3define void @resolve_name() nounwind uwtable ssp {
4 br label %while.cond40.preheader
5while.cond132.while.cond.loopexit_crit_edge:
6 br label %while.cond40.preheader
7while.cond40.preheader:
8 br label %while.cond40
9while.cond40:
10 %indvars.iv194 = phi i8* [ null, %while.cond40.preheader ], [ %scevgep, %while.body51 ]
11 %tmp.1 = phi i8* [ undef, %while.cond40.preheader ], [ %incdec.ptr, %while.body51 ]
12 switch i8 undef, label %while.body51 [
13 i8 0, label %if.then59
14 ]
15while.body51: ; preds = %land.end50
David Blaikie79e6c742015-02-27 19:29:02 +000016 %incdec.ptr = getelementptr inbounds i8, i8* %tmp.1, i64 1
17 %scevgep = getelementptr i8, i8* %indvars.iv194, i64 1
Rafael Espindolacd06b482012-02-22 03:21:39 +000018 br label %while.cond40
19if.then59: ; preds = %while.end
20 br i1 undef, label %if.then64, label %if.end113
21if.then64: ; preds = %if.then59
22 %incdec.ptr88.tmp.2 = select i1 undef, i8* undef, i8* undef
23 br label %if.end113
24if.end113: ; preds = %if.then64, %if.then59
25 %tmp.4 = phi i8* [ %incdec.ptr88.tmp.2, %if.then64 ], [ undef, %if.then59 ]
26 %tmp.4195 = ptrtoint i8* %tmp.4 to i64
27 br label %while.cond132.preheader
28while.cond132.preheader: ; preds = %if.end113
29 %cmp133173 = icmp eq i8* %tmp.1, %tmp.4
30 br i1 %cmp133173, label %while.cond40.preheader, label %while.body139.lr.ph
31while.body139.lr.ph: ; preds = %while.cond132.preheader
David Blaikie79e6c742015-02-27 19:29:02 +000032 %scevgep198 = getelementptr i8, i8* %indvars.iv194, i64 0
Rafael Espindolacd06b482012-02-22 03:21:39 +000033 %scevgep198199 = ptrtoint i8* %scevgep198 to i64
34 br label %while.body139
35while.body139: ; preds = %while.body139, %while.body139.lr.ph
36 %start_of_var.0177 = phi i8* [ %tmp.1, %while.body139.lr.ph ], [ null, %while.body139 ]
37 br i1 undef, label %while.cond132.while.cond.loopexit_crit_edge, label %while.body139
38}