Eric Christopher | cee313d | 2019-04-17 04:52:47 +0000 | [diff] [blame] | 1 | ; RUN: opt < %s -loop-extract -disable-output |
| 2 | |
| 3 | declare i32 @_IO_getc() |
| 4 | |
| 5 | declare void @__errno_location() |
| 6 | |
| 7 | define void @yylex() personality i32 (...)* @__gcc_personality_v0 { |
| 8 | entry: |
| 9 | switch i32 0, label %label.126 [ |
| 10 | i32 0, label %return |
| 11 | i32 61, label %combine |
| 12 | i32 33, label %combine |
| 13 | i32 94, label %combine |
| 14 | i32 37, label %combine |
| 15 | i32 47, label %combine |
| 16 | i32 42, label %combine |
| 17 | i32 62, label %combine |
| 18 | i32 60, label %combine |
| 19 | i32 58, label %combine |
| 20 | i32 124, label %combine |
| 21 | i32 38, label %combine |
| 22 | i32 45, label %combine |
| 23 | i32 43, label %combine |
| 24 | i32 34, label %string_constant |
| 25 | i32 39, label %char_constant |
| 26 | i32 46, label %loopexit.2 |
| 27 | i32 57, label %loopexit.2 |
| 28 | i32 56, label %loopexit.2 |
| 29 | i32 55, label %loopexit.2 |
| 30 | i32 54, label %loopexit.2 |
| 31 | i32 53, label %loopexit.2 |
| 32 | i32 52, label %loopexit.2 |
| 33 | i32 51, label %loopexit.2 |
| 34 | i32 50, label %loopexit.2 |
| 35 | i32 49, label %loopexit.2 |
| 36 | i32 48, label %loopexit.2 |
| 37 | i32 95, label %letter |
| 38 | i32 122, label %letter |
| 39 | i32 121, label %letter |
| 40 | i32 120, label %letter |
| 41 | i32 119, label %letter |
| 42 | i32 118, label %letter |
| 43 | i32 117, label %letter |
| 44 | i32 116, label %letter |
| 45 | i32 115, label %letter |
| 46 | i32 114, label %letter |
| 47 | i32 113, label %letter |
| 48 | i32 112, label %letter |
| 49 | i32 111, label %letter |
| 50 | i32 110, label %letter |
| 51 | i32 109, label %letter |
| 52 | i32 108, label %letter |
| 53 | i32 107, label %letter |
| 54 | i32 106, label %letter |
| 55 | i32 105, label %letter |
| 56 | i32 104, label %letter |
| 57 | i32 103, label %letter |
| 58 | i32 102, label %letter |
| 59 | i32 101, label %letter |
| 60 | i32 100, label %letter |
| 61 | i32 99, label %letter |
| 62 | i32 98, label %letter |
| 63 | i32 97, label %letter |
| 64 | i32 90, label %letter |
| 65 | i32 89, label %letter |
| 66 | i32 88, label %letter |
| 67 | i32 87, label %letter |
| 68 | i32 86, label %letter |
| 69 | i32 85, label %letter |
| 70 | i32 84, label %letter |
| 71 | i32 83, label %letter |
| 72 | i32 82, label %letter |
| 73 | i32 81, label %letter |
| 74 | i32 80, label %letter |
| 75 | i32 79, label %letter |
| 76 | i32 78, label %letter |
| 77 | i32 77, label %letter |
| 78 | i32 75, label %letter |
| 79 | i32 74, label %letter |
| 80 | i32 73, label %letter |
| 81 | i32 72, label %letter |
| 82 | i32 71, label %letter |
| 83 | i32 70, label %letter |
| 84 | i32 69, label %letter |
| 85 | i32 68, label %letter |
| 86 | i32 67, label %letter |
| 87 | i32 66, label %letter |
| 88 | i32 65, label %letter |
| 89 | i32 64, label %label.13 |
| 90 | i32 76, label %label.12 |
| 91 | i32 36, label %label.11 |
| 92 | i32 -1, label %label.10 |
| 93 | ] |
| 94 | |
| 95 | label.10: ; preds = %entry |
| 96 | ret void |
| 97 | |
| 98 | label.11: ; preds = %entry |
| 99 | ret void |
| 100 | |
| 101 | label.12: ; preds = %entry |
| 102 | ret void |
| 103 | |
| 104 | label.13: ; preds = %entry |
| 105 | ret void |
| 106 | |
| 107 | letter: ; 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, %entry |
| 108 | ret void |
| 109 | |
| 110 | loopexit.2: ; preds = %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry |
| 111 | switch i32 0, label %shortcirc_next.14 [ |
| 112 | i32 48, label %then.20 |
| 113 | i32 46, label %endif.38 |
| 114 | ] |
| 115 | |
| 116 | then.20: ; preds = %loopexit.2 |
| 117 | switch i32 0, label %else.4 [ |
| 118 | i32 120, label %then.21 |
| 119 | i32 88, label %then.21 |
| 120 | ] |
| 121 | |
| 122 | then.21: ; preds = %then.20, %then.20 |
| 123 | ret void |
| 124 | |
| 125 | else.4: ; preds = %then.20 |
| 126 | ret void |
| 127 | |
| 128 | shortcirc_next.14: ; preds = %loopexit.2 |
| 129 | ret void |
| 130 | |
| 131 | endif.38: ; preds = %loopexit.2 |
| 132 | br i1 false, label %then.40, label %then.39 |
| 133 | |
| 134 | then.39: ; preds = %endif.38 |
| 135 | ret void |
| 136 | |
| 137 | then.40: ; preds = %endif.38 |
| 138 | invoke void @__errno_location( ) |
| 139 | to label %switchexit.2 unwind label %LongJmpBlkPre |
| 140 | |
| 141 | loopentry.6: ; preds = %endif.52 |
| 142 | switch i32 0, label %switchexit.2 [ |
| 143 | i32 73, label %label.82 |
| 144 | i32 105, label %label.82 |
| 145 | i32 76, label %label.80 |
| 146 | i32 108, label %label.80 |
| 147 | i32 70, label %label.78 |
| 148 | i32 102, label %label.78 |
| 149 | ] |
| 150 | |
| 151 | label.78: ; preds = %loopentry.6, %loopentry.6 |
| 152 | ret void |
| 153 | |
| 154 | label.80: ; preds = %loopentry.6, %loopentry.6 |
| 155 | ret void |
| 156 | |
| 157 | label.82: ; preds = %loopentry.6, %loopentry.6 |
| 158 | %c.0.15.5 = phi i32 [ %tmp.79417, %loopentry.6 ], [ %tmp.79417, %loopentry.6 ] ; <i32> [#uses=0] |
| 159 | ret void |
| 160 | |
| 161 | switchexit.2: ; preds = %loopentry.6, %then.40 |
| 162 | br i1 false, label %endif.51, label %loopexit.6 |
| 163 | |
| 164 | endif.51: ; preds = %switchexit.2 |
| 165 | br i1 false, label %endif.52, label %then.52 |
| 166 | |
| 167 | then.52: ; preds = %endif.51 |
| 168 | ret void |
| 169 | |
| 170 | endif.52: ; preds = %endif.51 |
| 171 | %tmp.79417 = invoke i32 @_IO_getc( ) |
| 172 | to label %loopentry.6 unwind label %LongJmpBlkPre ; <i32> [#uses=2] |
| 173 | |
| 174 | loopexit.6: ; preds = %switchexit.2 |
| 175 | ret void |
| 176 | |
| 177 | char_constant: ; preds = %entry |
| 178 | ret void |
| 179 | |
| 180 | string_constant: ; preds = %entry |
| 181 | ret void |
| 182 | |
| 183 | combine: ; preds = %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry, %entry |
| 184 | ret void |
| 185 | |
| 186 | label.126: ; preds = %entry |
| 187 | ret void |
| 188 | |
| 189 | return: ; preds = %entry |
| 190 | ret void |
| 191 | |
| 192 | LongJmpBlkPre: ; preds = %endif.52, %then.40 |
| 193 | %exn = landingpad { i8*, i32 } |
| 194 | catch i8* null |
| 195 | ret void |
| 196 | } |
| 197 | |
| 198 | declare i32 @__gcc_personality_v0(...) |