1*9880d681SAndroid Build Coastguard Worker; RUN: opt < %s -licm -disable-output 2*9880d681SAndroid Build Coastguard Worker; PR908 3*9880d681SAndroid Build Coastguard Worker; END. 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker %struct.alloc_chain = type { i8*, %struct.alloc_chain* } 6*9880d681SAndroid Build Coastguard Worker %struct.oggpack_buffer = type { i32, i32, i8*, i8*, i32 } 7*9880d681SAndroid Build Coastguard Worker %struct.vorbis_block = type { float**, %struct.oggpack_buffer, i32, i32, i32, i32, i32, i32, i64, i64, %struct.vorbis_dsp_state*, i8*, i32, i32, i32, %struct.alloc_chain*, i32, i32, i32, i32, i8* } 8*9880d681SAndroid Build Coastguard Worker %struct.vorbis_dsp_state = type { i32, %struct.vorbis_info*, float**, float**, i32, i32, i32, i32, i32, i32, i32, i32, i32, i64, i64, i64, i64, i64, i64, i8* } 9*9880d681SAndroid Build Coastguard Worker %struct.vorbis_info = type { i32, i32, i32, i32, i32, i32, i32, i8* } 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Workerdefine fastcc void @_01forward() { 12*9880d681SAndroid Build Coastguard Workerentry: 13*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb222.preheader, label %bb241 14*9880d681SAndroid Build Coastguard Workercond_true67: ; preds = %cond_true87 15*9880d681SAndroid Build Coastguard Worker br label %cond_next80 16*9880d681SAndroid Build Coastguard Workercond_next80: ; preds = %cond_true87, %cond_true67 17*9880d681SAndroid Build Coastguard Worker br label %bb83 18*9880d681SAndroid Build Coastguard Workerbb83.preheader: ; preds = %cond_true226 19*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb83.us.preheader, label %bb83.preheader1 20*9880d681SAndroid Build Coastguard Workerbb83.us.preheader: ; preds = %bb83.preheader 21*9880d681SAndroid Build Coastguard Worker br label %bb83.us 22*9880d681SAndroid Build Coastguard Workerbb83.us: ; preds = %cond_next80.us, %bb83.us.preheader 23*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true87.us, label %cond_next92.loopexit2 24*9880d681SAndroid Build Coastguard Workercond_next80.us: ; preds = %bb59.loopexit.us, %cond_true67.us 25*9880d681SAndroid Build Coastguard Worker br label %bb83.us 26*9880d681SAndroid Build Coastguard Workercond_true67.us: ; preds = %bb59.loopexit.us 27*9880d681SAndroid Build Coastguard Worker br label %cond_next80.us 28*9880d681SAndroid Build Coastguard Workercond_next.us: ; preds = %cond_true56.us, %cond_true38.us 29*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true56.us, label %bb59.loopexit.us 30*9880d681SAndroid Build Coastguard Workercond_true38.us: ; preds = %cond_true56.us 31*9880d681SAndroid Build Coastguard Worker br label %cond_next.us 32*9880d681SAndroid Build Coastguard Workercond_true56.us: ; preds = %cond_true87.us, %cond_next.us 33*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true38.us, label %cond_next.us 34*9880d681SAndroid Build Coastguard Workercond_true87.us: ; preds = %bb83.us 35*9880d681SAndroid Build Coastguard Worker br label %cond_true56.us 36*9880d681SAndroid Build Coastguard Workerbb59.loopexit.us: ; preds = %cond_next.us 37*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true67.us, label %cond_next80.us 38*9880d681SAndroid Build Coastguard Workerbb83.preheader1: ; preds = %bb83.preheader 39*9880d681SAndroid Build Coastguard Worker br label %bb83 40*9880d681SAndroid Build Coastguard Workerbb83: ; preds = %bb83.preheader1, %cond_next80 41*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next92.loopexit, label %cond_true87 42*9880d681SAndroid Build Coastguard Workercond_true87: ; preds = %bb83 43*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true67, label %cond_next80 44*9880d681SAndroid Build Coastguard Workercond_next92.loopexit: ; preds = %bb83 45*9880d681SAndroid Build Coastguard Worker br label %cond_next92 46*9880d681SAndroid Build Coastguard Workercond_next92.loopexit2: ; preds = %bb83.us 47*9880d681SAndroid Build Coastguard Worker br label %cond_next92 48*9880d681SAndroid Build Coastguard Workercond_next92: ; preds = %cond_true226, %cond_next92.loopexit2, %cond_next92.loopexit 49*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true218.loopexit, label %bb222 50*9880d681SAndroid Build Coastguard Workercond_true139: ; preds = %cond_true202 51*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next195, label %cond_true155 52*9880d681SAndroid Build Coastguard Workercond_true155: ; preds = %cond_true139 53*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true249.i.preheader, label %_encodepart.exit 54*9880d681SAndroid Build Coastguard Workercond_true.i: ; preds = %cond_true115.i 55*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb60.i.preheader, label %cond_next97.i 56*9880d681SAndroid Build Coastguard Workerbb60.i.preheader: ; preds = %cond_true.i 57*9880d681SAndroid Build Coastguard Worker br label %bb60.i 58*9880d681SAndroid Build Coastguard Workerbb60.i: ; preds = %cond_true63.i, %bb60.i.preheader 59*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true63.i, label %cond_next97.i.loopexit 60*9880d681SAndroid Build Coastguard Workercond_true63.i: ; preds = %bb60.i 61*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb60.i, label %cond_next97.i.loopexit 62*9880d681SAndroid Build Coastguard Workerbb86.i.preheader: ; preds = %cond_true115.i 63*9880d681SAndroid Build Coastguard Worker br label %bb86.i 64*9880d681SAndroid Build Coastguard Workerbb86.i: ; preds = %cond_true93.i, %bb86.i.preheader 65*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true93.i, label %cond_next97.i.loopexit3 66*9880d681SAndroid Build Coastguard Workercond_true93.i: ; preds = %bb86.i 67*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next97.i.loopexit3, label %bb86.i 68*9880d681SAndroid Build Coastguard Workercond_next97.i.loopexit: ; preds = %cond_true63.i, %bb60.i 69*9880d681SAndroid Build Coastguard Worker br label %cond_next97.i 70*9880d681SAndroid Build Coastguard Workercond_next97.i.loopexit3: ; preds = %cond_true93.i, %bb86.i 71*9880d681SAndroid Build Coastguard Worker br label %cond_next97.i 72*9880d681SAndroid Build Coastguard Workercond_next97.i: ; preds = %cond_next97.i.loopexit3, %cond_next97.i.loopexit, %cond_true.i 73*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb118.i.loopexit, label %cond_true115.i 74*9880d681SAndroid Build Coastguard Workercond_true115.i.preheader: ; preds = %cond_true249.i 75*9880d681SAndroid Build Coastguard Worker br label %cond_true115.i 76*9880d681SAndroid Build Coastguard Workercond_true115.i: ; preds = %cond_true115.i.preheader, %cond_next97.i 77*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true.i, label %bb86.i.preheader 78*9880d681SAndroid Build Coastguard Workerbb118.i.loopexit: ; preds = %cond_next97.i 79*9880d681SAndroid Build Coastguard Worker br label %bb118.i 80*9880d681SAndroid Build Coastguard Workerbb118.i: ; preds = %cond_true249.i, %bb118.i.loopexit 81*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next204.i, label %cond_true128.i 82*9880d681SAndroid Build Coastguard Workercond_true128.i: ; preds = %bb118.i 83*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true199.i.preheader, label %cond_next204.i 84*9880d681SAndroid Build Coastguard Workercond_true199.i.preheader: ; preds = %cond_true128.i 85*9880d681SAndroid Build Coastguard Worker br label %cond_true199.i 86*9880d681SAndroid Build Coastguard Workercond_true199.i.us: ; No predecessors! 87*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true167.i.us, label %cond_next187.i.us 88*9880d681SAndroid Build Coastguard Workercond_next187.i.us: ; preds = %bb170.i.loopexit.us, %bb170.i.us.cond_next187.i.us_crit_edge, %cond_true199.i.us 89*9880d681SAndroid Build Coastguard Worker unreachable 90*9880d681SAndroid Build Coastguard Workerbb170.i.us.cond_next187.i.us_crit_edge: ; preds = %bb170.i.loopexit.us 91*9880d681SAndroid Build Coastguard Worker br label %cond_next187.i.us 92*9880d681SAndroid Build Coastguard Workercond_true167.i.us: ; preds = %cond_true167.i.us, %cond_true199.i.us 93*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true167.i.us, label %bb170.i.loopexit.us 94*9880d681SAndroid Build Coastguard Workerbb170.i.loopexit.us: ; preds = %cond_true167.i.us 95*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next187.i.us, label %bb170.i.us.cond_next187.i.us_crit_edge 96*9880d681SAndroid Build Coastguard Workercond_true199.i: ; preds = %cond_true199.i, %cond_true199.i.preheader 97*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next204.i.loopexit, label %cond_true199.i 98*9880d681SAndroid Build Coastguard Workercond_next204.i.loopexit: ; preds = %cond_true199.i 99*9880d681SAndroid Build Coastguard Worker br label %cond_next204.i 100*9880d681SAndroid Build Coastguard Workercond_next204.i: ; preds = %cond_next204.i.loopexit, %cond_true128.i, %bb118.i 101*9880d681SAndroid Build Coastguard Worker br label %bb233.i 102*9880d681SAndroid Build Coastguard Workercond_true230.i: ; No predecessors! 103*9880d681SAndroid Build Coastguard Worker %exitcond155 = icmp eq i32 0, %tmp16.i ; <i1> [#uses=0] 104*9880d681SAndroid Build Coastguard Worker unreachable 105*9880d681SAndroid Build Coastguard Workerbb233.i: ; preds = %cond_next204.i 106*9880d681SAndroid Build Coastguard Worker br i1 false, label %_encodepart.exit.loopexit, label %cond_true249.i 107*9880d681SAndroid Build Coastguard Workercond_true249.i.preheader: ; preds = %cond_true155 108*9880d681SAndroid Build Coastguard Worker br label %cond_true249.i 109*9880d681SAndroid Build Coastguard Workercond_true249.i: ; preds = %cond_true249.i.preheader, %bb233.i 110*9880d681SAndroid Build Coastguard Worker %tmp16.i = bitcast i32 0 to i32 ; <i32> [#uses=1] 111*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true115.i.preheader, label %bb118.i 112*9880d681SAndroid Build Coastguard Worker_encodepart.exit.loopexit: ; preds = %bb233.i 113*9880d681SAndroid Build Coastguard Worker br label %_encodepart.exit 114*9880d681SAndroid Build Coastguard Worker_encodepart.exit: ; preds = %_encodepart.exit.loopexit, %cond_true155 115*9880d681SAndroid Build Coastguard Worker br label %cond_next195 116*9880d681SAndroid Build Coastguard Workercond_next195: ; preds = %cond_true202, %_encodepart.exit, %cond_true139 117*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb205.loopexit, label %cond_true202 118*9880d681SAndroid Build Coastguard Workercond_true202.preheader: ; preds = %cond_true218 119*9880d681SAndroid Build Coastguard Worker br label %cond_true202 120*9880d681SAndroid Build Coastguard Workercond_true202: ; preds = %cond_true202.preheader, %cond_next195 121*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_next195, label %cond_true139 122*9880d681SAndroid Build Coastguard Workerbb205.loopexit: ; preds = %cond_next195 123*9880d681SAndroid Build Coastguard Worker br label %bb205 124*9880d681SAndroid Build Coastguard Workerbb205: ; preds = %cond_true218, %bb205.loopexit 125*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true218, label %bb222.outer105.loopexit 126*9880d681SAndroid Build Coastguard Workercond_true218.loopexit: ; preds = %cond_next92 127*9880d681SAndroid Build Coastguard Worker br label %cond_true218 128*9880d681SAndroid Build Coastguard Workercond_true218: ; preds = %cond_true218.loopexit, %bb205 129*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true202.preheader, label %bb205 130*9880d681SAndroid Build Coastguard Workerbb222.preheader: ; preds = %entry 131*9880d681SAndroid Build Coastguard Worker br label %bb222.outer 132*9880d681SAndroid Build Coastguard Workerbb222.outer: ; preds = %bb229, %bb222.preheader 133*9880d681SAndroid Build Coastguard Worker br label %bb222.outer105 134*9880d681SAndroid Build Coastguard Workerbb222.outer105.loopexit: ; preds = %bb205 135*9880d681SAndroid Build Coastguard Worker br label %bb222.outer105 136*9880d681SAndroid Build Coastguard Workerbb222.outer105: ; preds = %bb222.outer105.loopexit, %bb222.outer 137*9880d681SAndroid Build Coastguard Worker br label %bb222 138*9880d681SAndroid Build Coastguard Workerbb222: ; preds = %bb222.outer105, %cond_next92 139*9880d681SAndroid Build Coastguard Worker br i1 false, label %cond_true226, label %bb229 140*9880d681SAndroid Build Coastguard Workercond_true226: ; preds = %bb222 141*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb83.preheader, label %cond_next92 142*9880d681SAndroid Build Coastguard Workerbb229: ; preds = %bb222 143*9880d681SAndroid Build Coastguard Worker br i1 false, label %bb222.outer, label %bb241.loopexit 144*9880d681SAndroid Build Coastguard Workerbb241.loopexit: ; preds = %bb229 145*9880d681SAndroid Build Coastguard Worker br label %bb241 146*9880d681SAndroid Build Coastguard Workerbb241: ; preds = %bb241.loopexit, %entry 147*9880d681SAndroid Build Coastguard Worker ret void 148*9880d681SAndroid Build Coastguard Worker} 149