199 lines · plain
1; RUN: opt < %s -passes='function(loop-simplify),loop-extract' -disable-output2 3declare i32 @_IO_getc()4 5declare void @__errno_location()6 7define void @yylex() personality ptr @__gcc_personality_v0 {8entry:9 switch i32 0, label %label.126 [10 i32 0, label %return11 i32 61, label %combine12 i32 33, label %combine13 i32 94, label %combine14 i32 37, label %combine15 i32 47, label %combine16 i32 42, label %combine17 i32 62, label %combine18 i32 60, label %combine19 i32 58, label %combine20 i32 124, label %combine21 i32 38, label %combine22 i32 45, label %combine23 i32 43, label %combine24 i32 34, label %string_constant25 i32 39, label %char_constant26 i32 46, label %loopexit.227 i32 57, label %loopexit.228 i32 56, label %loopexit.229 i32 55, label %loopexit.230 i32 54, label %loopexit.231 i32 53, label %loopexit.232 i32 52, label %loopexit.233 i32 51, label %loopexit.234 i32 50, label %loopexit.235 i32 49, label %loopexit.236 i32 48, label %loopexit.237 i32 95, label %letter38 i32 122, label %letter39 i32 121, label %letter40 i32 120, label %letter41 i32 119, label %letter42 i32 118, label %letter43 i32 117, label %letter44 i32 116, label %letter45 i32 115, label %letter46 i32 114, label %letter47 i32 113, label %letter48 i32 112, label %letter49 i32 111, label %letter50 i32 110, label %letter51 i32 109, label %letter52 i32 108, label %letter53 i32 107, label %letter54 i32 106, label %letter55 i32 105, label %letter56 i32 104, label %letter57 i32 103, label %letter58 i32 102, label %letter59 i32 101, label %letter60 i32 100, label %letter61 i32 99, label %letter62 i32 98, label %letter63 i32 97, label %letter64 i32 90, label %letter65 i32 89, label %letter66 i32 88, label %letter67 i32 87, label %letter68 i32 86, label %letter69 i32 85, label %letter70 i32 84, label %letter71 i32 83, label %letter72 i32 82, label %letter73 i32 81, label %letter74 i32 80, label %letter75 i32 79, label %letter76 i32 78, label %letter77 i32 77, label %letter78 i32 75, label %letter79 i32 74, label %letter80 i32 73, label %letter81 i32 72, label %letter82 i32 71, label %letter83 i32 70, label %letter84 i32 69, label %letter85 i32 68, label %letter86 i32 67, label %letter87 i32 66, label %letter88 i32 65, label %letter89 i32 64, label %label.1390 i32 76, label %label.1291 i32 36, label %label.1192 i32 -1, label %label.1093 ]94 95label.10: ; preds = %entry96 ret void97 98label.11: ; preds = %entry99 ret void100 101label.12: ; preds = %entry102 ret void103 104label.13: ; preds = %entry105 ret void106 107letter: ; preds = %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry108 ret void109 110loopexit.2: ; preds = %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry111 switch i32 0, label %shortcirc_next.14 [112 i32 48, label %then.20113 i32 46, label %endif.38114 ]115 116then.20: ; preds = %loopexit.2117 switch i32 0, label %else.4 [118 i32 120, label %then.21119 i32 88, label %then.21120 ]121 122then.21: ; preds = %then.20, %then.20123 ret void124 125else.4: ; preds = %then.20126 ret void127 128shortcirc_next.14: ; preds = %loopexit.2129 ret void130 131endif.38: ; preds = %loopexit.2132 br i1 false, label %then.40, label %then.39133 134then.39: ; preds = %endif.38135 ret void136 137then.40: ; preds = %endif.38138 invoke void @__errno_location( )139 to label %switchexit.2 unwind label %LongJmpBlkPre140 141loopentry.6: ; preds = %endif.52142 switch i32 0, label %switchexit.2 [143 i32 73, label %label.82144 i32 105, label %label.82145 i32 76, label %label.80146 i32 108, label %label.80147 i32 70, label %label.78148 i32 102, label %label.78149 ]150 151label.78: ; preds = %loopentry.6, %loopentry.6152 ret void153 154label.80: ; preds = %loopentry.6, %loopentry.6155 ret void156 157label.82: ; preds = %loopentry.6, %loopentry.6158 %c.0.15.5 = phi i32 [ %tmp.79417, %loopentry.6 ], [ %tmp.79417, %loopentry.6 ] ; <i32> [#uses=0]159 ret void160 161switchexit.2: ; preds = %loopentry.6, %then.40162 br i1 false, label %endif.51, label %loopexit.6163 164endif.51: ; preds = %switchexit.2165 br i1 false, label %endif.52, label %then.52166 167then.52: ; preds = %endif.51168 ret void169 170endif.52: ; preds = %endif.51171 %tmp.79417 = invoke i32 @_IO_getc( )172 to label %loopentry.6 unwind label %LongJmpBlkPre ; <i32> [#uses=2]173 174loopexit.6: ; preds = %switchexit.2175 ret void176 177char_constant: ; preds = %entry178 ret void179 180string_constant: ; preds = %entry181 ret void182 183combine: ; preds = %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry184 ret void185 186label.126: ; preds = %entry187 ret void188 189return: ; preds = %entry190 ret void191 192LongJmpBlkPre: ; preds = %endif.52, %then.40193 %exn = landingpad { ptr, i32 }194 catch ptr null195 ret void196}197 198declare i32 @__gcc_personality_v0(...)199