Home | History | Annotate | Download | only in LICM
      1 ; RUN: opt < %s -licm -disable-output
      2 ; PR908
      3 ; END.
      4 
      5 	%struct.alloc_chain = type { i8*, %struct.alloc_chain* }
      6 	%struct.oggpack_buffer = type { i32, i32, i8*, i8*, i32 }
      7 	%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 	%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 	%struct.vorbis_info = type { i32, i32, i32, i32, i32, i32, i32, i8* }
     10 
     11 define fastcc void @_01forward() {
     12 entry:
     13 	br i1 false, label %bb222.preheader, label %bb241
     14 cond_true67:		; preds = %cond_true87
     15 	br label %cond_next80
     16 cond_next80:		; preds = %cond_true87, %cond_true67
     17 	br label %bb83
     18 bb83.preheader:		; preds = %cond_true226
     19 	br i1 false, label %bb83.us.preheader, label %bb83.preheader1
     20 bb83.us.preheader:		; preds = %bb83.preheader
     21 	br label %bb83.us
     22 bb83.us:		; preds = %cond_next80.us, %bb83.us.preheader
     23 	br i1 false, label %cond_true87.us, label %cond_next92.loopexit2
     24 cond_next80.us:		; preds = %bb59.loopexit.us, %cond_true67.us
     25 	br label %bb83.us
     26 cond_true67.us:		; preds = %bb59.loopexit.us
     27 	br label %cond_next80.us
     28 cond_next.us:		; preds = %cond_true56.us, %cond_true38.us
     29 	br i1 false, label %cond_true56.us, label %bb59.loopexit.us
     30 cond_true38.us:		; preds = %cond_true56.us
     31 	br label %cond_next.us
     32 cond_true56.us:		; preds = %cond_true87.us, %cond_next.us
     33 	br i1 false, label %cond_true38.us, label %cond_next.us
     34 cond_true87.us:		; preds = %bb83.us
     35 	br label %cond_true56.us
     36 bb59.loopexit.us:		; preds = %cond_next.us
     37 	br i1 false, label %cond_true67.us, label %cond_next80.us
     38 bb83.preheader1:		; preds = %bb83.preheader
     39 	br label %bb83
     40 bb83:		; preds = %bb83.preheader1, %cond_next80
     41 	br i1 false, label %cond_next92.loopexit, label %cond_true87
     42 cond_true87:		; preds = %bb83
     43 	br i1 false, label %cond_true67, label %cond_next80
     44 cond_next92.loopexit:		; preds = %bb83
     45 	br label %cond_next92
     46 cond_next92.loopexit2:		; preds = %bb83.us
     47 	br label %cond_next92
     48 cond_next92:		; preds = %cond_true226, %cond_next92.loopexit2, %cond_next92.loopexit
     49 	br i1 false, label %cond_true218.loopexit, label %bb222
     50 cond_true139:		; preds = %cond_true202
     51 	br i1 false, label %cond_next195, label %cond_true155
     52 cond_true155:		; preds = %cond_true139
     53 	br i1 false, label %cond_true249.i.preheader, label %_encodepart.exit
     54 cond_true.i:		; preds = %cond_true115.i
     55 	br i1 false, label %bb60.i.preheader, label %cond_next97.i
     56 bb60.i.preheader:		; preds = %cond_true.i
     57 	br label %bb60.i
     58 bb60.i:		; preds = %cond_true63.i, %bb60.i.preheader
     59 	br i1 false, label %cond_true63.i, label %cond_next97.i.loopexit
     60 cond_true63.i:		; preds = %bb60.i
     61 	br i1 false, label %bb60.i, label %cond_next97.i.loopexit
     62 bb86.i.preheader:		; preds = %cond_true115.i
     63 	br label %bb86.i
     64 bb86.i:		; preds = %cond_true93.i, %bb86.i.preheader
     65 	br i1 false, label %cond_true93.i, label %cond_next97.i.loopexit3
     66 cond_true93.i:		; preds = %bb86.i
     67 	br i1 false, label %cond_next97.i.loopexit3, label %bb86.i
     68 cond_next97.i.loopexit:		; preds = %cond_true63.i, %bb60.i
     69 	br label %cond_next97.i
     70 cond_next97.i.loopexit3:		; preds = %cond_true93.i, %bb86.i
     71 	br label %cond_next97.i
     72 cond_next97.i:		; preds = %cond_next97.i.loopexit3, %cond_next97.i.loopexit, %cond_true.i
     73 	br i1 false, label %bb118.i.loopexit, label %cond_true115.i
     74 cond_true115.i.preheader:		; preds = %cond_true249.i
     75 	br label %cond_true115.i
     76 cond_true115.i:		; preds = %cond_true115.i.preheader, %cond_next97.i
     77 	br i1 false, label %cond_true.i, label %bb86.i.preheader
     78 bb118.i.loopexit:		; preds = %cond_next97.i
     79 	br label %bb118.i
     80 bb118.i:		; preds = %cond_true249.i, %bb118.i.loopexit
     81 	br i1 false, label %cond_next204.i, label %cond_true128.i
     82 cond_true128.i:		; preds = %bb118.i
     83 	br i1 false, label %cond_true199.i.preheader, label %cond_next204.i
     84 cond_true199.i.preheader:		; preds = %cond_true128.i
     85 	br label %cond_true199.i
     86 cond_true199.i.us:		; No predecessors!
     87 	br i1 false, label %cond_true167.i.us, label %cond_next187.i.us
     88 cond_next187.i.us:		; preds = %bb170.i.loopexit.us, %bb170.i.us.cond_next187.i.us_crit_edge, %cond_true199.i.us
     89 	unreachable
     90 bb170.i.us.cond_next187.i.us_crit_edge:		; preds = %bb170.i.loopexit.us
     91 	br label %cond_next187.i.us
     92 cond_true167.i.us:		; preds = %cond_true167.i.us, %cond_true199.i.us
     93 	br i1 false, label %cond_true167.i.us, label %bb170.i.loopexit.us
     94 bb170.i.loopexit.us:		; preds = %cond_true167.i.us
     95 	br i1 false, label %cond_next187.i.us, label %bb170.i.us.cond_next187.i.us_crit_edge
     96 cond_true199.i:		; preds = %cond_true199.i, %cond_true199.i.preheader
     97 	br i1 false, label %cond_next204.i.loopexit, label %cond_true199.i
     98 cond_next204.i.loopexit:		; preds = %cond_true199.i
     99 	br label %cond_next204.i
    100 cond_next204.i:		; preds = %cond_next204.i.loopexit, %cond_true128.i, %bb118.i
    101 	br label %bb233.i
    102 cond_true230.i:		; No predecessors!
    103 	%exitcond155 = icmp eq i32 0, %tmp16.i		; <i1> [#uses=0]
    104 	unreachable
    105 bb233.i:		; preds = %cond_next204.i
    106 	br i1 false, label %_encodepart.exit.loopexit, label %cond_true249.i
    107 cond_true249.i.preheader:		; preds = %cond_true155
    108 	br label %cond_true249.i
    109 cond_true249.i:		; preds = %cond_true249.i.preheader, %bb233.i
    110 	%tmp16.i = bitcast i32 0 to i32		; <i32> [#uses=1]
    111 	br i1 false, label %cond_true115.i.preheader, label %bb118.i
    112 _encodepart.exit.loopexit:		; preds = %bb233.i
    113 	br label %_encodepart.exit
    114 _encodepart.exit:		; preds = %_encodepart.exit.loopexit, %cond_true155
    115 	br label %cond_next195
    116 cond_next195:		; preds = %cond_true202, %_encodepart.exit, %cond_true139
    117 	br i1 false, label %bb205.loopexit, label %cond_true202
    118 cond_true202.preheader:		; preds = %cond_true218
    119 	br label %cond_true202
    120 cond_true202:		; preds = %cond_true202.preheader, %cond_next195
    121 	br i1 false, label %cond_next195, label %cond_true139
    122 bb205.loopexit:		; preds = %cond_next195
    123 	br label %bb205
    124 bb205:		; preds = %cond_true218, %bb205.loopexit
    125 	br i1 false, label %cond_true218, label %bb222.outer105.loopexit
    126 cond_true218.loopexit:		; preds = %cond_next92
    127 	br label %cond_true218
    128 cond_true218:		; preds = %cond_true218.loopexit, %bb205
    129 	br i1 false, label %cond_true202.preheader, label %bb205
    130 bb222.preheader:		; preds = %entry
    131 	br label %bb222.outer
    132 bb222.outer:		; preds = %bb229, %bb222.preheader
    133 	br label %bb222.outer105
    134 bb222.outer105.loopexit:		; preds = %bb205
    135 	br label %bb222.outer105
    136 bb222.outer105:		; preds = %bb222.outer105.loopexit, %bb222.outer
    137 	br label %bb222
    138 bb222:		; preds = %bb222.outer105, %cond_next92
    139 	br i1 false, label %cond_true226, label %bb229
    140 cond_true226:		; preds = %bb222
    141 	br i1 false, label %bb83.preheader, label %cond_next92
    142 bb229:		; preds = %bb222
    143 	br i1 false, label %bb222.outer, label %bb241.loopexit
    144 bb241.loopexit:		; preds = %bb229
    145 	br label %bb241
    146 bb241:		; preds = %bb241.loopexit, %entry
    147 	ret void
    148 }
    149