Jonas Paulsson | 8a7bd24 | 2017-03-17 06:47:08 +0000 | [diff] [blame^] | 1 | ; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z13 -verify-machineinstrs | FileCheck %s |
| 2 | ; |
| 3 | ; Regression test for a machine verifier complaint discovered with llvm-stress. |
| 4 | ; Test that splitting of a 128 bit store does not result in use of undef phys reg. |
| 5 | |
| 6 | define void @autogen_SD29355(i8*, i32*, i64*, i32, i64, i8) { |
| 7 | ; CHECK: .text |
| 8 | BB: |
| 9 | %A4 = alloca double |
| 10 | %A3 = alloca float |
| 11 | %A2 = alloca i8 |
| 12 | %A1 = alloca double |
| 13 | %A = alloca i64 |
| 14 | %L = load i8, i8* %0 |
| 15 | store i8 33, i8* %0 |
| 16 | %E = extractelement <8 x i1> zeroinitializer, i32 2 |
| 17 | br label %CF261 |
| 18 | |
| 19 | CF261: ; preds = %BB |
| 20 | %Shuff = shufflevector <2 x i16> zeroinitializer, <2 x i16> zeroinitializer, <2 x i32> <i32 undef, i32 3> |
| 21 | %I = insertelement <8 x i8> zeroinitializer, i8 69, i32 3 |
| 22 | %B = udiv i8 -99, 33 |
| 23 | %Tr = trunc i64 -1 to i32 |
| 24 | %Sl = select i1 true, i64* %2, i64* %2 |
| 25 | %L5 = load i64, i64* %Sl |
| 26 | store i64 %L5, i64* %2 |
| 27 | %E6 = extractelement <4 x i16> zeroinitializer, i32 3 |
| 28 | %Shuff7 = shufflevector <4 x i16> zeroinitializer, <4 x i16> zeroinitializer, <4 x i32> <i32 6, i32 0, i32 2, i32 4> |
| 29 | %I8 = insertelement <4 x i16> %Shuff7, i16 27357, i32 0 |
| 30 | %B9 = xor <4 x i16> %Shuff7, %Shuff7 |
| 31 | %Tr10 = trunc i64 %4 to i1 |
| 32 | br label %CF239 |
| 33 | |
| 34 | CF239: ; preds = %CF261 |
| 35 | %Sl11 = select i1 %Tr10, i16 -1, i16 27357 |
| 36 | %L12 = load i8, i8* %0 |
| 37 | store i64 %L5, i64* %A |
| 38 | %E13 = extractelement <8 x i1> zeroinitializer, i32 0 |
| 39 | br label %CF238 |
| 40 | |
| 41 | CF238: ; preds = %CF238, %CF239 |
| 42 | %Shuff14 = shufflevector <4 x i16> zeroinitializer, <4 x i16> zeroinitializer, <4 x i32> <i32 undef, i32 5, i32 7, i32 1> |
| 43 | %I15 = insertelement <4 x i16> %Shuff7, i16 -1, i32 1 |
| 44 | %B16 = fsub double 0xDACBFCEAC1C99968, 0xDACBFCEAC1C99968 |
| 45 | %Sl17 = select i1 %E, i64* %Sl, i64* %Sl |
| 46 | %Cmp = icmp ugt i16 %E6, 27357 |
| 47 | br i1 %Cmp, label %CF238, label %CF251 |
| 48 | |
| 49 | CF251: ; preds = %CF238 |
| 50 | %L18 = load i64, i64* %Sl17 |
| 51 | store i64 0, i64* %Sl |
| 52 | %E19 = extractelement <4 x i16> zeroinitializer, i32 1 |
| 53 | %Shuff20 = shufflevector <2 x i1> zeroinitializer, <2 x i1> zeroinitializer, <2 x i32> <i32 undef, i32 2> |
| 54 | %I21 = insertelement <2 x i1> zeroinitializer, i1 true, i32 0 |
| 55 | %FC = fptoui float 0x3BE9BD7D80000000 to i1 |
| 56 | br label %CF237 |
| 57 | |
| 58 | CF237: ; preds = %CF237, %CF271, %CF268, %CF251 |
| 59 | %Sl22 = select i1 true, i16 -1, i16 %E6 |
| 60 | %Cmp23 = icmp sgt i1 %E13, true |
| 61 | br i1 %Cmp23, label %CF237, label %CF256 |
| 62 | |
| 63 | CF256: ; preds = %CF256, %CF237 |
| 64 | %L24 = load i64, i64* %A |
| 65 | store i64 %L5, i64* %Sl17 |
| 66 | %E25 = extractelement <4 x i16> zeroinitializer, i32 3 |
| 67 | %Shuff26 = shufflevector <4 x i16> %Shuff7, <4 x i16> zeroinitializer, <4 x i32> <i32 2, i32 4, i32 6, i32 undef> |
| 68 | %I27 = insertelement <4 x i16> zeroinitializer, i16 %Sl22, i32 0 |
| 69 | %B28 = udiv i16 %Sl11, -1 |
| 70 | %ZE = zext i1 true to i32 |
| 71 | %Sl29 = select i1 true, i8 -99, i8 33 |
| 72 | %Cmp30 = fcmp ord double 0xC275146F92573C4, 0x16FB351AF5F9C998 |
| 73 | br i1 %Cmp30, label %CF256, label %CF271 |
| 74 | |
| 75 | CF271: ; preds = %CF256 |
| 76 | %L31 = load i8, i8* %0 |
| 77 | store i64 %L5, i64* %Sl |
| 78 | %E32 = extractelement <4 x i16> zeroinitializer, i32 2 |
| 79 | %Shuff33 = shufflevector <1 x i32> zeroinitializer, <1 x i32> zeroinitializer, <1 x i32> <i32 1> |
| 80 | %I34 = insertelement <4 x i16> zeroinitializer, i16 %Sl11, i32 1 |
| 81 | %PC = bitcast double* %A4 to i1* |
| 82 | %Sl35 = select i1 %FC, i32* %1, i32* %1 |
| 83 | %Cmp36 = icmp ult <2 x i1> %Shuff20, %Shuff20 |
| 84 | %L37 = load i64, i64* %Sl |
| 85 | store i64 %L5, i64* %Sl |
| 86 | %E38 = extractelement <2 x i32> zeroinitializer, i32 0 |
| 87 | %Shuff39 = shufflevector <4 x i16> zeroinitializer, <4 x i16> %Shuff7, <4 x i32> <i32 undef, i32 1, i32 3, i32 undef> |
| 88 | %I40 = insertelement <4 x i16> %Shuff7, i16 %E19, i32 1 |
| 89 | %ZE41 = zext i1 true to i16 |
| 90 | %Sl42 = select i1 true, i1 true, i1 true |
| 91 | br i1 %Sl42, label %CF237, label %CF246 |
| 92 | |
| 93 | CF246: ; preds = %CF246, %CF271 |
| 94 | %Cmp43 = icmp uge i64 %L37, %L18 |
| 95 | br i1 %Cmp43, label %CF246, label %CF249 |
| 96 | |
| 97 | CF249: ; preds = %CF249, %CF263, %CF246 |
| 98 | %L44 = load i64, i64* %A |
| 99 | store i64 %L5, i64* %Sl17 |
| 100 | %E45 = extractelement <4 x i16> %Shuff14, i32 2 |
| 101 | %Shuff46 = shufflevector <1 x i32> zeroinitializer, <1 x i32> zeroinitializer, <1 x i32> <i32 1> |
| 102 | %I47 = insertelement <4 x i16> %Shuff7, i16 %E6, i32 1 |
| 103 | %Sl48 = select i1 %FC, double 0xDACBFCEAC1C99968, double 0xDACBFCEAC1C99968 |
| 104 | %Cmp49 = fcmp ult double 0x9E8F85AE4F8D6C2C, 0x5A7FED9E637D2C1C |
| 105 | br i1 %Cmp49, label %CF249, label %CF263 |
| 106 | |
| 107 | CF263: ; preds = %CF249 |
| 108 | %L50 = load i64, i64* %Sl |
| 109 | store i1 true, i1* %PC |
| 110 | %E51 = extractelement <2 x i1> zeroinitializer, i32 0 |
| 111 | br i1 %E51, label %CF249, label %CF259 |
| 112 | |
| 113 | CF259: ; preds = %CF259, %CF263 |
| 114 | %Shuff52 = shufflevector <4 x i64> zeroinitializer, <4 x i64> zeroinitializer, <4 x i32> <i32 undef, i32 5, i32 7, i32 1> |
| 115 | %I53 = insertelement <4 x i16> zeroinitializer, i16 -1, i32 1 |
| 116 | %B54 = or <2 x i16> %Shuff, zeroinitializer |
| 117 | %Sl55 = select i1 %Sl42, i16 %Sl22, i16 27357 |
| 118 | %Cmp56 = icmp uge i1 %Sl42, true |
| 119 | br i1 %Cmp56, label %CF259, label %CF268 |
| 120 | |
| 121 | CF268: ; preds = %CF259 |
| 122 | %L57 = load i8, i8* %0 |
| 123 | store i64 %L5, i64* %Sl |
| 124 | %E58 = extractelement <4 x i16> %Shuff14, i32 1 |
| 125 | %Shuff59 = shufflevector <1 x i32> %Shuff33, <1 x i32> %Shuff33, <1 x i32> zeroinitializer |
| 126 | %I60 = insertelement <2 x i1> %Shuff20, i1 true, i32 0 |
| 127 | %B61 = frem double 0x5A7FED9E637D2C1C, %B16 |
| 128 | %FC62 = sitofp i8 -99 to float |
| 129 | %Sl63 = select i1 true, i16 %E19, i16 -1 |
| 130 | %Cmp64 = icmp slt i16 %Sl63, 27357 |
| 131 | br i1 %Cmp64, label %CF237, label %CF241 |
| 132 | |
| 133 | CF241: ; preds = %CF241, %CF265, %CF268 |
| 134 | %L65 = load i1, i1* %PC |
| 135 | br i1 %L65, label %CF241, label %CF262 |
| 136 | |
| 137 | CF262: ; preds = %CF262, %CF270, %CF241 |
| 138 | store i64 %L37, i64* %Sl |
| 139 | %E66 = extractelement <4 x i16> %Shuff14, i32 2 |
| 140 | %Shuff67 = shufflevector <4 x i16> %Shuff26, <4 x i16> %Shuff7, <4 x i32> <i32 1, i32 3, i32 undef, i32 7> |
| 141 | %I68 = insertelement <2 x i32> zeroinitializer, i32 454413, i32 1 |
| 142 | %B69 = sub <4 x i16> %I8, %Shuff7 |
| 143 | %Tr70 = trunc i16 %E32 to i1 |
| 144 | br i1 %Tr70, label %CF262, label %CF270 |
| 145 | |
| 146 | CF270: ; preds = %CF262 |
| 147 | %Sl71 = select i1 %Sl42, <8 x i1> zeroinitializer, <8 x i1> zeroinitializer |
| 148 | %Cmp72 = icmp sge <2 x i16> %B54, zeroinitializer |
| 149 | %L73 = load i64, i64* %Sl |
| 150 | store i64 %L73, i64* %Sl |
| 151 | %E74 = extractelement <8 x i1> %Sl71, i32 5 |
| 152 | br i1 %E74, label %CF262, label %CF265 |
| 153 | |
| 154 | CF265: ; preds = %CF270 |
| 155 | %Shuff75 = shufflevector <2 x i32> %I68, <2 x i32> zeroinitializer, <2 x i32> <i32 undef, i32 2> |
| 156 | %I76 = insertelement <2 x i1> %Cmp72, i1 %Sl42, i32 0 |
| 157 | %B77 = xor i16 27357, %B28 |
| 158 | %PC78 = bitcast i1* %PC to i32* |
| 159 | %Sl79 = select i1 %Cmp64, <4 x i16> %Shuff14, <4 x i16> %Shuff7 |
| 160 | %Cmp80 = icmp slt <2 x i1> zeroinitializer, %Shuff20 |
| 161 | %L81 = load i1, i1* %PC |
| 162 | br i1 %L81, label %CF241, label %CF245 |
| 163 | |
| 164 | CF245: ; preds = %CF245, %CF265 |
| 165 | store i1 true, i1* %PC |
| 166 | %E82 = extractelement <1 x i32> %Shuff33, i32 0 |
| 167 | %Shuff83 = shufflevector <4 x i16> zeroinitializer, <4 x i16> %Shuff14, <4 x i32> <i32 2, i32 4, i32 6, i32 0> |
| 168 | %I84 = insertelement <2 x i1> %Shuff20, i1 %Sl42, i32 0 |
| 169 | %FC85 = uitofp i1 %Cmp to float |
| 170 | %Sl86 = select i1 %Tr10, i16 -1, i16 %Sl63 |
| 171 | %Cmp87 = icmp ugt <2 x i1> %I76, %I60 |
| 172 | %L88 = load i32, i32* %PC78 |
| 173 | store i8 33, i8* %0 |
| 174 | %E89 = extractelement <2 x i32> zeroinitializer, i32 1 |
| 175 | %Shuff90 = shufflevector <4 x i64> zeroinitializer, <4 x i64> %Shuff52, <4 x i32> <i32 0, i32 undef, i32 4, i32 6> |
| 176 | %I91 = insertelement <2 x i32> %Shuff75, i32 %ZE, i32 0 |
| 177 | %B92 = add i64 -1, %L73 |
| 178 | %Tr93 = trunc i64 0 to i16 |
| 179 | %Sl94 = select i1 %FC, i64 %L37, i64 %L5 |
| 180 | %Cmp95 = icmp sge i64 454853, %B92 |
| 181 | br i1 %Cmp95, label %CF245, label %CF257 |
| 182 | |
| 183 | CF257: ; preds = %CF245 |
| 184 | %L96 = load i64, i64* %Sl |
| 185 | store i1 true, i1* %PC |
| 186 | %E97 = extractelement <2 x i1> %Shuff20, i32 1 |
| 187 | br label %CF |
| 188 | |
| 189 | CF: ; preds = %CF, %CF258, %CF257 |
| 190 | %Shuff98 = shufflevector <2 x i1> %Cmp80, <2 x i1> zeroinitializer, <2 x i32> <i32 undef, i32 0> |
| 191 | %I99 = insertelement <2 x i1> %Shuff98, i1 %Cmp30, i32 0 |
| 192 | %B100 = sub <8 x i8> zeroinitializer, zeroinitializer |
| 193 | %FC101 = uitofp <2 x i1> %I99 to <2 x double> |
| 194 | %Sl102 = select i1 %FC, i16 %Sl63, i16 %E58 |
| 195 | %Cmp103 = fcmp ord double %B16, 0xDACBFCEAC1C99968 |
| 196 | br i1 %Cmp103, label %CF, label %CF240 |
| 197 | |
| 198 | CF240: ; preds = %CF240, %CF260, %CF |
| 199 | %L104 = load i32, i32* %1 |
| 200 | store i1 true, i1* %PC |
| 201 | %E105 = extractelement <4 x i16> %I8, i32 1 |
| 202 | %Shuff106 = shufflevector <4 x i16> %Shuff7, <4 x i16> %I34, <4 x i32> <i32 4, i32 undef, i32 undef, i32 2> |
| 203 | %I107 = insertelement <2 x i1> %Cmp87, i1 %FC, i32 0 |
| 204 | %ZE108 = zext <4 x i16> %B69 to <4 x i64> |
| 205 | %Sl109 = select i1 %Cmp, i16 27357, i16 %Sl102 |
| 206 | %Cmp110 = icmp sge <4 x i16> %B9, zeroinitializer |
| 207 | %L111 = load i64, i64* %Sl |
| 208 | store i8 %L57, i8* %0 |
| 209 | %E112 = extractelement <2 x i1> %Shuff98, i32 0 |
| 210 | br i1 %E112, label %CF240, label %CF254 |
| 211 | |
| 212 | CF254: ; preds = %CF254, %CF267, %CF264, %CF240 |
| 213 | %Shuff113 = shufflevector <2 x i32> %I68, <2 x i32> zeroinitializer, <2 x i32> undef |
| 214 | %I114 = insertelement <4 x i16> zeroinitializer, i16 27357, i32 3 |
| 215 | %B115 = and i16 %Sl102, %Sl11 |
| 216 | %FC116 = uitofp i16 %B115 to double |
| 217 | %Sl117 = select i1 %L81, i32* %1, i32* %1 |
| 218 | %Cmp118 = icmp ne i64 %Sl94, %L50 |
| 219 | br i1 %Cmp118, label %CF254, label %CF267 |
| 220 | |
| 221 | CF267: ; preds = %CF254 |
| 222 | %L119 = load i64, i64* %Sl |
| 223 | store i32 %ZE, i32* %PC78 |
| 224 | %E120 = extractelement <4 x i16> zeroinitializer, i32 1 |
| 225 | %Shuff121 = shufflevector <1 x i32> %Shuff33, <1 x i32> %Shuff33, <1 x i32> zeroinitializer |
| 226 | %I122 = insertelement <1 x i32> %Shuff121, i32 %E82, i32 0 |
| 227 | %B123 = mul <4 x i16> %I40, %I34 |
| 228 | %Sl124 = select i1 %FC, <4 x i1> %Cmp110, <4 x i1> %Cmp110 |
| 229 | %Cmp125 = icmp ne <4 x i64> %ZE108, zeroinitializer |
| 230 | %L126 = load i64, i64* %Sl |
| 231 | store i32 %ZE, i32* %Sl117 |
| 232 | %E127 = extractelement <2 x i1> %Cmp87, i32 1 |
| 233 | br i1 %E127, label %CF254, label %CF264 |
| 234 | |
| 235 | CF264: ; preds = %CF267 |
| 236 | %Shuff128 = shufflevector <4 x i16> %Shuff83, <4 x i16> %I47, <4 x i32> <i32 undef, i32 2, i32 undef, i32 6> |
| 237 | %I129 = insertelement <4 x i16> %Shuff67, i16 %Sl109, i32 2 |
| 238 | %B130 = add i32 %3, %E38 |
| 239 | %FC131 = sitofp i32 %3 to float |
| 240 | %Sl132 = select i1 %Sl42, i64 %L24, i64 %L5 |
| 241 | %Cmp133 = icmp eq <2 x i1> %I99, %Shuff20 |
| 242 | %L134 = load i32, i32* %PC78 |
| 243 | store i32 %L104, i32* %1 |
| 244 | %E135 = extractelement <8 x i1> zeroinitializer, i32 4 |
| 245 | br i1 %E135, label %CF254, label %CF260 |
| 246 | |
| 247 | CF260: ; preds = %CF264 |
| 248 | %Shuff136 = shufflevector <1 x i32> %Shuff59, <1 x i32> %Shuff121, <1 x i32> undef |
| 249 | %I137 = insertelement <4 x i16> %Shuff67, i16 %Sl55, i32 3 |
| 250 | %B138 = lshr <1 x i32> %Shuff33, %Shuff59 |
| 251 | %Sl139 = select i1 %E135, i64 %L119, i64 %L126 |
| 252 | %Cmp140 = icmp slt i8 -99, %Sl29 |
| 253 | br i1 %Cmp140, label %CF240, label %CF247 |
| 254 | |
| 255 | CF247: ; preds = %CF247, %CF272, %CF260 |
| 256 | %L141 = load i32, i32* %Sl117 |
| 257 | store i8 %5, i8* %0 |
| 258 | %E142 = extractelement <2 x i1> %Cmp36, i32 1 |
| 259 | br i1 %E142, label %CF247, label %CF272 |
| 260 | |
| 261 | CF272: ; preds = %CF247 |
| 262 | %Shuff143 = shufflevector <4 x i64> %Shuff90, <4 x i64> %Shuff52, <4 x i32> <i32 6, i32 undef, i32 2, i32 undef> |
| 263 | %I144 = insertelement <1 x i32> %Shuff121, i32 %L88, i32 0 |
| 264 | %Tr145 = trunc i64 %Sl139 to i16 |
| 265 | %Sl146 = select i1 %Cmp49, i32 %L134, i32 %L104 |
| 266 | %L147 = load i32, i32* %PC78 |
| 267 | store i32 %Tr, i32* %Sl117 |
| 268 | %E148 = extractelement <4 x i16> %Shuff67, i32 3 |
| 269 | %Shuff149 = shufflevector <4 x i16> zeroinitializer, <4 x i16> %Shuff67, <4 x i32> <i32 2, i32 4, i32 6, i32 0> |
| 270 | %I150 = insertelement <2 x i1> zeroinitializer, i1 %E127, i32 0 |
| 271 | %B151 = fdiv double 0x16FB351AF5F9C998, 0xC275146F92573C4 |
| 272 | %FC152 = uitofp <1 x i32> %I144 to <1 x double> |
| 273 | %Sl153 = select i1 %Cmp118, <1 x i32> %Shuff136, <1 x i32> %Shuff121 |
| 274 | %Cmp154 = icmp ule i8 %5, %Sl29 |
| 275 | br i1 %Cmp154, label %CF247, label %CF253 |
| 276 | |
| 277 | CF253: ; preds = %CF253, %CF269, %CF272 |
| 278 | %L155 = load i32, i32* %Sl117 |
| 279 | store i32 %L141, i32* %PC78 |
| 280 | %E156 = extractelement <4 x i1> %Cmp125, i32 2 |
| 281 | br i1 %E156, label %CF253, label %CF269 |
| 282 | |
| 283 | CF269: ; preds = %CF253 |
| 284 | %Shuff157 = shufflevector <1 x i32> %Shuff46, <1 x i32> %Shuff121, <1 x i32> <i32 1> |
| 285 | %I158 = insertelement <4 x i16> %Shuff128, i16 %E66, i32 1 |
| 286 | %B159 = shl i64 %L119, %L73 |
| 287 | %Se = sext i16 %B77 to i32 |
| 288 | %Sl160 = select i1 %Cmp56, i16 %Sl63, i16 %B77 |
| 289 | %L161 = load i64, i64* %Sl |
| 290 | store i32 %B130, i32* %Sl117 |
| 291 | %E162 = extractelement <1 x i32> %Shuff59, i32 0 |
| 292 | %Shuff163 = shufflevector <4 x i16> %Shuff7, <4 x i16> %Shuff67, <4 x i32> <i32 5, i32 7, i32 1, i32 3> |
| 293 | %I164 = insertelement <4 x i16> %Shuff106, i16 27357, i32 3 |
| 294 | %Se165 = sext <4 x i1> %Sl124 to <4 x i8> |
| 295 | %Sl166 = select i1 true, i1 %Cmp, i1 %Tr70 |
| 296 | br i1 %Sl166, label %CF253, label %CF255 |
| 297 | |
| 298 | CF255: ; preds = %CF255, %CF266, %CF269 |
| 299 | %Cmp167 = icmp sge i64 %4, %L24 |
| 300 | br i1 %Cmp167, label %CF255, label %CF266 |
| 301 | |
| 302 | CF266: ; preds = %CF255 |
| 303 | %L168 = load i8, i8* %0 |
| 304 | store i32 %E38, i32* %PC78 |
| 305 | %E169 = extractelement <2 x i16> zeroinitializer, i32 1 |
| 306 | %Shuff170 = shufflevector <4 x i16> %Sl79, <4 x i16> %I137, <4 x i32> <i32 6, i32 0, i32 2, i32 4> |
| 307 | %I171 = insertelement <4 x i16> %Shuff163, i16 %ZE41, i32 0 |
| 308 | %Tr172 = trunc i16 %Tr145 to i1 |
| 309 | br i1 %Tr172, label %CF255, label %CF258 |
| 310 | |
| 311 | CF258: ; preds = %CF266 |
| 312 | %Sl173 = select i1 true, <2 x i32> %I68, <2 x i32> %I91 |
| 313 | %Cmp174 = icmp ugt <2 x i1> %Cmp72, %I150 |
| 314 | %L175 = load i32, i32* %Sl117 |
| 315 | store i32 %L104, i32* %Sl117 |
| 316 | %E176 = extractelement <4 x i16> %Shuff67, i32 1 |
| 317 | %Shuff177 = shufflevector <1 x i32> %Shuff121, <1 x i32> %Shuff33, <1 x i32> zeroinitializer |
| 318 | %I178 = insertelement <4 x i16> zeroinitializer, i16 27357, i32 0 |
| 319 | %FC179 = sitofp <4 x i16> %I47 to <4 x float> |
| 320 | %Sl180 = select i1 %FC, i64 %L126, i64 %B92 |
| 321 | %Cmp181 = fcmp ugt double %B61, %B16 |
| 322 | br i1 %Cmp181, label %CF, label %CF236 |
| 323 | |
| 324 | CF236: ; preds = %CF236, %CF258 |
| 325 | %L182 = load i8, i8* %0 |
| 326 | store i32 %E38, i32* %Sl117 |
| 327 | %E183 = extractelement <1 x i32> %Shuff121, i32 0 |
| 328 | %Shuff184 = shufflevector <4 x i64> zeroinitializer, <4 x i64> %Shuff90, <4 x i32> <i32 7, i32 undef, i32 3, i32 5> |
| 329 | %I185 = insertelement <4 x i16> %Shuff106, i16 %Tr93, i32 1 |
| 330 | %ZE186 = zext i32 %E162 to i64 |
| 331 | %Sl187 = select i1 %Cmp95, <8 x i8> %B100, <8 x i8> %B100 |
| 332 | %Cmp188 = icmp uge i16 %B115, %Sl11 |
| 333 | br i1 %Cmp188, label %CF236, label %CF242 |
| 334 | |
| 335 | CF242: ; preds = %CF242, %CF250, %CF248, %CF236 |
| 336 | %L189 = load i8, i8* %0 |
| 337 | store i8 %Sl29, i8* %0 |
| 338 | %E190 = extractelement <4 x i16> %B9, i32 3 |
| 339 | %Shuff191 = shufflevector <4 x i16> %Shuff26, <4 x i16> %Shuff26, <4 x i32> <i32 6, i32 0, i32 2, i32 4> |
| 340 | %I192 = insertelement <1 x i32> %I122, i32 %3, i32 0 |
| 341 | %B193 = udiv i8 %5, %L168 |
| 342 | %Se194 = sext <8 x i1> %Sl71 to <8 x i32> |
| 343 | %Sl195 = select i1 %Cmp188, i8 %L182, i8 %L168 |
| 344 | %Cmp196 = icmp slt i16 %B77, %Sl102 |
| 345 | br i1 %Cmp196, label %CF242, label %CF250 |
| 346 | |
| 347 | CF250: ; preds = %CF242 |
| 348 | %L197 = load i64, i64* %Sl |
| 349 | store i32 %ZE, i32* %Sl117 |
| 350 | %E198 = extractelement <2 x i1> %Shuff20, i32 1 |
| 351 | br i1 %E198, label %CF242, label %CF244 |
| 352 | |
| 353 | CF244: ; preds = %CF244, %CF250 |
| 354 | %Shuff199 = shufflevector <1 x i32> %Shuff46, <1 x i32> %Shuff177, <1 x i32> zeroinitializer |
| 355 | %I200 = insertelement <4 x i16> %Shuff191, i16 %Sl86, i32 0 |
| 356 | %B201 = mul i16 %ZE41, %E169 |
| 357 | %Se202 = sext <4 x i16> %I171 to <4 x i64> |
| 358 | %Sl203 = select i1 %Sl166, i32 %E162, i32 %E82 |
| 359 | %Cmp204 = icmp ule i16 %E32, %E120 |
| 360 | br i1 %Cmp204, label %CF244, label %CF248 |
| 361 | |
| 362 | CF248: ; preds = %CF244 |
| 363 | %L205 = load float, float* %A3 |
| 364 | store i32 %Tr, i32* %PC78 |
| 365 | %E206 = extractelement <2 x i1> %Shuff20, i32 1 |
| 366 | br i1 %E206, label %CF242, label %CF243 |
| 367 | |
| 368 | CF243: ; preds = %CF243, %CF273, %CF248 |
| 369 | %Shuff207 = shufflevector <8 x i1> zeroinitializer, <8 x i1> %Sl71, <8 x i32> <i32 4, i32 6, i32 8, i32 undef, i32 12, i32 undef, i32 undef, i32 2> |
| 370 | %I208 = insertelement <2 x i1> %Shuff20, i1 %E198, i32 0 |
| 371 | %B209 = xor <4 x i16> %I129, %I34 |
| 372 | %FC210 = uitofp <8 x i8> zeroinitializer to <8 x double> |
| 373 | %Sl211 = select i1 %E74, i16 %Tr93, i16 %E19 |
| 374 | %Cmp212 = icmp ugt i32 %Se, %E38 |
| 375 | br i1 %Cmp212, label %CF243, label %CF273 |
| 376 | |
| 377 | CF273: ; preds = %CF243 |
| 378 | %L213 = load i32, i32* %PC78 |
| 379 | store i8 %L168, i8* %0 |
| 380 | %E214 = extractelement <2 x i32> %Shuff113, i32 1 |
| 381 | %Shuff215 = shufflevector <4 x i16> %Shuff128, <4 x i16> %I137, <4 x i32> <i32 6, i32 0, i32 2, i32 4> |
| 382 | %I216 = insertelement <2 x i1> %Shuff20, i1 %Cmp30, i32 0 |
| 383 | %B217 = sub <4 x i16> %Shuff83, %I185 |
| 384 | %Tr218 = trunc <4 x i16> %B9 to <4 x i1> |
| 385 | %Sl219 = select i1 %Cmp154, i8 %B, i8 %5 |
| 386 | %Cmp220 = icmp uge <4 x i64> %Shuff52, %Shuff52 |
| 387 | %L221 = load i32, i32* %Sl117 |
| 388 | store i8 %L168, i8* %0 |
| 389 | %E222 = extractelement <4 x i16> %Shuff191, i32 0 |
| 390 | %Shuff223 = shufflevector <4 x i16> %Shuff26, <4 x i16> %I34, <4 x i32> <i32 undef, i32 1, i32 3, i32 5> |
| 391 | %I224 = insertelement <4 x i16> %Shuff26, i16 %Tr145, i32 1 |
| 392 | %FC225 = sitofp i1 %Cmp56 to float |
| 393 | %Sl226 = select i1 %E, i1 %Cmp154, i1 %Sl166 |
| 394 | br i1 %Sl226, label %CF243, label %CF252 |
| 395 | |
| 396 | CF252: ; preds = %CF273 |
| 397 | %Cmp227 = icmp ugt <4 x i64> %Shuff143, zeroinitializer |
| 398 | %L228 = load i32, i32* %Sl117 |
| 399 | store i32 %Tr, i32* %PC78 |
| 400 | %E229 = extractelement <4 x i16> %Shuff163, i32 2 |
| 401 | %Shuff230 = shufflevector <1 x i32> %Shuff199, <1 x i32> zeroinitializer, <1 x i32> <i32 1> |
| 402 | %I231 = insertelement <4 x i16> %Shuff106, i16 %E32, i32 1 |
| 403 | %B232 = srem i32 %Sl203, %Sl203 |
| 404 | %FC233 = fptoui double 0x5A7FED9E637D2C1C to i32 |
| 405 | %Sl234 = select i1 %Cmp103, i8 %B193, i8 %L168 |
| 406 | %Cmp235 = icmp uge <2 x i16> zeroinitializer, zeroinitializer |
| 407 | store i32 %ZE, i32* %PC78 |
| 408 | store i64 %L5, i64* %Sl |
| 409 | store i8 33, i8* %0 |
| 410 | store i8 %L168, i8* %0 |
| 411 | store i1 %Sl226, i1* %PC |
| 412 | ret void |
| 413 | } |