00001
00002
00003
00004 #include "config.h"
00005 #include "system.h"
00006 #include "rtl.h"
00007 #include "tm_p.h"
00008 #include "function.h"
00009 #include "insn-config.h"
00010 #include "recog.h"
00011 #include "real.h"
00012 #include "output.h"
00013 #include "flags.h"
00014 #include "hard-reg-set.h"
00015 #include "resource.h"
00016 #include "toplev.h"
00017 #include "reload.h"
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049 extern rtx gen_split_344 PARAMS ((rtx *));
00050 extern rtx gen_split_345 PARAMS ((rtx *));
00051 extern rtx gen_split_347 PARAMS ((rtx *));
00052 extern rtx gen_split_348 PARAMS ((rtx *));
00053 extern rtx gen_split_349 PARAMS ((rtx *));
00054 extern rtx gen_split_350 PARAMS ((rtx *));
00055 extern rtx gen_split_351 PARAMS ((rtx *));
00056 extern rtx gen_split_352 PARAMS ((rtx *));
00057 extern rtx gen_split_354 PARAMS ((rtx *));
00058 extern rtx gen_split_355 PARAMS ((rtx *));
00059 extern rtx gen_split_357 PARAMS ((rtx *));
00060 extern rtx gen_split_358 PARAMS ((rtx *));
00061 extern rtx gen_split_359 PARAMS ((rtx *));
00062 extern rtx gen_split_360 PARAMS ((rtx *));
00063 extern rtx gen_split_361 PARAMS ((rtx *));
00064 extern rtx gen_split_362 PARAMS ((rtx *));
00065 extern rtx gen_split_366 PARAMS ((rtx *));
00066 extern rtx gen_split_367 PARAMS ((rtx *));
00067 extern rtx gen_split_368 PARAMS ((rtx *));
00068 extern rtx gen_split_369 PARAMS ((rtx *));
00069 extern rtx gen_split_370 PARAMS ((rtx *));
00070 extern rtx gen_split_390 PARAMS ((rtx *));
00071 extern rtx gen_split_393 PARAMS ((rtx *));
00072 extern rtx gen_split_396 PARAMS ((rtx *));
00073 extern rtx gen_split_399 PARAMS ((rtx *));
00074 extern rtx gen_split_400 PARAMS ((rtx *));
00075 extern rtx gen_split_423 PARAMS ((rtx *));
00076 extern rtx gen_split_424 PARAMS ((rtx *));
00077 extern rtx gen_split_427 PARAMS ((rtx *));
00078 extern rtx gen_split_429 PARAMS ((rtx *));
00079 extern rtx gen_split_430 PARAMS ((rtx *));
00080 extern rtx gen_split_431 PARAMS ((rtx *));
00081 extern rtx gen_split_437 PARAMS ((rtx *));
00082 extern rtx gen_split_439 PARAMS ((rtx *));
00083 extern rtx gen_split_442 PARAMS ((rtx *));
00084 extern rtx gen_split_445 PARAMS ((rtx *));
00085 extern rtx gen_split_447 PARAMS ((rtx *));
00086 extern rtx gen_split_448 PARAMS ((rtx *));
00087 extern rtx gen_split_449 PARAMS ((rtx *));
00088 extern rtx gen_split_450 PARAMS ((rtx *));
00089 extern rtx gen_split_451 PARAMS ((rtx *));
00090 extern rtx gen_split_453 PARAMS ((rtx *));
00091 extern rtx gen_split_455 PARAMS ((rtx *));
00092 extern rtx gen_split_456 PARAMS ((rtx *));
00093 extern rtx gen_split_457 PARAMS ((rtx *));
00094 extern rtx gen_split_458 PARAMS ((rtx *));
00095 extern rtx gen_split_459 PARAMS ((rtx *));
00096 extern rtx gen_split_461 PARAMS ((rtx *));
00097 extern rtx gen_split_462 PARAMS ((rtx *));
00098 extern rtx gen_split_464 PARAMS ((rtx *));
00099 extern rtx gen_split_465 PARAMS ((rtx *));
00100 extern rtx gen_split_466 PARAMS ((rtx *));
00101 extern rtx gen_split_467 PARAMS ((rtx *));
00102 extern rtx gen_split_468 PARAMS ((rtx *));
00103 extern rtx gen_split_517 PARAMS ((rtx *));
00104
00105
00106
00107 static int recog_1 PARAMS ((rtx, rtx, int *));
00108 static int
00109 recog_1 (x0, insn, pnum_clobbers)
00110 rtx x0 ATTRIBUTE_UNUSED;
00111 rtx insn ATTRIBUTE_UNUSED;
00112 int *pnum_clobbers ATTRIBUTE_UNUSED;
00113 {
00114 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
00115 rtx x1 ATTRIBUTE_UNUSED;
00116 rtx x2 ATTRIBUTE_UNUSED;
00117 rtx x3 ATTRIBUTE_UNUSED;
00118 rtx x4 ATTRIBUTE_UNUSED;
00119 rtx x5 ATTRIBUTE_UNUSED;
00120 rtx x6 ATTRIBUTE_UNUSED;
00121 rtx x7 ATTRIBUTE_UNUSED;
00122 int tem ATTRIBUTE_UNUSED;
00123
00124 x1 = XEXP (x0, 0);
00125 if (GET_CODE (x1) == MEM)
00126 goto L1584;
00127 if (register_operand (x1, DFmode))
00128 {
00129 operands[0] = x1;
00130 goto L10;
00131 }
00132 L3285: ATTRIBUTE_UNUSED_LABEL
00133 if (nonimmediate_operand (x1, DFmode))
00134 {
00135 operands[0] = x1;
00136 goto L1626;
00137 }
00138 goto ret0;
00139
00140 L1584: ATTRIBUTE_UNUSED_LABEL
00141 x2 = XEXP (x1, 0);
00142 switch (GET_MODE (x2))
00143 {
00144 case SImode:
00145 goto L3290;
00146 case DImode:
00147 goto L3291;
00148 default:
00149 break;
00150 }
00151 goto L3285;
00152
00153 L3290: ATTRIBUTE_UNUSED_LABEL
00154 if (GET_CODE (x2) == PLUS)
00155 goto L1585;
00156 goto L3285;
00157
00158 L1585: ATTRIBUTE_UNUSED_LABEL
00159 x3 = XEXP (x2, 0);
00160 if (register_operand (x3, SImode))
00161 {
00162 operands[1] = x3;
00163 goto L1586;
00164 }
00165 goto L3285;
00166
00167 L1586: ATTRIBUTE_UNUSED_LABEL
00168 x3 = XEXP (x2, 1);
00169 if (register_operand (x3, SImode))
00170 {
00171 operands[2] = x3;
00172 goto L1587;
00173 }
00174 goto L3285;
00175
00176 L1587: ATTRIBUTE_UNUSED_LABEL
00177 x1 = XEXP (x0, 1);
00178 if (register_operand (x1, DFmode))
00179 {
00180 operands[0] = x1;
00181 goto L1588;
00182 }
00183 x1 = XEXP (x0, 0);
00184 goto L3285;
00185
00186 L1588: ATTRIBUTE_UNUSED_LABEL
00187 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00188 {
00189 return 176;
00190 }
00191 x1 = XEXP (x0, 0);
00192 goto L3285;
00193
00194 L3291: ATTRIBUTE_UNUSED_LABEL
00195 if (GET_CODE (x2) == PLUS)
00196 goto L1592;
00197 goto L3285;
00198
00199 L1592: ATTRIBUTE_UNUSED_LABEL
00200 x3 = XEXP (x2, 0);
00201 if (se_register_operand (x3, DImode))
00202 {
00203 operands[1] = x3;
00204 goto L1593;
00205 }
00206 goto L3285;
00207
00208 L1593: ATTRIBUTE_UNUSED_LABEL
00209 x3 = XEXP (x2, 1);
00210 if (se_register_operand (x3, DImode))
00211 {
00212 operands[2] = x3;
00213 goto L1594;
00214 }
00215 goto L3285;
00216
00217 L1594: ATTRIBUTE_UNUSED_LABEL
00218 x1 = XEXP (x0, 1);
00219 if (register_operand (x1, DFmode))
00220 {
00221 operands[0] = x1;
00222 goto L1595;
00223 }
00224 x1 = XEXP (x0, 0);
00225 goto L3285;
00226
00227 L1595: ATTRIBUTE_UNUSED_LABEL
00228 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00229 {
00230 return 177;
00231 }
00232 x1 = XEXP (x0, 0);
00233 goto L3285;
00234
00235 L10: ATTRIBUTE_UNUSED_LABEL
00236 x1 = XEXP (x0, 1);
00237 if (GET_MODE (x1) == DFmode)
00238 goto L3292;
00239 x1 = XEXP (x0, 0);
00240 goto L3285;
00241
00242 L3292: ATTRIBUTE_UNUSED_LABEL
00243 switch (GET_CODE (x1))
00244 {
00245 case PLUS:
00246 goto L11;
00247 case MINUS:
00248 goto L103;
00249 case MULT:
00250 goto L195;
00251 case NEG:
00252 goto L728;
00253 case DIV:
00254 goto L762;
00255 case SQRT:
00256 goto L1042;
00257 case ABS:
00258 goto L1076;
00259 case FLOAT_EXTEND:
00260 goto L1399;
00261 case FLOAT:
00262 goto L1450;
00263 case MEM:
00264 goto L1557;
00265 case IF_THEN_ELSE:
00266 goto L2744;
00267 default:
00268 break;
00269 }
00270 x1 = XEXP (x0, 0);
00271 goto L3285;
00272
00273 L11: ATTRIBUTE_UNUSED_LABEL
00274 x2 = XEXP (x1, 0);
00275 if (GET_MODE (x2) == DFmode)
00276 goto L3304;
00277 x1 = XEXP (x0, 0);
00278 goto L3285;
00279
00280 L3304: ATTRIBUTE_UNUSED_LABEL
00281 if (GET_CODE (x2) == MULT)
00282 goto L697;
00283 if (register_operand (x2, DFmode))
00284 {
00285 operands[1] = x2;
00286 goto L12;
00287 }
00288 x1 = XEXP (x0, 0);
00289 goto L3285;
00290
00291 L697: ATTRIBUTE_UNUSED_LABEL
00292 x3 = XEXP (x2, 0);
00293 if (register_operand (x3, DFmode))
00294 {
00295 operands[1] = x3;
00296 goto L698;
00297 }
00298 x1 = XEXP (x0, 0);
00299 goto L3285;
00300
00301 L698: ATTRIBUTE_UNUSED_LABEL
00302 x3 = XEXP (x2, 1);
00303 if (register_operand (x3, DFmode))
00304 {
00305 operands[2] = x3;
00306 goto L699;
00307 }
00308 x1 = XEXP (x0, 0);
00309 goto L3285;
00310
00311 L699: ATTRIBUTE_UNUSED_LABEL
00312 x2 = XEXP (x1, 1);
00313 if (register_operand (x2, DFmode))
00314 {
00315 operands[3] = x2;
00316 goto L700;
00317 }
00318 x1 = XEXP (x0, 0);
00319 goto L3285;
00320
00321 L700: ATTRIBUTE_UNUSED_LABEL
00322 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && TARGET_FUSED_MADD))
00323 {
00324 return 55;
00325 }
00326 x1 = XEXP (x0, 0);
00327 goto L3285;
00328
00329 L12: ATTRIBUTE_UNUSED_LABEL
00330 x2 = XEXP (x1, 1);
00331 if (register_operand (x2, DFmode))
00332 {
00333 operands[2] = x2;
00334 goto L13;
00335 }
00336 x1 = XEXP (x0, 0);
00337 goto L3285;
00338
00339 L13: ATTRIBUTE_UNUSED_LABEL
00340 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00341 {
00342 return 2;
00343 }
00344 x1 = XEXP (x0, 0);
00345 goto L3285;
00346
00347 L103: ATTRIBUTE_UNUSED_LABEL
00348 x2 = XEXP (x1, 0);
00349 if (GET_MODE (x2) == DFmode)
00350 goto L3306;
00351 x1 = XEXP (x0, 0);
00352 goto L3285;
00353
00354 L3306: ATTRIBUTE_UNUSED_LABEL
00355 if (GET_CODE (x2) == MULT)
00356 goto L713;
00357 if (register_operand (x2, DFmode))
00358 {
00359 operands[1] = x2;
00360 goto L104;
00361 }
00362 x1 = XEXP (x0, 0);
00363 goto L3285;
00364
00365 L713: ATTRIBUTE_UNUSED_LABEL
00366 x3 = XEXP (x2, 0);
00367 if (register_operand (x3, DFmode))
00368 {
00369 operands[1] = x3;
00370 goto L714;
00371 }
00372 x1 = XEXP (x0, 0);
00373 goto L3285;
00374
00375 L714: ATTRIBUTE_UNUSED_LABEL
00376 x3 = XEXP (x2, 1);
00377 if (register_operand (x3, DFmode))
00378 {
00379 operands[2] = x3;
00380 goto L715;
00381 }
00382 x1 = XEXP (x0, 0);
00383 goto L3285;
00384
00385 L715: ATTRIBUTE_UNUSED_LABEL
00386 x2 = XEXP (x1, 1);
00387 if (register_operand (x2, DFmode))
00388 {
00389 operands[3] = x2;
00390 goto L716;
00391 }
00392 x1 = XEXP (x0, 0);
00393 goto L3285;
00394
00395 L716: ATTRIBUTE_UNUSED_LABEL
00396 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && TARGET_FUSED_MADD))
00397 {
00398 return 57;
00399 }
00400 x1 = XEXP (x0, 0);
00401 goto L3285;
00402
00403 L104: ATTRIBUTE_UNUSED_LABEL
00404 x2 = XEXP (x1, 1);
00405 if (GET_MODE (x2) == DFmode)
00406 goto L3308;
00407 x1 = XEXP (x0, 0);
00408 goto L3285;
00409
00410 L3308: ATTRIBUTE_UNUSED_LABEL
00411 if (GET_CODE (x2) == MULT)
00412 goto L748;
00413 if (register_operand (x2, DFmode))
00414 {
00415 operands[2] = x2;
00416 goto L105;
00417 }
00418 x1 = XEXP (x0, 0);
00419 goto L3285;
00420
00421 L748: ATTRIBUTE_UNUSED_LABEL
00422 x3 = XEXP (x2, 0);
00423 if (register_operand (x3, DFmode))
00424 {
00425 operands[2] = x3;
00426 goto L749;
00427 }
00428 x1 = XEXP (x0, 0);
00429 goto L3285;
00430
00431 L749: ATTRIBUTE_UNUSED_LABEL
00432 x3 = XEXP (x2, 1);
00433 if (register_operand (x3, DFmode))
00434 {
00435 operands[3] = x3;
00436 goto L750;
00437 }
00438 x1 = XEXP (x0, 0);
00439 goto L3285;
00440
00441 L750: ATTRIBUTE_UNUSED_LABEL
00442 if ((ISA_HAS_NMADD_NMSUB && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && TARGET_FUSED_MADD))
00443 {
00444 return 61;
00445 }
00446 x1 = XEXP (x0, 0);
00447 goto L3285;
00448
00449 L105: ATTRIBUTE_UNUSED_LABEL
00450 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00451 {
00452 return 16;
00453 }
00454 x1 = XEXP (x0, 0);
00455 goto L3285;
00456
00457 L195: ATTRIBUTE_UNUSED_LABEL
00458 x2 = XEXP (x1, 0);
00459 if (register_operand (x2, DFmode))
00460 {
00461 operands[1] = x2;
00462 goto L196;
00463 }
00464 x1 = XEXP (x0, 0);
00465 goto L3285;
00466
00467 L196: ATTRIBUTE_UNUSED_LABEL
00468 x2 = XEXP (x1, 1);
00469 if (register_operand (x2, DFmode))
00470 {
00471 operands[2] = x2;
00472 goto L197;
00473 }
00474 x1 = XEXP (x0, 0);
00475 goto L3285;
00476
00477 L197: ATTRIBUTE_UNUSED_LABEL
00478 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && !TARGET_MIPS4300))
00479 {
00480 return 30;
00481 }
00482 L203: ATTRIBUTE_UNUSED_LABEL
00483 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && TARGET_MIPS4300))
00484 {
00485 return 31;
00486 }
00487 x1 = XEXP (x0, 0);
00488 goto L3285;
00489
00490 L728: ATTRIBUTE_UNUSED_LABEL
00491 x2 = XEXP (x1, 0);
00492 if (GET_MODE (x2) == DFmode)
00493 goto L3309;
00494 x1 = XEXP (x0, 0);
00495 goto L3285;
00496
00497 L3309: ATTRIBUTE_UNUSED_LABEL
00498 if (GET_CODE (x2) == PLUS)
00499 goto L729;
00500 if (register_operand (x2, DFmode))
00501 {
00502 operands[1] = x2;
00503 goto L1134;
00504 }
00505 x1 = XEXP (x0, 0);
00506 goto L3285;
00507
00508 L729: ATTRIBUTE_UNUSED_LABEL
00509 x3 = XEXP (x2, 0);
00510 if (GET_MODE (x3) == DFmode
00511 && GET_CODE (x3) == MULT)
00512 goto L730;
00513 x1 = XEXP (x0, 0);
00514 goto L3285;
00515
00516 L730: ATTRIBUTE_UNUSED_LABEL
00517 x4 = XEXP (x3, 0);
00518 if (register_operand (x4, DFmode))
00519 {
00520 operands[1] = x4;
00521 goto L731;
00522 }
00523 x1 = XEXP (x0, 0);
00524 goto L3285;
00525
00526 L731: ATTRIBUTE_UNUSED_LABEL
00527 x4 = XEXP (x3, 1);
00528 if (register_operand (x4, DFmode))
00529 {
00530 operands[2] = x4;
00531 goto L732;
00532 }
00533 x1 = XEXP (x0, 0);
00534 goto L3285;
00535
00536 L732: ATTRIBUTE_UNUSED_LABEL
00537 x3 = XEXP (x2, 1);
00538 if (register_operand (x3, DFmode))
00539 {
00540 operands[3] = x3;
00541 goto L733;
00542 }
00543 x1 = XEXP (x0, 0);
00544 goto L3285;
00545
00546 L733: ATTRIBUTE_UNUSED_LABEL
00547 if ((ISA_HAS_NMADD_NMSUB && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && TARGET_FUSED_MADD))
00548 {
00549 return 59;
00550 }
00551 x1 = XEXP (x0, 0);
00552 goto L3285;
00553
00554 L1134: ATTRIBUTE_UNUSED_LABEL
00555 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00556 {
00557 return 94;
00558 }
00559 x1 = XEXP (x0, 0);
00560 goto L3285;
00561
00562 L762: ATTRIBUTE_UNUSED_LABEL
00563 x2 = XEXP (x1, 0);
00564 if (GET_MODE (x2) == DFmode)
00565 goto L3312;
00566 x1 = XEXP (x0, 0);
00567 goto L3285;
00568
00569 L3312: ATTRIBUTE_UNUSED_LABEL
00570 if (const_float_1_operand (x2, DFmode))
00571 {
00572 operands[1] = x2;
00573 goto L775;
00574 }
00575 if (register_operand (x2, DFmode))
00576 {
00577 operands[1] = x2;
00578 goto L763;
00579 }
00580 x1 = XEXP (x0, 0);
00581 goto L3285;
00582
00583 L775: ATTRIBUTE_UNUSED_LABEL
00584 x2 = XEXP (x1, 1);
00585 if (GET_MODE (x2) == DFmode)
00586 goto L3314;
00587 x1 = XEXP (x0, 0);
00588 goto L3285;
00589
00590 L3314: ATTRIBUTE_UNUSED_LABEL
00591 if (GET_CODE (x2) == SQRT)
00592 goto L1054;
00593 if (register_operand (x2, DFmode))
00594 {
00595 operands[2] = x2;
00596 goto L776;
00597 }
00598 x1 = XEXP (x0, 0);
00599 goto L3285;
00600
00601 L1054: ATTRIBUTE_UNUSED_LABEL
00602 x3 = XEXP (x2, 0);
00603 if (register_operand (x3, DFmode))
00604 {
00605 operands[2] = x3;
00606 goto L1055;
00607 }
00608 x1 = XEXP (x0, 0);
00609 goto L3285;
00610
00611 L1055: ATTRIBUTE_UNUSED_LABEL
00612 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && flag_unsafe_math_optimizations))
00613 {
00614 return 83;
00615 }
00616 x1 = XEXP (x0, 0);
00617 goto L3285;
00618
00619 L776: ATTRIBUTE_UNUSED_LABEL
00620 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && flag_unsafe_math_optimizations))
00621 {
00622 return 65;
00623 }
00624 x1 = XEXP (x0, 0);
00625 goto L3285;
00626
00627 L763: ATTRIBUTE_UNUSED_LABEL
00628 x2 = XEXP (x1, 1);
00629 if (register_operand (x2, DFmode))
00630 {
00631 operands[2] = x2;
00632 goto L764;
00633 }
00634 x1 = XEXP (x0, 0);
00635 goto L3285;
00636
00637 L764: ATTRIBUTE_UNUSED_LABEL
00638 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00639 {
00640 return 63;
00641 }
00642 x1 = XEXP (x0, 0);
00643 goto L3285;
00644
00645 L1042: ATTRIBUTE_UNUSED_LABEL
00646 x2 = XEXP (x1, 0);
00647 if (register_operand (x2, DFmode))
00648 {
00649 operands[1] = x2;
00650 goto L1043;
00651 }
00652 x1 = XEXP (x0, 0);
00653 goto L3285;
00654
00655 L1043: ATTRIBUTE_UNUSED_LABEL
00656 if ((TARGET_HARD_FLOAT && HAVE_SQRT_P() && TARGET_DOUBLE_FLOAT))
00657 {
00658 return 81;
00659 }
00660 x1 = XEXP (x0, 0);
00661 goto L3285;
00662
00663 L1076: ATTRIBUTE_UNUSED_LABEL
00664 x2 = XEXP (x1, 0);
00665 if (register_operand (x2, DFmode))
00666 {
00667 operands[1] = x2;
00668 goto L1077;
00669 }
00670 x1 = XEXP (x0, 0);
00671 goto L3285;
00672
00673 L1077: ATTRIBUTE_UNUSED_LABEL
00674 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00675 {
00676 return 87;
00677 }
00678 x1 = XEXP (x0, 0);
00679 goto L3285;
00680
00681 L1399: ATTRIBUTE_UNUSED_LABEL
00682 x2 = XEXP (x1, 0);
00683 if (register_operand (x2, SFmode))
00684 {
00685 operands[1] = x2;
00686 goto L1400;
00687 }
00688 x1 = XEXP (x0, 0);
00689 goto L3285;
00690
00691 L1400: ATTRIBUTE_UNUSED_LABEL
00692 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00693 {
00694 return 142;
00695 }
00696 x1 = XEXP (x0, 0);
00697 goto L3285;
00698
00699 L1450: ATTRIBUTE_UNUSED_LABEL
00700 x2 = XEXP (x1, 0);
00701 switch (GET_MODE (x2))
00702 {
00703 case SImode:
00704 goto L3315;
00705 case DImode:
00706 goto L3316;
00707 default:
00708 break;
00709 }
00710 x1 = XEXP (x0, 0);
00711 goto L3285;
00712
00713 L3315: ATTRIBUTE_UNUSED_LABEL
00714 if (register_operand (x2, SImode))
00715 {
00716 operands[1] = x2;
00717 goto L1451;
00718 }
00719 x1 = XEXP (x0, 0);
00720 goto L3285;
00721
00722 L1451: ATTRIBUTE_UNUSED_LABEL
00723 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00724 {
00725 return 149;
00726 }
00727 x1 = XEXP (x0, 0);
00728 goto L3285;
00729
00730 L3316: ATTRIBUTE_UNUSED_LABEL
00731 if (register_operand (x2, DImode))
00732 {
00733 operands[1] = x2;
00734 goto L1456;
00735 }
00736 x1 = XEXP (x0, 0);
00737 goto L3285;
00738
00739 L1456: ATTRIBUTE_UNUSED_LABEL
00740 if ((TARGET_HARD_FLOAT && TARGET_FLOAT64 && TARGET_DOUBLE_FLOAT))
00741 {
00742 return 150;
00743 }
00744 x1 = XEXP (x0, 0);
00745 goto L3285;
00746
00747 L1557: ATTRIBUTE_UNUSED_LABEL
00748 x2 = XEXP (x1, 0);
00749 switch (GET_MODE (x2))
00750 {
00751 case SImode:
00752 goto L3317;
00753 case DImode:
00754 goto L3318;
00755 default:
00756 break;
00757 }
00758 x1 = XEXP (x0, 0);
00759 goto L3285;
00760
00761 L3317: ATTRIBUTE_UNUSED_LABEL
00762 if (GET_CODE (x2) == PLUS)
00763 goto L1558;
00764 x1 = XEXP (x0, 0);
00765 goto L3285;
00766
00767 L1558: ATTRIBUTE_UNUSED_LABEL
00768 x3 = XEXP (x2, 0);
00769 if (register_operand (x3, SImode))
00770 {
00771 operands[1] = x3;
00772 goto L1559;
00773 }
00774 x1 = XEXP (x0, 0);
00775 goto L3285;
00776
00777 L1559: ATTRIBUTE_UNUSED_LABEL
00778 x3 = XEXP (x2, 1);
00779 if (register_operand (x3, SImode))
00780 {
00781 operands[2] = x3;
00782 goto L1560;
00783 }
00784 x1 = XEXP (x0, 0);
00785 goto L3285;
00786
00787 L1560: ATTRIBUTE_UNUSED_LABEL
00788 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00789 {
00790 return 172;
00791 }
00792 x1 = XEXP (x0, 0);
00793 goto L3285;
00794
00795 L3318: ATTRIBUTE_UNUSED_LABEL
00796 if (GET_CODE (x2) == PLUS)
00797 goto L1565;
00798 x1 = XEXP (x0, 0);
00799 goto L3285;
00800
00801 L1565: ATTRIBUTE_UNUSED_LABEL
00802 x3 = XEXP (x2, 0);
00803 if (se_register_operand (x3, DImode))
00804 {
00805 operands[1] = x3;
00806 goto L1566;
00807 }
00808 x1 = XEXP (x0, 0);
00809 goto L3285;
00810
00811 L1566: ATTRIBUTE_UNUSED_LABEL
00812 x3 = XEXP (x2, 1);
00813 if (se_register_operand (x3, DImode))
00814 {
00815 operands[2] = x3;
00816 goto L1567;
00817 }
00818 x1 = XEXP (x0, 0);
00819 goto L3285;
00820
00821 L1567: ATTRIBUTE_UNUSED_LABEL
00822 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00823 {
00824 return 173;
00825 }
00826 x1 = XEXP (x0, 0);
00827 goto L3285;
00828
00829 L2744: ATTRIBUTE_UNUSED_LABEL
00830 x2 = XEXP (x1, 0);
00831 if (equality_op (x2, VOIDmode))
00832 {
00833 operands[4] = x2;
00834 goto L2745;
00835 }
00836 L2762: ATTRIBUTE_UNUSED_LABEL
00837 if (equality_op (x2, VOIDmode))
00838 {
00839 operands[3] = x2;
00840 goto L2763;
00841 }
00842 x1 = XEXP (x0, 0);
00843 goto L3285;
00844
00845 L2745: ATTRIBUTE_UNUSED_LABEL
00846 x3 = XEXP (x2, 0);
00847 switch (GET_MODE (x3))
00848 {
00849 case SImode:
00850 goto L3319;
00851 case DImode:
00852 goto L3320;
00853 default:
00854 break;
00855 }
00856 goto L2762;
00857
00858 L3319: ATTRIBUTE_UNUSED_LABEL
00859 if (register_operand (x3, SImode))
00860 {
00861 operands[1] = x3;
00862 goto L2746;
00863 }
00864 goto L2762;
00865
00866 L2746: ATTRIBUTE_UNUSED_LABEL
00867 x3 = XEXP (x2, 1);
00868 if (GET_CODE (x3) == CONST_INT
00869 && XWINT (x3, 0) == 0LL)
00870 goto L2747;
00871 goto L2762;
00872
00873 L2747: ATTRIBUTE_UNUSED_LABEL
00874 x2 = XEXP (x1, 1);
00875 if (register_operand (x2, DFmode))
00876 {
00877 operands[2] = x2;
00878 goto L2748;
00879 }
00880 x2 = XEXP (x1, 0);
00881 goto L2762;
00882
00883 L2748: ATTRIBUTE_UNUSED_LABEL
00884 x2 = XEXP (x1, 2);
00885 if (register_operand (x2, DFmode))
00886 {
00887 operands[3] = x2;
00888 goto L2749;
00889 }
00890 x2 = XEXP (x1, 0);
00891 goto L2762;
00892
00893 L2749: ATTRIBUTE_UNUSED_LABEL
00894 if ((ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00895 {
00896 return 328;
00897 }
00898 x1 = XEXP (x0, 1);
00899 x2 = XEXP (x1, 0);
00900 goto L2762;
00901
00902 L3320: ATTRIBUTE_UNUSED_LABEL
00903 if (se_register_operand (x3, DImode))
00904 {
00905 operands[1] = x3;
00906 goto L2755;
00907 }
00908 goto L2762;
00909
00910 L2755: ATTRIBUTE_UNUSED_LABEL
00911 x3 = XEXP (x2, 1);
00912 if (GET_CODE (x3) == CONST_INT
00913 && XWINT (x3, 0) == 0LL)
00914 goto L2756;
00915 goto L2762;
00916
00917 L2756: ATTRIBUTE_UNUSED_LABEL
00918 x2 = XEXP (x1, 1);
00919 if (register_operand (x2, DFmode))
00920 {
00921 operands[2] = x2;
00922 goto L2757;
00923 }
00924 x2 = XEXP (x1, 0);
00925 goto L2762;
00926
00927 L2757: ATTRIBUTE_UNUSED_LABEL
00928 x2 = XEXP (x1, 2);
00929 if (register_operand (x2, DFmode))
00930 {
00931 operands[3] = x2;
00932 goto L2758;
00933 }
00934 x2 = XEXP (x1, 0);
00935 goto L2762;
00936
00937 L2758: ATTRIBUTE_UNUSED_LABEL
00938 if ((ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00939 {
00940 return 329;
00941 }
00942 x1 = XEXP (x0, 1);
00943 x2 = XEXP (x1, 0);
00944 goto L2762;
00945
00946 L2763: ATTRIBUTE_UNUSED_LABEL
00947 x3 = XEXP (x2, 0);
00948 if (register_operand (x3, CCmode))
00949 {
00950 operands[4] = x3;
00951 goto L2764;
00952 }
00953 x1 = XEXP (x0, 0);
00954 goto L3285;
00955
00956 L2764: ATTRIBUTE_UNUSED_LABEL
00957 x3 = XEXP (x2, 1);
00958 if (GET_CODE (x3) == CONST_INT
00959 && XWINT (x3, 0) == 0LL)
00960 goto L2765;
00961 x1 = XEXP (x0, 0);
00962 goto L3285;
00963
00964 L2765: ATTRIBUTE_UNUSED_LABEL
00965 x2 = XEXP (x1, 1);
00966 if (register_operand (x2, DFmode))
00967 {
00968 operands[1] = x2;
00969 goto L2766;
00970 }
00971 x1 = XEXP (x0, 0);
00972 goto L3285;
00973
00974 L2766: ATTRIBUTE_UNUSED_LABEL
00975 x2 = XEXP (x1, 2);
00976 if (register_operand (x2, DFmode))
00977 {
00978 operands[2] = x2;
00979 goto L2767;
00980 }
00981 x1 = XEXP (x0, 0);
00982 goto L3285;
00983
00984 L2767: ATTRIBUTE_UNUSED_LABEL
00985 if ((ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
00986 {
00987 return 330;
00988 }
00989 x1 = XEXP (x0, 0);
00990 goto L3285;
00991
00992 L1626: ATTRIBUTE_UNUSED_LABEL
00993 x1 = XEXP (x0, 1);
00994 if (general_operand (x1, DFmode))
00995 {
00996 operands[1] = x1;
00997 goto L1627;
00998 }
00999 L1638: ATTRIBUTE_UNUSED_LABEL
01000 if (nonimmediate_operand (x1, DFmode))
01001 {
01002 operands[1] = x1;
01003 goto L1639;
01004 }
01005 goto ret0;
01006
01007 L1627: ATTRIBUTE_UNUSED_LABEL
01008 if ((TARGET_HARD_FLOAT && !(TARGET_FLOAT64 && !TARGET_64BIT)
01009 && TARGET_DOUBLE_FLOAT
01010 && (register_operand (operands[0], DFmode)
01011 || nonmemory_operand (operands[1], DFmode))))
01012 {
01013 return 185;
01014 }
01015 L1631: ATTRIBUTE_UNUSED_LABEL
01016 if ((TARGET_HARD_FLOAT && (TARGET_FLOAT64 && !TARGET_64BIT)
01017 && TARGET_DOUBLE_FLOAT
01018 && (register_operand (operands[0], DFmode)
01019 || nonmemory_operand (operands[1], DFmode))))
01020 {
01021 return 186;
01022 }
01023 L1635: ATTRIBUTE_UNUSED_LABEL
01024 if (((TARGET_SOFT_FLOAT || TARGET_SINGLE_FLOAT) && !TARGET_MIPS16
01025 && (register_operand (operands[0], DFmode)
01026 || nonmemory_operand (operands[1], DFmode))))
01027 {
01028 return 187;
01029 }
01030 x1 = XEXP (x0, 1);
01031 goto L1638;
01032
01033 L1639: ATTRIBUTE_UNUSED_LABEL
01034 if ((TARGET_MIPS16
01035 && (register_operand (operands[0], DFmode)
01036 || register_operand (operands[1], DFmode))))
01037 {
01038 return 188;
01039 }
01040 goto ret0;
01041 ret0:
01042 return -1;
01043 }
01044
01045 static int recog_2 PARAMS ((rtx, rtx, int *));
01046 static int
01047 recog_2 (x0, insn, pnum_clobbers)
01048 rtx x0 ATTRIBUTE_UNUSED;
01049 rtx insn ATTRIBUTE_UNUSED;
01050 int *pnum_clobbers ATTRIBUTE_UNUSED;
01051 {
01052 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
01053 rtx x1 ATTRIBUTE_UNUSED;
01054 rtx x2 ATTRIBUTE_UNUSED;
01055 rtx x3 ATTRIBUTE_UNUSED;
01056 rtx x4 ATTRIBUTE_UNUSED;
01057 rtx x5 ATTRIBUTE_UNUSED;
01058 rtx x6 ATTRIBUTE_UNUSED;
01059 rtx x7 ATTRIBUTE_UNUSED;
01060 int tem ATTRIBUTE_UNUSED;
01061
01062 x1 = XEXP (x0, 0);
01063 if (GET_CODE (x1) == MEM)
01064 goto L1570;
01065 if (register_operand (x1, SFmode))
01066 {
01067 operands[0] = x1;
01068 goto L16;
01069 }
01070 L3284: ATTRIBUTE_UNUSED_LABEL
01071 if (nonimmediate_operand (x1, SFmode))
01072 {
01073 operands[0] = x1;
01074 goto L1614;
01075 }
01076 goto ret0;
01077
01078 L1570: ATTRIBUTE_UNUSED_LABEL
01079 x2 = XEXP (x1, 0);
01080 switch (GET_MODE (x2))
01081 {
01082 case SImode:
01083 goto L3321;
01084 case DImode:
01085 goto L3322;
01086 default:
01087 break;
01088 }
01089 goto L3284;
01090
01091 L3321: ATTRIBUTE_UNUSED_LABEL
01092 if (GET_CODE (x2) == PLUS)
01093 goto L1571;
01094 goto L3284;
01095
01096 L1571: ATTRIBUTE_UNUSED_LABEL
01097 x3 = XEXP (x2, 0);
01098 if (register_operand (x3, SImode))
01099 {
01100 operands[1] = x3;
01101 goto L1572;
01102 }
01103 goto L3284;
01104
01105 L1572: ATTRIBUTE_UNUSED_LABEL
01106 x3 = XEXP (x2, 1);
01107 if (register_operand (x3, SImode))
01108 {
01109 operands[2] = x3;
01110 goto L1573;
01111 }
01112 goto L3284;
01113
01114 L1573: ATTRIBUTE_UNUSED_LABEL
01115 x1 = XEXP (x0, 1);
01116 if (register_operand (x1, SFmode))
01117 {
01118 operands[0] = x1;
01119 goto L1574;
01120 }
01121 x1 = XEXP (x0, 0);
01122 goto L3284;
01123
01124 L1574: ATTRIBUTE_UNUSED_LABEL
01125 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT))
01126 {
01127 return 174;
01128 }
01129 x1 = XEXP (x0, 0);
01130 goto L3284;
01131
01132 L3322: ATTRIBUTE_UNUSED_LABEL
01133 if (GET_CODE (x2) == PLUS)
01134 goto L1578;
01135 goto L3284;
01136
01137 L1578: ATTRIBUTE_UNUSED_LABEL
01138 x3 = XEXP (x2, 0);
01139 if (se_register_operand (x3, DImode))
01140 {
01141 operands[1] = x3;
01142 goto L1579;
01143 }
01144 goto L3284;
01145
01146 L1579: ATTRIBUTE_UNUSED_LABEL
01147 x3 = XEXP (x2, 1);
01148 if (se_register_operand (x3, DImode))
01149 {
01150 operands[2] = x3;
01151 goto L1580;
01152 }
01153 goto L3284;
01154
01155 L1580: ATTRIBUTE_UNUSED_LABEL
01156 x1 = XEXP (x0, 1);
01157 if (register_operand (x1, SFmode))
01158 {
01159 operands[0] = x1;
01160 goto L1581;
01161 }
01162 x1 = XEXP (x0, 0);
01163 goto L3284;
01164
01165 L1581: ATTRIBUTE_UNUSED_LABEL
01166 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT))
01167 {
01168 return 175;
01169 }
01170 x1 = XEXP (x0, 0);
01171 goto L3284;
01172
01173 L16: ATTRIBUTE_UNUSED_LABEL
01174 x1 = XEXP (x0, 1);
01175 if (GET_MODE (x1) == SFmode)
01176 goto L3323;
01177 x1 = XEXP (x0, 0);
01178 goto L3284;
01179
01180 L3323: ATTRIBUTE_UNUSED_LABEL
01181 switch (GET_CODE (x1))
01182 {
01183 case PLUS:
01184 goto L17;
01185 case MINUS:
01186 goto L109;
01187 case MULT:
01188 goto L207;
01189 case NEG:
01190 goto L737;
01191 case DIV:
01192 goto L768;
01193 case SQRT:
01194 goto L1047;
01195 case ABS:
01196 goto L1081;
01197 case FLOAT_TRUNCATE:
01198 goto L1257;
01199 case FLOAT:
01200 goto L1460;
01201 case MEM:
01202 goto L1543;
01203 case IF_THEN_ELSE:
01204 goto L2717;
01205 default:
01206 break;
01207 }
01208 x1 = XEXP (x0, 0);
01209 goto L3284;
01210
01211 L17: ATTRIBUTE_UNUSED_LABEL
01212 x2 = XEXP (x1, 0);
01213 if (GET_MODE (x2) == SFmode)
01214 goto L3335;
01215 x1 = XEXP (x0, 0);
01216 goto L3284;
01217
01218 L3335: ATTRIBUTE_UNUSED_LABEL
01219 if (GET_CODE (x2) == MULT)
01220 goto L705;
01221 if (register_operand (x2, SFmode))
01222 {
01223 operands[1] = x2;
01224 goto L18;
01225 }
01226 x1 = XEXP (x0, 0);
01227 goto L3284;
01228
01229 L705: ATTRIBUTE_UNUSED_LABEL
01230 x3 = XEXP (x2, 0);
01231 if (register_operand (x3, SFmode))
01232 {
01233 operands[1] = x3;
01234 goto L706;
01235 }
01236 x1 = XEXP (x0, 0);
01237 goto L3284;
01238
01239 L706: ATTRIBUTE_UNUSED_LABEL
01240 x3 = XEXP (x2, 1);
01241 if (register_operand (x3, SFmode))
01242 {
01243 operands[2] = x3;
01244 goto L707;
01245 }
01246 x1 = XEXP (x0, 0);
01247 goto L3284;
01248
01249 L707: ATTRIBUTE_UNUSED_LABEL
01250 x2 = XEXP (x1, 1);
01251 if (register_operand (x2, SFmode))
01252 {
01253 operands[3] = x2;
01254 goto L708;
01255 }
01256 x1 = XEXP (x0, 0);
01257 goto L3284;
01258
01259 L708: ATTRIBUTE_UNUSED_LABEL
01260 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_FUSED_MADD))
01261 {
01262 return 56;
01263 }
01264 x1 = XEXP (x0, 0);
01265 goto L3284;
01266
01267 L18: ATTRIBUTE_UNUSED_LABEL
01268 x2 = XEXP (x1, 1);
01269 if (register_operand (x2, SFmode))
01270 {
01271 operands[2] = x2;
01272 goto L19;
01273 }
01274 x1 = XEXP (x0, 0);
01275 goto L3284;
01276
01277 L19: ATTRIBUTE_UNUSED_LABEL
01278 if ((TARGET_HARD_FLOAT))
01279 {
01280 return 3;
01281 }
01282 x1 = XEXP (x0, 0);
01283 goto L3284;
01284
01285 L109: ATTRIBUTE_UNUSED_LABEL
01286 x2 = XEXP (x1, 0);
01287 if (GET_MODE (x2) == SFmode)
01288 goto L3337;
01289 x1 = XEXP (x0, 0);
01290 goto L3284;
01291
01292 L3337: ATTRIBUTE_UNUSED_LABEL
01293 if (GET_CODE (x2) == MULT)
01294 goto L721;
01295 if (register_operand (x2, SFmode))
01296 {
01297 operands[1] = x2;
01298 goto L110;
01299 }
01300 x1 = XEXP (x0, 0);
01301 goto L3284;
01302
01303 L721: ATTRIBUTE_UNUSED_LABEL
01304 x3 = XEXP (x2, 0);
01305 if (register_operand (x3, SFmode))
01306 {
01307 operands[1] = x3;
01308 goto L722;
01309 }
01310 x1 = XEXP (x0, 0);
01311 goto L3284;
01312
01313 L722: ATTRIBUTE_UNUSED_LABEL
01314 x3 = XEXP (x2, 1);
01315 if (register_operand (x3, SFmode))
01316 {
01317 operands[2] = x3;
01318 goto L723;
01319 }
01320 x1 = XEXP (x0, 0);
01321 goto L3284;
01322
01323 L723: ATTRIBUTE_UNUSED_LABEL
01324 x2 = XEXP (x1, 1);
01325 if (register_operand (x2, SFmode))
01326 {
01327 operands[3] = x2;
01328 goto L724;
01329 }
01330 x1 = XEXP (x0, 0);
01331 goto L3284;
01332
01333 L724: ATTRIBUTE_UNUSED_LABEL
01334 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && TARGET_FUSED_MADD))
01335 {
01336 return 58;
01337 }
01338 x1 = XEXP (x0, 0);
01339 goto L3284;
01340
01341 L110: ATTRIBUTE_UNUSED_LABEL
01342 x2 = XEXP (x1, 1);
01343 if (GET_MODE (x2) == SFmode)
01344 goto L3339;
01345 x1 = XEXP (x0, 0);
01346 goto L3284;
01347
01348 L3339: ATTRIBUTE_UNUSED_LABEL
01349 if (GET_CODE (x2) == MULT)
01350 goto L756;
01351 if (register_operand (x2, SFmode))
01352 {
01353 operands[2] = x2;
01354 goto L111;
01355 }
01356 x1 = XEXP (x0, 0);
01357 goto L3284;
01358
01359 L756: ATTRIBUTE_UNUSED_LABEL
01360 x3 = XEXP (x2, 0);
01361 if (register_operand (x3, SFmode))
01362 {
01363 operands[2] = x3;
01364 goto L757;
01365 }
01366 x1 = XEXP (x0, 0);
01367 goto L3284;
01368
01369 L757: ATTRIBUTE_UNUSED_LABEL
01370 x3 = XEXP (x2, 1);
01371 if (register_operand (x3, SFmode))
01372 {
01373 operands[3] = x3;
01374 goto L758;
01375 }
01376 x1 = XEXP (x0, 0);
01377 goto L3284;
01378
01379 L758: ATTRIBUTE_UNUSED_LABEL
01380 if ((ISA_HAS_NMADD_NMSUB && TARGET_HARD_FLOAT && TARGET_FUSED_MADD))
01381 {
01382 return 62;
01383 }
01384 x1 = XEXP (x0, 0);
01385 goto L3284;
01386
01387 L111: ATTRIBUTE_UNUSED_LABEL
01388 if ((TARGET_HARD_FLOAT))
01389 {
01390 return 17;
01391 }
01392 x1 = XEXP (x0, 0);
01393 goto L3284;
01394
01395 L207: ATTRIBUTE_UNUSED_LABEL
01396 x2 = XEXP (x1, 0);
01397 if (register_operand (x2, SFmode))
01398 {
01399 operands[1] = x2;
01400 goto L208;
01401 }
01402 x1 = XEXP (x0, 0);
01403 goto L3284;
01404
01405 L208: ATTRIBUTE_UNUSED_LABEL
01406 x2 = XEXP (x1, 1);
01407 if (register_operand (x2, SFmode))
01408 {
01409 operands[2] = x2;
01410 goto L209;
01411 }
01412 x1 = XEXP (x0, 0);
01413 goto L3284;
01414
01415 L209: ATTRIBUTE_UNUSED_LABEL
01416 if ((TARGET_HARD_FLOAT && !TARGET_MIPS4300))
01417 {
01418 return 32;
01419 }
01420 L215: ATTRIBUTE_UNUSED_LABEL
01421 if ((TARGET_HARD_FLOAT && TARGET_MIPS4300))
01422 {
01423 return 33;
01424 }
01425 x1 = XEXP (x0, 0);
01426 goto L3284;
01427
01428 L737: ATTRIBUTE_UNUSED_LABEL
01429 x2 = XEXP (x1, 0);
01430 if (GET_MODE (x2) == SFmode)
01431 goto L3340;
01432 x1 = XEXP (x0, 0);
01433 goto L3284;
01434
01435 L3340: ATTRIBUTE_UNUSED_LABEL
01436 if (GET_CODE (x2) == PLUS)
01437 goto L738;
01438 if (register_operand (x2, SFmode))
01439 {
01440 operands[1] = x2;
01441 goto L1139;
01442 }
01443 x1 = XEXP (x0, 0);
01444 goto L3284;
01445
01446 L738: ATTRIBUTE_UNUSED_LABEL
01447 x3 = XEXP (x2, 0);
01448 if (GET_MODE (x3) == SFmode
01449 && GET_CODE (x3) == MULT)
01450 goto L739;
01451 x1 = XEXP (x0, 0);
01452 goto L3284;
01453
01454 L739: ATTRIBUTE_UNUSED_LABEL
01455 x4 = XEXP (x3, 0);
01456 if (register_operand (x4, SFmode))
01457 {
01458 operands[1] = x4;
01459 goto L740;
01460 }
01461 x1 = XEXP (x0, 0);
01462 goto L3284;
01463
01464 L740: ATTRIBUTE_UNUSED_LABEL
01465 x4 = XEXP (x3, 1);
01466 if (register_operand (x4, SFmode))
01467 {
01468 operands[2] = x4;
01469 goto L741;
01470 }
01471 x1 = XEXP (x0, 0);
01472 goto L3284;
01473
01474 L741: ATTRIBUTE_UNUSED_LABEL
01475 x3 = XEXP (x2, 1);
01476 if (register_operand (x3, SFmode))
01477 {
01478 operands[3] = x3;
01479 goto L742;
01480 }
01481 x1 = XEXP (x0, 0);
01482 goto L3284;
01483
01484 L742: ATTRIBUTE_UNUSED_LABEL
01485 if ((ISA_HAS_NMADD_NMSUB && TARGET_HARD_FLOAT && TARGET_FUSED_MADD))
01486 {
01487 return 60;
01488 }
01489 x1 = XEXP (x0, 0);
01490 goto L3284;
01491
01492 L1139: ATTRIBUTE_UNUSED_LABEL
01493 if ((TARGET_HARD_FLOAT))
01494 {
01495 return 95;
01496 }
01497 x1 = XEXP (x0, 0);
01498 goto L3284;
01499
01500 L768: ATTRIBUTE_UNUSED_LABEL
01501 x2 = XEXP (x1, 0);
01502 if (GET_MODE (x2) == SFmode)
01503 goto L3343;
01504 x1 = XEXP (x0, 0);
01505 goto L3284;
01506
01507 L3343: ATTRIBUTE_UNUSED_LABEL
01508 if (const_float_1_operand (x2, SFmode))
01509 {
01510 operands[1] = x2;
01511 goto L781;
01512 }
01513 if (register_operand (x2, SFmode))
01514 {
01515 operands[1] = x2;
01516 goto L769;
01517 }
01518 x1 = XEXP (x0, 0);
01519 goto L3284;
01520
01521 L781: ATTRIBUTE_UNUSED_LABEL
01522 x2 = XEXP (x1, 1);
01523 if (GET_MODE (x2) == SFmode)
01524 goto L3345;
01525 x1 = XEXP (x0, 0);
01526 goto L3284;
01527
01528 L3345: ATTRIBUTE_UNUSED_LABEL
01529 if (GET_CODE (x2) == SQRT)
01530 goto L1061;
01531 if (register_operand (x2, SFmode))
01532 {
01533 operands[2] = x2;
01534 goto L782;
01535 }
01536 x1 = XEXP (x0, 0);
01537 goto L3284;
01538
01539 L1061: ATTRIBUTE_UNUSED_LABEL
01540 x3 = XEXP (x2, 0);
01541 if (register_operand (x3, SFmode))
01542 {
01543 operands[2] = x3;
01544 goto L1062;
01545 }
01546 x1 = XEXP (x0, 0);
01547 goto L3284;
01548
01549 L1062: ATTRIBUTE_UNUSED_LABEL
01550 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && flag_unsafe_math_optimizations))
01551 {
01552 return 84;
01553 }
01554 x1 = XEXP (x0, 0);
01555 goto L3284;
01556
01557 L782: ATTRIBUTE_UNUSED_LABEL
01558 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT && flag_unsafe_math_optimizations))
01559 {
01560 return 66;
01561 }
01562 x1 = XEXP (x0, 0);
01563 goto L3284;
01564
01565 L769: ATTRIBUTE_UNUSED_LABEL
01566 x2 = XEXP (x1, 1);
01567 if (register_operand (x2, SFmode))
01568 {
01569 operands[2] = x2;
01570 goto L770;
01571 }
01572 x1 = XEXP (x0, 0);
01573 goto L3284;
01574
01575 L770: ATTRIBUTE_UNUSED_LABEL
01576 if ((TARGET_HARD_FLOAT))
01577 {
01578 return 64;
01579 }
01580 x1 = XEXP (x0, 0);
01581 goto L3284;
01582
01583 L1047: ATTRIBUTE_UNUSED_LABEL
01584 x2 = XEXP (x1, 0);
01585 if (register_operand (x2, SFmode))
01586 {
01587 operands[1] = x2;
01588 goto L1048;
01589 }
01590 x1 = XEXP (x0, 0);
01591 goto L3284;
01592
01593 L1048: ATTRIBUTE_UNUSED_LABEL
01594 if ((TARGET_HARD_FLOAT && HAVE_SQRT_P()))
01595 {
01596 return 82;
01597 }
01598 x1 = XEXP (x0, 0);
01599 goto L3284;
01600
01601 L1081: ATTRIBUTE_UNUSED_LABEL
01602 x2 = XEXP (x1, 0);
01603 if (register_operand (x2, SFmode))
01604 {
01605 operands[1] = x2;
01606 goto L1082;
01607 }
01608 x1 = XEXP (x0, 0);
01609 goto L3284;
01610
01611 L1082: ATTRIBUTE_UNUSED_LABEL
01612 if ((TARGET_HARD_FLOAT))
01613 {
01614 return 88;
01615 }
01616 x1 = XEXP (x0, 0);
01617 goto L3284;
01618
01619 L1257: ATTRIBUTE_UNUSED_LABEL
01620 x2 = XEXP (x1, 0);
01621 if (register_operand (x2, DFmode))
01622 {
01623 operands[1] = x2;
01624 goto L1258;
01625 }
01626 x1 = XEXP (x0, 0);
01627 goto L3284;
01628
01629 L1258: ATTRIBUTE_UNUSED_LABEL
01630 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
01631 {
01632 return 115;
01633 }
01634 x1 = XEXP (x0, 0);
01635 goto L3284;
01636
01637 L1460: ATTRIBUTE_UNUSED_LABEL
01638 x2 = XEXP (x1, 0);
01639 switch (GET_MODE (x2))
01640 {
01641 case SImode:
01642 goto L3346;
01643 case DImode:
01644 goto L3347;
01645 default:
01646 break;
01647 }
01648 x1 = XEXP (x0, 0);
01649 goto L3284;
01650
01651 L3346: ATTRIBUTE_UNUSED_LABEL
01652 if (register_operand (x2, SImode))
01653 {
01654 operands[1] = x2;
01655 goto L1461;
01656 }
01657 x1 = XEXP (x0, 0);
01658 goto L3284;
01659
01660 L1461: ATTRIBUTE_UNUSED_LABEL
01661 if ((TARGET_HARD_FLOAT))
01662 {
01663 return 151;
01664 }
01665 x1 = XEXP (x0, 0);
01666 goto L3284;
01667
01668 L3347: ATTRIBUTE_UNUSED_LABEL
01669 if (register_operand (x2, DImode))
01670 {
01671 operands[1] = x2;
01672 goto L1466;
01673 }
01674 x1 = XEXP (x0, 0);
01675 goto L3284;
01676
01677 L1466: ATTRIBUTE_UNUSED_LABEL
01678 if ((TARGET_HARD_FLOAT && TARGET_FLOAT64 && TARGET_DOUBLE_FLOAT))
01679 {
01680 return 152;
01681 }
01682 x1 = XEXP (x0, 0);
01683 goto L3284;
01684
01685 L1543: ATTRIBUTE_UNUSED_LABEL
01686 x2 = XEXP (x1, 0);
01687 switch (GET_MODE (x2))
01688 {
01689 case SImode:
01690 goto L3348;
01691 case DImode:
01692 goto L3349;
01693 default:
01694 break;
01695 }
01696 x1 = XEXP (x0, 0);
01697 goto L3284;
01698
01699 L3348: ATTRIBUTE_UNUSED_LABEL
01700 if (GET_CODE (x2) == PLUS)
01701 goto L1544;
01702 x1 = XEXP (x0, 0);
01703 goto L3284;
01704
01705 L1544: ATTRIBUTE_UNUSED_LABEL
01706 x3 = XEXP (x2, 0);
01707 if (register_operand (x3, SImode))
01708 {
01709 operands[1] = x3;
01710 goto L1545;
01711 }
01712 x1 = XEXP (x0, 0);
01713 goto L3284;
01714
01715 L1545: ATTRIBUTE_UNUSED_LABEL
01716 x3 = XEXP (x2, 1);
01717 if (register_operand (x3, SImode))
01718 {
01719 operands[2] = x3;
01720 goto L1546;
01721 }
01722 x1 = XEXP (x0, 0);
01723 goto L3284;
01724
01725 L1546: ATTRIBUTE_UNUSED_LABEL
01726 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT))
01727 {
01728 return 170;
01729 }
01730 x1 = XEXP (x0, 0);
01731 goto L3284;
01732
01733 L3349: ATTRIBUTE_UNUSED_LABEL
01734 if (GET_CODE (x2) == PLUS)
01735 goto L1551;
01736 x1 = XEXP (x0, 0);
01737 goto L3284;
01738
01739 L1551: ATTRIBUTE_UNUSED_LABEL
01740 x3 = XEXP (x2, 0);
01741 if (se_register_operand (x3, DImode))
01742 {
01743 operands[1] = x3;
01744 goto L1552;
01745 }
01746 x1 = XEXP (x0, 0);
01747 goto L3284;
01748
01749 L1552: ATTRIBUTE_UNUSED_LABEL
01750 x3 = XEXP (x2, 1);
01751 if (se_register_operand (x3, DImode))
01752 {
01753 operands[2] = x3;
01754 goto L1553;
01755 }
01756 x1 = XEXP (x0, 0);
01757 goto L3284;
01758
01759 L1553: ATTRIBUTE_UNUSED_LABEL
01760 if ((ISA_HAS_FP4 && TARGET_HARD_FLOAT))
01761 {
01762 return 171;
01763 }
01764 x1 = XEXP (x0, 0);
01765 goto L3284;
01766
01767 L2717: ATTRIBUTE_UNUSED_LABEL
01768 x2 = XEXP (x1, 0);
01769 if (equality_op (x2, VOIDmode))
01770 {
01771 operands[4] = x2;
01772 goto L2718;
01773 }
01774 L2735: ATTRIBUTE_UNUSED_LABEL
01775 if (equality_op (x2, VOIDmode))
01776 {
01777 operands[3] = x2;
01778 goto L2736;
01779 }
01780 x1 = XEXP (x0, 0);
01781 goto L3284;
01782
01783 L2718: ATTRIBUTE_UNUSED_LABEL
01784 x3 = XEXP (x2, 0);
01785 switch (GET_MODE (x3))
01786 {
01787 case SImode:
01788 goto L3350;
01789 case DImode:
01790 goto L3351;
01791 default:
01792 break;
01793 }
01794 goto L2735;
01795
01796 L3350: ATTRIBUTE_UNUSED_LABEL
01797 if (register_operand (x3, SImode))
01798 {
01799 operands[1] = x3;
01800 goto L2719;
01801 }
01802 goto L2735;
01803
01804 L2719: ATTRIBUTE_UNUSED_LABEL
01805 x3 = XEXP (x2, 1);
01806 if (GET_CODE (x3) == CONST_INT
01807 && XWINT (x3, 0) == 0LL)
01808 goto L2720;
01809 goto L2735;
01810
01811 L2720: ATTRIBUTE_UNUSED_LABEL
01812 x2 = XEXP (x1, 1);
01813 if (register_operand (x2, SFmode))
01814 {
01815 operands[2] = x2;
01816 goto L2721;
01817 }
01818 x2 = XEXP (x1, 0);
01819 goto L2735;
01820
01821 L2721: ATTRIBUTE_UNUSED_LABEL
01822 x2 = XEXP (x1, 2);
01823 if (register_operand (x2, SFmode))
01824 {
01825 operands[3] = x2;
01826 goto L2722;
01827 }
01828 x2 = XEXP (x1, 0);
01829 goto L2735;
01830
01831 L2722: ATTRIBUTE_UNUSED_LABEL
01832 if ((ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT))
01833 {
01834 return 325;
01835 }
01836 x1 = XEXP (x0, 1);
01837 x2 = XEXP (x1, 0);
01838 goto L2735;
01839
01840 L3351: ATTRIBUTE_UNUSED_LABEL
01841 if (se_register_operand (x3, DImode))
01842 {
01843 operands[1] = x3;
01844 goto L2728;
01845 }
01846 goto L2735;
01847
01848 L2728: ATTRIBUTE_UNUSED_LABEL
01849 x3 = XEXP (x2, 1);
01850 if (GET_CODE (x3) == CONST_INT
01851 && XWINT (x3, 0) == 0LL)
01852 goto L2729;
01853 goto L2735;
01854
01855 L2729: ATTRIBUTE_UNUSED_LABEL
01856 x2 = XEXP (x1, 1);
01857 if (register_operand (x2, SFmode))
01858 {
01859 operands[2] = x2;
01860 goto L2730;
01861 }
01862 x2 = XEXP (x1, 0);
01863 goto L2735;
01864
01865 L2730: ATTRIBUTE_UNUSED_LABEL
01866 x2 = XEXP (x1, 2);
01867 if (register_operand (x2, SFmode))
01868 {
01869 operands[3] = x2;
01870 goto L2731;
01871 }
01872 x2 = XEXP (x1, 0);
01873 goto L2735;
01874
01875 L2731: ATTRIBUTE_UNUSED_LABEL
01876 if ((ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT))
01877 {
01878 return 326;
01879 }
01880 x1 = XEXP (x0, 1);
01881 x2 = XEXP (x1, 0);
01882 goto L2735;
01883
01884 L2736: ATTRIBUTE_UNUSED_LABEL
01885 x3 = XEXP (x2, 0);
01886 if (register_operand (x3, CCmode))
01887 {
01888 operands[4] = x3;
01889 goto L2737;
01890 }
01891 x1 = XEXP (x0, 0);
01892 goto L3284;
01893
01894 L2737: ATTRIBUTE_UNUSED_LABEL
01895 x3 = XEXP (x2, 1);
01896 if (GET_CODE (x3) == CONST_INT
01897 && XWINT (x3, 0) == 0LL)
01898 goto L2738;
01899 x1 = XEXP (x0, 0);
01900 goto L3284;
01901
01902 L2738: ATTRIBUTE_UNUSED_LABEL
01903 x2 = XEXP (x1, 1);
01904 if (register_operand (x2, SFmode))
01905 {
01906 operands[1] = x2;
01907 goto L2739;
01908 }
01909 x1 = XEXP (x0, 0);
01910 goto L3284;
01911
01912 L2739: ATTRIBUTE_UNUSED_LABEL
01913 x2 = XEXP (x1, 2);
01914 if (register_operand (x2, SFmode))
01915 {
01916 operands[2] = x2;
01917 goto L2740;
01918 }
01919 x1 = XEXP (x0, 0);
01920 goto L3284;
01921
01922 L2740: ATTRIBUTE_UNUSED_LABEL
01923 if ((ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT))
01924 {
01925 return 327;
01926 }
01927 x1 = XEXP (x0, 0);
01928 goto L3284;
01929
01930 L1614: ATTRIBUTE_UNUSED_LABEL
01931 x1 = XEXP (x0, 1);
01932 if (general_operand (x1, SFmode))
01933 {
01934 operands[1] = x1;
01935 goto L1615;
01936 }
01937 L1622: ATTRIBUTE_UNUSED_LABEL
01938 if (nonimmediate_operand (x1, SFmode))
01939 {
01940 operands[1] = x1;
01941 goto L1623;
01942 }
01943 goto ret0;
01944
01945 L1615: ATTRIBUTE_UNUSED_LABEL
01946 if ((TARGET_HARD_FLOAT
01947 && (register_operand (operands[0], SFmode)
01948 || nonmemory_operand (operands[1], SFmode))))
01949 {
01950 return 182;
01951 }
01952 L1619: ATTRIBUTE_UNUSED_LABEL
01953 if ((TARGET_SOFT_FLOAT && !TARGET_MIPS16
01954 && (register_operand (operands[0], SFmode)
01955 || nonmemory_operand (operands[1], SFmode))))
01956 {
01957 return 183;
01958 }
01959 x1 = XEXP (x0, 1);
01960 goto L1622;
01961
01962 L1623: ATTRIBUTE_UNUSED_LABEL
01963 if ((TARGET_MIPS16
01964 && (register_operand (operands[0], SFmode)
01965 || register_operand (operands[1], SFmode))))
01966 {
01967 return 184;
01968 }
01969 goto ret0;
01970 ret0:
01971 return -1;
01972 }
01973
01974 static int recog_3 PARAMS ((rtx, rtx, int *));
01975 static int
01976 recog_3 (x0, insn, pnum_clobbers)
01977 rtx x0 ATTRIBUTE_UNUSED;
01978 rtx insn ATTRIBUTE_UNUSED;
01979 int *pnum_clobbers ATTRIBUTE_UNUSED;
01980 {
01981 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
01982 rtx x1 ATTRIBUTE_UNUSED;
01983 rtx x2 ATTRIBUTE_UNUSED;
01984 rtx x3 ATTRIBUTE_UNUSED;
01985 rtx x4 ATTRIBUTE_UNUSED;
01986 rtx x5 ATTRIBUTE_UNUSED;
01987 rtx x6 ATTRIBUTE_UNUSED;
01988 rtx x7 ATTRIBUTE_UNUSED;
01989 int tem ATTRIBUTE_UNUSED;
01990
01991 x1 = XEXP (x0, 1);
01992 switch (GET_CODE (x1))
01993 {
01994 case MINUS:
01995 goto L127;
01996 case MULT:
01997 goto L232;
01998 case PLUS:
01999 goto L291;
02000 case NEG:
02001 goto L338;
02002 case TRUNCATE:
02003 goto L510;
02004 case DIV:
02005 goto L917;
02006 case MOD:
02007 goto L951;
02008 case UDIV:
02009 goto L985;
02010 case UMOD:
02011 goto L1019;
02012 case ABS:
02013 goto L1066;
02014 case FFS:
02015 goto L1096;
02016 case NOT:
02017 goto L1143;
02018 case AND:
02019 goto L1241;
02020 case IOR:
02021 goto L1181;
02022 case XOR:
02023 goto L1205;
02024 case ZERO_EXTEND:
02025 goto L1298;
02026 case SIGN_EXTEND:
02027 goto L1382;
02028 case FIX:
02029 goto L1404;
02030 case UNSPEC:
02031 goto L3390;
02032 case HIGH:
02033 goto L1488;
02034 case LO_SUM:
02035 goto L1493;
02036 case ASHIFT:
02037 goto L1747;
02038 case ASHIFTRT:
02039 goto L1798;
02040 case LSHIFTRT:
02041 goto L1849;
02042 case ROTATERT:
02043 goto L1906;
02044 case EQ:
02045 goto L2031;
02046 case NE:
02047 goto L2051;
02048 case GT:
02049 goto L2061;
02050 case LT:
02051 goto L2085;
02052 case LE:
02053 goto L2109;
02054 case GTU:
02055 goto L2133;
02056 case LTU:
02057 goto L2157;
02058 case LEU:
02059 goto L2181;
02060 case IF_THEN_ELSE:
02061 goto L2663;
02062 default:
02063 break;
02064 }
02065 goto ret0;
02066
02067 L127: ATTRIBUTE_UNUSED_LABEL
02068 x2 = XEXP (x1, 0);
02069 if (GET_MODE (x2) == SImode)
02070 goto L3391;
02071 goto ret0;
02072
02073 L3391: ATTRIBUTE_UNUSED_LABEL
02074 if (GET_CODE (x2) == REG
02075 && XINT (x2, 0) == 29)
02076 goto L128;
02077 L3392: ATTRIBUTE_UNUSED_LABEL
02078 if (register_operand (x2, SImode))
02079 {
02080 operands[1] = x2;
02081 goto L317;
02082 }
02083 goto ret0;
02084
02085 L128: ATTRIBUTE_UNUSED_LABEL
02086 x2 = XEXP (x1, 1);
02087 if (small_int (x2, SImode))
02088 {
02089 operands[1] = x2;
02090 goto L129;
02091 }
02092 x2 = XEXP (x1, 0);
02093 goto L3392;
02094
02095 L129: ATTRIBUTE_UNUSED_LABEL
02096 if ((TARGET_MIPS16
02097 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768)))
02098 {
02099 return 20;
02100 }
02101 x1 = XEXP (x0, 1);
02102 x2 = XEXP (x1, 0);
02103 goto L3392;
02104
02105 L317: ATTRIBUTE_UNUSED_LABEL
02106 x2 = XEXP (x1, 1);
02107 if (GET_MODE (x2) == SImode
02108 && GET_CODE (x2) == MULT)
02109 goto L318;
02110 if (arith_operand (x2, SImode))
02111 {
02112 operands[2] = x2;
02113 goto L135;
02114 }
02115 goto ret0;
02116
02117 L318: ATTRIBUTE_UNUSED_LABEL
02118 x3 = XEXP (x2, 0);
02119 if (register_operand (x3, SImode))
02120 {
02121 operands[2] = x3;
02122 goto L319;
02123 }
02124 goto ret0;
02125
02126 L319: ATTRIBUTE_UNUSED_LABEL
02127 x3 = XEXP (x2, 1);
02128 if (register_operand (x3, SImode))
02129 {
02130 operands[3] = x3;
02131 goto L320;
02132 }
02133 goto ret0;
02134
02135 L320: ATTRIBUTE_UNUSED_LABEL
02136 if ((ISA_HAS_MADD_MSUB)
02137 && pnum_clobbers != NULL)
02138 {
02139 *pnum_clobbers = 4;
02140 return 38;
02141 }
02142 L366: ATTRIBUTE_UNUSED_LABEL
02143 if ((ISA_HAS_MSAC && TARGET_64BIT)
02144 && pnum_clobbers != NULL)
02145 {
02146 *pnum_clobbers = 4;
02147 return 40;
02148 }
02149 goto ret0;
02150
02151 L135: ATTRIBUTE_UNUSED_LABEL
02152 if ((TARGET_MIPS16
02153 && (GET_CODE (operands[2]) != CONST_INT
02154 || (INTVAL (operands[2]) != -32768 && INTVAL (operands[2]) != -0x4000))))
02155 {
02156 return 21;
02157 }
02158 goto ret0;
02159
02160 L232: ATTRIBUTE_UNUSED_LABEL
02161 x2 = XEXP (x1, 0);
02162 if (register_operand (x2, SImode))
02163 {
02164 operands[1] = x2;
02165 goto L233;
02166 }
02167 goto ret0;
02168
02169 L233: ATTRIBUTE_UNUSED_LABEL
02170 x2 = XEXP (x1, 1);
02171 if (register_operand (x2, SImode))
02172 {
02173 operands[2] = x2;
02174 goto L234;
02175 }
02176 goto ret0;
02177
02178 L234: ATTRIBUTE_UNUSED_LABEL
02179 if ((GENERATE_MULT3_SI
02180 || TARGET_MAD)
02181 && pnum_clobbers != NULL)
02182 {
02183 *pnum_clobbers = 3;
02184 return 34;
02185 }
02186 L251: ATTRIBUTE_UNUSED_LABEL
02187 if ((!TARGET_MIPS4000 || TARGET_MIPS16)
02188 && pnum_clobbers != NULL)
02189 {
02190 *pnum_clobbers = 2;
02191 return 35;
02192 }
02193 L270: ATTRIBUTE_UNUSED_LABEL
02194 if ((TARGET_MIPS4000 && !TARGET_MIPS16)
02195 && pnum_clobbers != NULL)
02196 {
02197 *pnum_clobbers = 3;
02198 return 36;
02199 }
02200 goto ret0;
02201
02202 L291: ATTRIBUTE_UNUSED_LABEL
02203 x2 = XEXP (x1, 0);
02204 if (GET_MODE (x2) == SImode
02205 && GET_CODE (x2) == MULT)
02206 goto L292;
02207 goto ret0;
02208
02209 L292: ATTRIBUTE_UNUSED_LABEL
02210 x3 = XEXP (x2, 0);
02211 if (register_operand (x3, SImode))
02212 {
02213 operands[1] = x3;
02214 goto L293;
02215 }
02216 goto ret0;
02217
02218 L293: ATTRIBUTE_UNUSED_LABEL
02219 x3 = XEXP (x2, 1);
02220 if (register_operand (x3, SImode))
02221 {
02222 operands[2] = x3;
02223 goto L294;
02224 }
02225 goto ret0;
02226
02227 L294: ATTRIBUTE_UNUSED_LABEL
02228 x2 = XEXP (x1, 1);
02229 if (register_operand (x2, SImode))
02230 {
02231 operands[3] = x2;
02232 goto L295;
02233 }
02234 L646: ATTRIBUTE_UNUSED_LABEL
02235 if (rtx_equal_p (x2, operands[0])
02236 && (TARGET_MAD)
02237 && pnum_clobbers != NULL)
02238 {
02239 *pnum_clobbers = 2;
02240 return 52;
02241 }
02242 goto ret0;
02243
02244 L295: ATTRIBUTE_UNUSED_LABEL
02245 if (((TARGET_MIPS3900
02246 || TARGET_MIPS5400
02247 || TARGET_MIPS5500
02248 || ISA_HAS_MADD_MSUB)
02249 && !TARGET_MIPS16)
02250 && pnum_clobbers != NULL)
02251 {
02252 *pnum_clobbers = 4;
02253 return 37;
02254 }
02255 x1 = XEXP (x0, 1);
02256 x2 = XEXP (x1, 1);
02257 goto L646;
02258
02259 L338: ATTRIBUTE_UNUSED_LABEL
02260 x2 = XEXP (x1, 0);
02261 if (GET_MODE (x2) == SImode)
02262 goto L3393;
02263 goto ret0;
02264
02265 L3393: ATTRIBUTE_UNUSED_LABEL
02266 if (GET_CODE (x2) == MULT)
02267 goto L339;
02268 if (register_operand (x2, SImode))
02269 {
02270 operands[1] = x2;
02271 return 91;
02272 }
02273 goto ret0;
02274
02275 L339: ATTRIBUTE_UNUSED_LABEL
02276 x3 = XEXP (x2, 0);
02277 if (register_operand (x3, SImode))
02278 {
02279 operands[1] = x3;
02280 goto L340;
02281 }
02282 goto ret0;
02283
02284 L340: ATTRIBUTE_UNUSED_LABEL
02285 x3 = XEXP (x2, 1);
02286 if (register_operand (x3, SImode))
02287 {
02288 operands[2] = x3;
02289 goto L341;
02290 }
02291 goto ret0;
02292
02293 L341: ATTRIBUTE_UNUSED_LABEL
02294 if ((ISA_HAS_MULS && TARGET_64BIT)
02295 && pnum_clobbers != NULL)
02296 {
02297 *pnum_clobbers = 3;
02298 return 39;
02299 }
02300 goto ret0;
02301
02302 L510: ATTRIBUTE_UNUSED_LABEL
02303 x2 = XEXP (x1, 0);
02304 if (GET_MODE (x2) == DImode)
02305 goto L3397;
02306 goto ret0;
02307
02308 L3397: ATTRIBUTE_UNUSED_LABEL
02309 switch (GET_CODE (x2))
02310 {
02311 case ASHIFTRT:
02312 goto L1278;
02313 case LSHIFTRT:
02314 goto L1285;
02315 case ASHIFT:
02316 goto L1292;
02317 default:
02318 break;
02319 }
02320 L3395: ATTRIBUTE_UNUSED_LABEL
02321 if (highpart_shift_operator (x2, DImode))
02322 {
02323 operands[5] = x2;
02324 goto L511;
02325 }
02326 if (se_register_operand (x2, DImode))
02327 {
02328 operands[1] = x2;
02329 goto L1263;
02330 }
02331 goto ret0;
02332
02333 L1278: ATTRIBUTE_UNUSED_LABEL
02334 x3 = XEXP (x2, 0);
02335 if (se_register_operand (x3, DImode))
02336 {
02337 operands[1] = x3;
02338 goto L1279;
02339 }
02340 goto L3395;
02341
02342 L1279: ATTRIBUTE_UNUSED_LABEL
02343 x3 = XEXP (x2, 1);
02344 if (small_int (x3, DImode))
02345 {
02346 operands[2] = x3;
02347 goto L1280;
02348 }
02349 goto L3395;
02350
02351 L1280: ATTRIBUTE_UNUSED_LABEL
02352 if ((TARGET_64BIT && !TARGET_MIPS16))
02353 {
02354 return 119;
02355 }
02356 x1 = XEXP (x0, 1);
02357 x2 = XEXP (x1, 0);
02358 goto L3395;
02359
02360 L1285: ATTRIBUTE_UNUSED_LABEL
02361 x3 = XEXP (x2, 0);
02362 if (se_register_operand (x3, DImode))
02363 {
02364 operands[1] = x3;
02365 goto L1286;
02366 }
02367 goto L3395;
02368
02369 L1286: ATTRIBUTE_UNUSED_LABEL
02370 x3 = XEXP (x2, 1);
02371 if (small_int (x3, DImode))
02372 {
02373 operands[2] = x3;
02374 goto L1287;
02375 }
02376 goto L3395;
02377
02378 L1287: ATTRIBUTE_UNUSED_LABEL
02379 if ((TARGET_64BIT && !TARGET_MIPS16))
02380 {
02381 return 120;
02382 }
02383 x1 = XEXP (x0, 1);
02384 x2 = XEXP (x1, 0);
02385 goto L3395;
02386
02387 L1292: ATTRIBUTE_UNUSED_LABEL
02388 x3 = XEXP (x2, 0);
02389 if (se_register_operand (x3, DImode))
02390 {
02391 operands[1] = x3;
02392 goto L1293;
02393 }
02394 goto ret0;
02395
02396 L1293: ATTRIBUTE_UNUSED_LABEL
02397 x3 = XEXP (x2, 1);
02398 if (small_int (x3, DImode))
02399 {
02400 operands[2] = x3;
02401 goto L1294;
02402 }
02403 goto ret0;
02404
02405 L1294: ATTRIBUTE_UNUSED_LABEL
02406 if ((TARGET_64BIT))
02407 {
02408 return 121;
02409 }
02410 goto ret0;
02411
02412 L511: ATTRIBUTE_UNUSED_LABEL
02413 x3 = XEXP (x2, 0);
02414 if (GET_MODE (x3) == DImode)
02415 goto L3400;
02416 goto ret0;
02417
02418 L3400: ATTRIBUTE_UNUSED_LABEL
02419 switch (GET_CODE (x3))
02420 {
02421 case MULT:
02422 goto L512;
02423 case NEG:
02424 goto L569;
02425 default:
02426 break;
02427 }
02428 goto ret0;
02429
02430 L512: ATTRIBUTE_UNUSED_LABEL
02431 x4 = XEXP (x3, 0);
02432 if (extend_operator (x4, DImode))
02433 {
02434 operands[3] = x4;
02435 goto L513;
02436 }
02437 goto ret0;
02438
02439 L513: ATTRIBUTE_UNUSED_LABEL
02440 x5 = XEXP (x4, 0);
02441 if (register_operand (x5, SImode))
02442 {
02443 operands[1] = x5;
02444 goto L514;
02445 }
02446 goto ret0;
02447
02448 L514: ATTRIBUTE_UNUSED_LABEL
02449 x4 = XEXP (x3, 1);
02450 if (extend_operator (x4, DImode))
02451 {
02452 operands[4] = x4;
02453 goto L515;
02454 }
02455 goto ret0;
02456
02457 L515: ATTRIBUTE_UNUSED_LABEL
02458 x5 = XEXP (x4, 0);
02459 if (register_operand (x5, SImode))
02460 {
02461 operands[2] = x5;
02462 goto L516;
02463 }
02464 goto ret0;
02465
02466 L516: ATTRIBUTE_UNUSED_LABEL
02467 x3 = XEXP (x2, 1);
02468 if (GET_CODE (x3) == CONST_INT)
02469 goto L3402;
02470 goto ret0;
02471
02472 L3402: ATTRIBUTE_UNUSED_LABEL
02473 if (XWINT (x3, 0) == 32LL)
02474 goto L3404;
02475 goto ret0;
02476
02477 L3404: ATTRIBUTE_UNUSED_LABEL
02478 if ((GET_CODE (operands[3]) == GET_CODE (operands[4]))
02479 && pnum_clobbers != NULL)
02480 {
02481 *pnum_clobbers = 2;
02482 return 47;
02483 }
02484 L3405: ATTRIBUTE_UNUSED_LABEL
02485 if ((ISA_HAS_MULHI
02486 && TARGET_64BIT
02487 && GET_CODE (operands[3]) == GET_CODE (operands[4]))
02488 && pnum_clobbers != NULL)
02489 {
02490 *pnum_clobbers = 3;
02491 return 48;
02492 }
02493 goto ret0;
02494
02495 L569: ATTRIBUTE_UNUSED_LABEL
02496 x4 = XEXP (x3, 0);
02497 if (GET_MODE (x4) == DImode
02498 && GET_CODE (x4) == MULT)
02499 goto L570;
02500 goto ret0;
02501
02502 L570: ATTRIBUTE_UNUSED_LABEL
02503 x5 = XEXP (x4, 0);
02504 if (extend_operator (x5, DImode))
02505 {
02506 operands[3] = x5;
02507 goto L571;
02508 }
02509 goto ret0;
02510
02511 L571: ATTRIBUTE_UNUSED_LABEL
02512 x6 = XEXP (x5, 0);
02513 if (register_operand (x6, SImode))
02514 {
02515 operands[1] = x6;
02516 goto L572;
02517 }
02518 goto ret0;
02519
02520 L572: ATTRIBUTE_UNUSED_LABEL
02521 x5 = XEXP (x4, 1);
02522 if (extend_operator (x5, DImode))
02523 {
02524 operands[4] = x5;
02525 goto L573;
02526 }
02527 goto ret0;
02528
02529 L573: ATTRIBUTE_UNUSED_LABEL
02530 x6 = XEXP (x5, 0);
02531 if (register_operand (x6, SImode))
02532 {
02533 operands[2] = x6;
02534 goto L574;
02535 }
02536 goto ret0;
02537
02538 L574: ATTRIBUTE_UNUSED_LABEL
02539 x3 = XEXP (x2, 1);
02540 if (GET_CODE (x3) == CONST_INT
02541 && XWINT (x3, 0) == 32LL
02542 && (ISA_HAS_MULHI
02543 && TARGET_64BIT
02544 && GET_CODE (operands[3]) == GET_CODE (operands[4]))
02545 && pnum_clobbers != NULL)
02546 {
02547 *pnum_clobbers = 3;
02548 return 49;
02549 }
02550 goto ret0;
02551
02552 L1263: ATTRIBUTE_UNUSED_LABEL
02553 if ((TARGET_64BIT))
02554 {
02555 return 116;
02556 }
02557 goto ret0;
02558
02559 L917: ATTRIBUTE_UNUSED_LABEL
02560 x2 = XEXP (x1, 0);
02561 if (register_operand (x2, SImode))
02562 {
02563 operands[1] = x2;
02564 goto L918;
02565 }
02566 goto ret0;
02567
02568 L918: ATTRIBUTE_UNUSED_LABEL
02569 x2 = XEXP (x1, 1);
02570 if (nonmemory_operand (x2, SImode))
02571 {
02572 operands[2] = x2;
02573 goto L919;
02574 }
02575 goto ret0;
02576
02577 L919: ATTRIBUTE_UNUSED_LABEL
02578 if ((!optimize)
02579 && pnum_clobbers != NULL)
02580 {
02581 *pnum_clobbers = 2;
02582 return 73;
02583 }
02584 goto ret0;
02585
02586 L951: ATTRIBUTE_UNUSED_LABEL
02587 x2 = XEXP (x1, 0);
02588 if (register_operand (x2, SImode))
02589 {
02590 operands[1] = x2;
02591 goto L952;
02592 }
02593 goto ret0;
02594
02595 L952: ATTRIBUTE_UNUSED_LABEL
02596 x2 = XEXP (x1, 1);
02597 if (nonmemory_operand (x2, SImode))
02598 {
02599 operands[2] = x2;
02600 goto L953;
02601 }
02602 goto ret0;
02603
02604 L953: ATTRIBUTE_UNUSED_LABEL
02605 if ((!optimize)
02606 && pnum_clobbers != NULL)
02607 {
02608 *pnum_clobbers = 2;
02609 return 75;
02610 }
02611 goto ret0;
02612
02613 L985: ATTRIBUTE_UNUSED_LABEL
02614 x2 = XEXP (x1, 0);
02615 if (register_operand (x2, SImode))
02616 {
02617 operands[1] = x2;
02618 goto L986;
02619 }
02620 goto ret0;
02621
02622 L986: ATTRIBUTE_UNUSED_LABEL
02623 x2 = XEXP (x1, 1);
02624 if (nonmemory_operand (x2, SImode))
02625 {
02626 operands[2] = x2;
02627 goto L987;
02628 }
02629 goto ret0;
02630
02631 L987: ATTRIBUTE_UNUSED_LABEL
02632 if ((!optimize)
02633 && pnum_clobbers != NULL)
02634 {
02635 *pnum_clobbers = 2;
02636 return 77;
02637 }
02638 goto ret0;
02639
02640 L1019: ATTRIBUTE_UNUSED_LABEL
02641 x2 = XEXP (x1, 0);
02642 if (register_operand (x2, SImode))
02643 {
02644 operands[1] = x2;
02645 goto L1020;
02646 }
02647 goto ret0;
02648
02649 L1020: ATTRIBUTE_UNUSED_LABEL
02650 x2 = XEXP (x1, 1);
02651 if (nonmemory_operand (x2, SImode))
02652 {
02653 operands[2] = x2;
02654 goto L1021;
02655 }
02656 goto ret0;
02657
02658 L1021: ATTRIBUTE_UNUSED_LABEL
02659 if ((!optimize)
02660 && pnum_clobbers != NULL)
02661 {
02662 *pnum_clobbers = 2;
02663 return 79;
02664 }
02665 goto ret0;
02666
02667 L1066: ATTRIBUTE_UNUSED_LABEL
02668 x2 = XEXP (x1, 0);
02669 if (register_operand (x2, SImode))
02670 {
02671 operands[1] = x2;
02672 goto L1067;
02673 }
02674 goto ret0;
02675
02676 L1067: ATTRIBUTE_UNUSED_LABEL
02677 if ((!TARGET_MIPS16))
02678 {
02679 return 85;
02680 }
02681 goto ret0;
02682
02683 L1096: ATTRIBUTE_UNUSED_LABEL
02684 x2 = XEXP (x1, 0);
02685 if (register_operand (x2, SImode))
02686 {
02687 operands[1] = x2;
02688 goto L1097;
02689 }
02690 goto ret0;
02691
02692 L1097: ATTRIBUTE_UNUSED_LABEL
02693 if ((!TARGET_MIPS16)
02694 && pnum_clobbers != NULL)
02695 {
02696 *pnum_clobbers = 2;
02697 return 89;
02698 }
02699 goto ret0;
02700
02701 L1143: ATTRIBUTE_UNUSED_LABEL
02702 x2 = XEXP (x1, 0);
02703 if (register_operand (x2, SImode))
02704 {
02705 operands[1] = x2;
02706 return 96;
02707 }
02708 goto ret0;
02709
02710 L1241: ATTRIBUTE_UNUSED_LABEL
02711 x2 = XEXP (x1, 0);
02712 if (GET_MODE (x2) == SImode
02713 && GET_CODE (x2) == NOT)
02714 goto L1242;
02715 if (uns_arith_operand (x2, SImode))
02716 {
02717 operands[1] = x2;
02718 goto L1152;
02719 }
02720 L1157: ATTRIBUTE_UNUSED_LABEL
02721 if (register_operand (x2, SImode))
02722 {
02723 operands[1] = x2;
02724 goto L1158;
02725 }
02726 goto ret0;
02727
02728 L1242: ATTRIBUTE_UNUSED_LABEL
02729 x3 = XEXP (x2, 0);
02730 if (register_operand (x3, SImode))
02731 {
02732 operands[1] = x3;
02733 goto L1243;
02734 }
02735 goto ret0;
02736
02737 L1243: ATTRIBUTE_UNUSED_LABEL
02738 x2 = XEXP (x1, 1);
02739 if (GET_MODE (x2) == SImode
02740 && GET_CODE (x2) == NOT)
02741 goto L1244;
02742 goto ret0;
02743
02744 L1244: ATTRIBUTE_UNUSED_LABEL
02745 x3 = XEXP (x2, 0);
02746 if (register_operand (x3, SImode))
02747 {
02748 operands[2] = x3;
02749 goto L1245;
02750 }
02751 goto ret0;
02752
02753 L1245: ATTRIBUTE_UNUSED_LABEL
02754 if ((!TARGET_MIPS16))
02755 {
02756 return 113;
02757 }
02758 goto ret0;
02759
02760 L1152: ATTRIBUTE_UNUSED_LABEL
02761 x2 = XEXP (x1, 1);
02762 if (uns_arith_operand (x2, SImode))
02763 {
02764 operands[2] = x2;
02765 goto L1153;
02766 }
02767 x2 = XEXP (x1, 0);
02768 goto L1157;
02769
02770 L1153: ATTRIBUTE_UNUSED_LABEL
02771 if ((!TARGET_MIPS16))
02772 {
02773 return 98;
02774 }
02775 x1 = XEXP (x0, 1);
02776 x2 = XEXP (x1, 0);
02777 goto L1157;
02778
02779 L1158: ATTRIBUTE_UNUSED_LABEL
02780 x2 = XEXP (x1, 1);
02781 if (register_operand (x2, SImode))
02782 {
02783 operands[2] = x2;
02784 goto L1159;
02785 }
02786 goto ret0;
02787
02788 L1159: ATTRIBUTE_UNUSED_LABEL
02789 if ((TARGET_MIPS16))
02790 {
02791 return 99;
02792 }
02793 goto ret0;
02794
02795 L1181: ATTRIBUTE_UNUSED_LABEL
02796 x2 = XEXP (x1, 0);
02797 if (uns_arith_operand (x2, SImode))
02798 {
02799 operands[1] = x2;
02800 goto L1182;
02801 }
02802 L1187: ATTRIBUTE_UNUSED_LABEL
02803 if (register_operand (x2, SImode))
02804 {
02805 operands[1] = x2;
02806 goto L1188;
02807 }
02808 goto ret0;
02809
02810 L1182: ATTRIBUTE_UNUSED_LABEL
02811 x2 = XEXP (x1, 1);
02812 if (uns_arith_operand (x2, SImode))
02813 {
02814 operands[2] = x2;
02815 goto L1183;
02816 }
02817 x2 = XEXP (x1, 0);
02818 goto L1187;
02819
02820 L1183: ATTRIBUTE_UNUSED_LABEL
02821 if ((!TARGET_MIPS16))
02822 {
02823 return 103;
02824 }
02825 x1 = XEXP (x0, 1);
02826 x2 = XEXP (x1, 0);
02827 goto L1187;
02828
02829 L1188: ATTRIBUTE_UNUSED_LABEL
02830 x2 = XEXP (x1, 1);
02831 if (register_operand (x2, SImode))
02832 {
02833 operands[2] = x2;
02834 goto L1189;
02835 }
02836 goto ret0;
02837
02838 L1189: ATTRIBUTE_UNUSED_LABEL
02839 if ((TARGET_MIPS16))
02840 {
02841 return 104;
02842 }
02843 goto ret0;
02844
02845 L1205: ATTRIBUTE_UNUSED_LABEL
02846 x2 = XEXP (x1, 0);
02847 if (uns_arith_operand (x2, SImode))
02848 {
02849 operands[1] = x2;
02850 goto L1206;
02851 }
02852 goto ret0;
02853
02854 L1206: ATTRIBUTE_UNUSED_LABEL
02855 x2 = XEXP (x1, 1);
02856 if (uns_arith_operand (x2, SImode))
02857 {
02858 operands[2] = x2;
02859 goto L1207;
02860 }
02861 goto ret0;
02862
02863 L1207: ATTRIBUTE_UNUSED_LABEL
02864 if ((!TARGET_MIPS16))
02865 {
02866 return 107;
02867 }
02868 L1213: ATTRIBUTE_UNUSED_LABEL
02869 if ((TARGET_MIPS16))
02870 {
02871 return 108;
02872 }
02873 goto ret0;
02874
02875 L1298: ATTRIBUTE_UNUSED_LABEL
02876 x2 = XEXP (x1, 0);
02877 switch (GET_MODE (x2))
02878 {
02879 case HImode:
02880 goto L3406;
02881 case QImode:
02882 goto L3407;
02883 default:
02884 break;
02885 }
02886 goto ret0;
02887
02888 L3406: ATTRIBUTE_UNUSED_LABEL
02889 if (GET_CODE (x2) == TRUNCATE)
02890 goto L1299;
02891 if (nonimmediate_operand (x2, HImode))
02892 {
02893 operands[1] = x2;
02894 goto L1322;
02895 }
02896 L3409: ATTRIBUTE_UNUSED_LABEL
02897 if (memory_operand (x2, HImode))
02898 {
02899 operands[1] = x2;
02900 goto L1327;
02901 }
02902 goto ret0;
02903
02904 L1299: ATTRIBUTE_UNUSED_LABEL
02905 x3 = XEXP (x2, 0);
02906 if (se_register_operand (x3, DImode))
02907 {
02908 operands[1] = x3;
02909 goto L1300;
02910 }
02911 goto ret0;
02912
02913 L1300: ATTRIBUTE_UNUSED_LABEL
02914 if ((TARGET_64BIT && !TARGET_MIPS16))
02915 {
02916 return 122;
02917 }
02918 goto ret0;
02919
02920 L1322: ATTRIBUTE_UNUSED_LABEL
02921 if ((!TARGET_MIPS16))
02922 {
02923 return 126;
02924 }
02925 x1 = XEXP (x0, 1);
02926 x2 = XEXP (x1, 0);
02927 goto L3409;
02928
02929 L1327: ATTRIBUTE_UNUSED_LABEL
02930 if ((TARGET_MIPS16))
02931 {
02932 return 127;
02933 }
02934 goto ret0;
02935
02936 L3407: ATTRIBUTE_UNUSED_LABEL
02937 if (GET_CODE (x2) == TRUNCATE)
02938 goto L1305;
02939 if (nonimmediate_operand (x2, QImode))
02940 {
02941 operands[1] = x2;
02942 goto L1352;
02943 }
02944 L3411: ATTRIBUTE_UNUSED_LABEL
02945 if (memory_operand (x2, QImode))
02946 {
02947 operands[1] = x2;
02948 goto L1357;
02949 }
02950 goto ret0;
02951
02952 L1305: ATTRIBUTE_UNUSED_LABEL
02953 x3 = XEXP (x2, 0);
02954 if (se_register_operand (x3, DImode))
02955 {
02956 operands[1] = x3;
02957 goto L1306;
02958 }
02959 goto ret0;
02960
02961 L1306: ATTRIBUTE_UNUSED_LABEL
02962 if ((TARGET_64BIT && !TARGET_MIPS16))
02963 {
02964 return 123;
02965 }
02966 goto ret0;
02967
02968 L1352: ATTRIBUTE_UNUSED_LABEL
02969 if ((!TARGET_MIPS16))
02970 {
02971 return 132;
02972 }
02973 x1 = XEXP (x0, 1);
02974 x2 = XEXP (x1, 0);
02975 goto L3411;
02976
02977 L1357: ATTRIBUTE_UNUSED_LABEL
02978 if ((TARGET_MIPS16))
02979 {
02980 return 133;
02981 }
02982 goto ret0;
02983
02984 L1382: ATTRIBUTE_UNUSED_LABEL
02985 x2 = XEXP (x1, 0);
02986 switch (GET_MODE (x2))
02987 {
02988 case HImode:
02989 goto L3412;
02990 case QImode:
02991 goto L3413;
02992 default:
02993 break;
02994 }
02995 goto ret0;
02996
02997 L3412: ATTRIBUTE_UNUSED_LABEL
02998 if (memory_operand (x2, HImode))
02999 {
03000 operands[1] = x2;
03001 return 138;
03002 }
03003 goto ret0;
03004
03005 L3413: ATTRIBUTE_UNUSED_LABEL
03006 if (memory_operand (x2, QImode))
03007 {
03008 operands[1] = x2;
03009 return 140;
03010 }
03011 goto ret0;
03012
03013 L1404: ATTRIBUTE_UNUSED_LABEL
03014 x2 = XEXP (x1, 0);
03015 switch (GET_MODE (x2))
03016 {
03017 case DFmode:
03018 goto L3414;
03019 case SFmode:
03020 goto L3415;
03021 default:
03022 break;
03023 }
03024 goto ret0;
03025
03026 L3414: ATTRIBUTE_UNUSED_LABEL
03027 if (register_operand (x2, DFmode))
03028 {
03029 operands[1] = x2;
03030 goto L1405;
03031 }
03032 goto ret0;
03033
03034 L1405: ATTRIBUTE_UNUSED_LABEL
03035 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && ISA_HAS_TRUNC_W))
03036 {
03037 return 143;
03038 }
03039 L1418: ATTRIBUTE_UNUSED_LABEL
03040 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && !ISA_HAS_TRUNC_W)
03041 && pnum_clobbers != NULL)
03042 {
03043 *pnum_clobbers = 1;
03044 return 144;
03045 }
03046 goto ret0;
03047
03048 L3415: ATTRIBUTE_UNUSED_LABEL
03049 if (register_operand (x2, SFmode))
03050 {
03051 operands[1] = x2;
03052 goto L1423;
03053 }
03054 goto ret0;
03055
03056 L1423: ATTRIBUTE_UNUSED_LABEL
03057 if ((TARGET_HARD_FLOAT && ISA_HAS_TRUNC_W))
03058 {
03059 return 145;
03060 }
03061 L1436: ATTRIBUTE_UNUSED_LABEL
03062 if ((TARGET_HARD_FLOAT && !ISA_HAS_TRUNC_W)
03063 && pnum_clobbers != NULL)
03064 {
03065 *pnum_clobbers = 1;
03066 return 146;
03067 }
03068 goto ret0;
03069
03070 L3390: ATTRIBUTE_UNUSED_LABEL
03071 if (XVECLEN (x1, 0) == 1
03072 && XINT (x1, 1) == 0)
03073 goto L1470;
03074 goto ret0;
03075
03076 L1470: ATTRIBUTE_UNUSED_LABEL
03077 x2 = XVECEXP (x1, 0, 0);
03078 if (general_operand (x2, BLKmode))
03079 {
03080 operands[1] = x2;
03081 goto L1471;
03082 }
03083 goto ret0;
03084
03085 L1471: ATTRIBUTE_UNUSED_LABEL
03086 if ((!TARGET_MIPS16))
03087 {
03088 return 153;
03089 }
03090 goto ret0;
03091
03092 L1488: ATTRIBUTE_UNUSED_LABEL
03093 x2 = XEXP (x1, 0);
03094 if (immediate_operand (x2, SImode))
03095 {
03096 operands[1] = x2;
03097 goto L1489;
03098 }
03099 goto ret0;
03100
03101 L1489: ATTRIBUTE_UNUSED_LABEL
03102 if ((mips_split_addresses && !TARGET_MIPS16))
03103 {
03104 return 157;
03105 }
03106 goto ret0;
03107
03108 L1493: ATTRIBUTE_UNUSED_LABEL
03109 x2 = XEXP (x1, 0);
03110 if (register_operand (x2, SImode))
03111 {
03112 operands[1] = x2;
03113 goto L1494;
03114 }
03115 goto ret0;
03116
03117 L1494: ATTRIBUTE_UNUSED_LABEL
03118 x2 = XEXP (x1, 1);
03119 if (immediate_operand (x2, SImode))
03120 {
03121 operands[2] = x2;
03122 goto L1495;
03123 }
03124 goto ret0;
03125
03126 L1495: ATTRIBUTE_UNUSED_LABEL
03127 if ((mips_split_addresses && !TARGET_MIPS16))
03128 {
03129 return 158;
03130 }
03131 goto ret0;
03132
03133 L1747: ATTRIBUTE_UNUSED_LABEL
03134 x2 = XEXP (x1, 0);
03135 if (register_operand (x2, SImode))
03136 {
03137 operands[1] = x2;
03138 goto L1748;
03139 }
03140 goto ret0;
03141
03142 L1748: ATTRIBUTE_UNUSED_LABEL
03143 x2 = XEXP (x1, 1);
03144 if (arith_operand (x2, SImode))
03145 {
03146 operands[2] = x2;
03147 goto L1749;
03148 }
03149 goto ret0;
03150
03151 L1749: ATTRIBUTE_UNUSED_LABEL
03152 if ((!TARGET_MIPS16))
03153 {
03154 return 195;
03155 }
03156 L1755: ATTRIBUTE_UNUSED_LABEL
03157 if ((TARGET_MIPS16))
03158 {
03159 return 196;
03160 }
03161 goto ret0;
03162
03163 L1798: ATTRIBUTE_UNUSED_LABEL
03164 x2 = XEXP (x1, 0);
03165 if (register_operand (x2, SImode))
03166 {
03167 operands[1] = x2;
03168 goto L1799;
03169 }
03170 goto ret0;
03171
03172 L1799: ATTRIBUTE_UNUSED_LABEL
03173 x2 = XEXP (x1, 1);
03174 if (arith_operand (x2, SImode))
03175 {
03176 operands[2] = x2;
03177 goto L1800;
03178 }
03179 goto ret0;
03180
03181 L1800: ATTRIBUTE_UNUSED_LABEL
03182 if ((!TARGET_MIPS16))
03183 {
03184 return 202;
03185 }
03186 L1806: ATTRIBUTE_UNUSED_LABEL
03187 if ((TARGET_MIPS16))
03188 {
03189 return 203;
03190 }
03191 goto ret0;
03192
03193 L1849: ATTRIBUTE_UNUSED_LABEL
03194 x2 = XEXP (x1, 0);
03195 if (GET_MODE (x2) == SImode)
03196 goto L3416;
03197 goto ret0;
03198
03199 L3416: ATTRIBUTE_UNUSED_LABEL
03200 if (register_operand (x2, SImode))
03201 {
03202 operands[1] = x2;
03203 goto L1850;
03204 }
03205 L3417: ATTRIBUTE_UNUSED_LABEL
03206 if (memory_operand (x2, SImode))
03207 {
03208 operands[1] = x2;
03209 goto L1862;
03210 }
03211 goto ret0;
03212
03213 L1850: ATTRIBUTE_UNUSED_LABEL
03214 x2 = XEXP (x1, 1);
03215 if (arith_operand (x2, SImode))
03216 {
03217 operands[2] = x2;
03218 goto L1851;
03219 }
03220 x2 = XEXP (x1, 0);
03221 goto L3417;
03222
03223 L1851: ATTRIBUTE_UNUSED_LABEL
03224 if ((!TARGET_MIPS16))
03225 {
03226 return 209;
03227 }
03228 L1857: ATTRIBUTE_UNUSED_LABEL
03229 if ((TARGET_MIPS16))
03230 {
03231 return 210;
03232 }
03233 x1 = XEXP (x0, 1);
03234 x2 = XEXP (x1, 0);
03235 goto L3417;
03236
03237 L1862: ATTRIBUTE_UNUSED_LABEL
03238 x2 = XEXP (x1, 1);
03239 if (immediate_operand (x2, SImode))
03240 {
03241 operands[2] = x2;
03242 goto L1863;
03243 }
03244 goto ret0;
03245
03246 L1863: ATTRIBUTE_UNUSED_LABEL
03247 if ((TARGET_MIPS16))
03248 {
03249 return 211;
03250 }
03251 goto ret0;
03252
03253 L1906: ATTRIBUTE_UNUSED_LABEL
03254 x2 = XEXP (x1, 0);
03255 if (register_operand (x2, SImode))
03256 {
03257 operands[1] = x2;
03258 goto L1907;
03259 }
03260 goto ret0;
03261
03262 L1907: ATTRIBUTE_UNUSED_LABEL
03263 x2 = XEXP (x1, 1);
03264 if (arith_operand (x2, SImode))
03265 {
03266 operands[2] = x2;
03267 goto L1908;
03268 }
03269 goto ret0;
03270
03271 L1908: ATTRIBUTE_UNUSED_LABEL
03272 if ((ISA_HAS_ROTR_SI))
03273 {
03274 return 217;
03275 }
03276 goto ret0;
03277
03278 L2031: ATTRIBUTE_UNUSED_LABEL
03279 x2 = XEXP (x1, 0);
03280 if (register_operand (x2, SImode))
03281 {
03282 operands[1] = x2;
03283 goto L2032;
03284 }
03285 goto ret0;
03286
03287 L2032: ATTRIBUTE_UNUSED_LABEL
03288 x2 = XEXP (x1, 1);
03289 if (GET_CODE (x2) == CONST_INT)
03290 goto L3418;
03291 goto ret0;
03292
03293 L3418: ATTRIBUTE_UNUSED_LABEL
03294 if (XWINT (x2, 0) == 0LL)
03295 goto L3420;
03296 goto ret0;
03297
03298 L3420: ATTRIBUTE_UNUSED_LABEL
03299 if ((!TARGET_MIPS16))
03300 {
03301 return 231;
03302 }
03303 L3421: ATTRIBUTE_UNUSED_LABEL
03304 if ((TARGET_MIPS16))
03305 {
03306 return 232;
03307 }
03308 goto ret0;
03309
03310 L2051: ATTRIBUTE_UNUSED_LABEL
03311 x2 = XEXP (x1, 0);
03312 if (register_operand (x2, SImode))
03313 {
03314 operands[1] = x2;
03315 goto L2052;
03316 }
03317 goto ret0;
03318
03319 L2052: ATTRIBUTE_UNUSED_LABEL
03320 x2 = XEXP (x1, 1);
03321 if (GET_CODE (x2) == CONST_INT
03322 && XWINT (x2, 0) == 0LL
03323 && (!TARGET_MIPS16))
03324 {
03325 return 235;
03326 }
03327 goto ret0;
03328
03329 L2061: ATTRIBUTE_UNUSED_LABEL
03330 x2 = XEXP (x1, 0);
03331 if (register_operand (x2, SImode))
03332 {
03333 operands[1] = x2;
03334 goto L2062;
03335 }
03336 goto ret0;
03337
03338 L2062: ATTRIBUTE_UNUSED_LABEL
03339 x2 = XEXP (x1, 1);
03340 if (reg_or_0_operand (x2, SImode))
03341 {
03342 operands[2] = x2;
03343 goto L2063;
03344 }
03345 L2068: ATTRIBUTE_UNUSED_LABEL
03346 if (register_operand (x2, SImode))
03347 {
03348 operands[2] = x2;
03349 goto L2069;
03350 }
03351 goto ret0;
03352
03353 L2063: ATTRIBUTE_UNUSED_LABEL
03354 if ((!TARGET_MIPS16))
03355 {
03356 return 237;
03357 }
03358 x1 = XEXP (x0, 1);
03359 x2 = XEXP (x1, 1);
03360 goto L2068;
03361
03362 L2069: ATTRIBUTE_UNUSED_LABEL
03363 if ((TARGET_MIPS16))
03364 {
03365 return 238;
03366 }
03367 goto ret0;
03368
03369 L2085: ATTRIBUTE_UNUSED_LABEL
03370 x2 = XEXP (x1, 0);
03371 if (register_operand (x2, SImode))
03372 {
03373 operands[1] = x2;
03374 goto L2086;
03375 }
03376 goto ret0;
03377
03378 L2086: ATTRIBUTE_UNUSED_LABEL
03379 x2 = XEXP (x1, 1);
03380 if (arith_operand (x2, SImode))
03381 {
03382 operands[2] = x2;
03383 goto L2087;
03384 }
03385 goto ret0;
03386
03387 L2087: ATTRIBUTE_UNUSED_LABEL
03388 if ((!TARGET_MIPS16))
03389 {
03390 return 241;
03391 }
03392 L2093: ATTRIBUTE_UNUSED_LABEL
03393 if ((TARGET_MIPS16))
03394 {
03395 return 242;
03396 }
03397 goto ret0;
03398
03399 L2109: ATTRIBUTE_UNUSED_LABEL
03400 x2 = XEXP (x1, 0);
03401 if (register_operand (x2, SImode))
03402 {
03403 operands[1] = x2;
03404 goto L2110;
03405 }
03406 goto ret0;
03407
03408 L2110: ATTRIBUTE_UNUSED_LABEL
03409 x2 = XEXP (x1, 1);
03410 if (small_int (x2, SImode))
03411 {
03412 operands[2] = x2;
03413 goto L2111;
03414 }
03415 goto ret0;
03416
03417 L2111: ATTRIBUTE_UNUSED_LABEL
03418 if ((!TARGET_MIPS16 && INTVAL (operands[2]) < 32767))
03419 {
03420 return 245;
03421 }
03422 L2117: ATTRIBUTE_UNUSED_LABEL
03423 if ((TARGET_MIPS16 && INTVAL (operands[2]) < 32767))
03424 {
03425 return 246;
03426 }
03427 goto ret0;
03428
03429 L2133: ATTRIBUTE_UNUSED_LABEL
03430 x2 = XEXP (x1, 0);
03431 if (register_operand (x2, SImode))
03432 {
03433 operands[1] = x2;
03434 goto L2134;
03435 }
03436 goto ret0;
03437
03438 L2134: ATTRIBUTE_UNUSED_LABEL
03439 x2 = XEXP (x1, 1);
03440 if (reg_or_0_operand (x2, SImode))
03441 {
03442 operands[2] = x2;
03443 goto L2135;
03444 }
03445 L2140: ATTRIBUTE_UNUSED_LABEL
03446 if (register_operand (x2, SImode))
03447 {
03448 operands[2] = x2;
03449 goto L2141;
03450 }
03451 goto ret0;
03452
03453 L2135: ATTRIBUTE_UNUSED_LABEL
03454 if ((!TARGET_MIPS16))
03455 {
03456 return 249;
03457 }
03458 x1 = XEXP (x0, 1);
03459 x2 = XEXP (x1, 1);
03460 goto L2140;
03461
03462 L2141: ATTRIBUTE_UNUSED_LABEL
03463 if ((TARGET_MIPS16))
03464 {
03465 return 250;
03466 }
03467 goto ret0;
03468
03469 L2157: ATTRIBUTE_UNUSED_LABEL
03470 x2 = XEXP (x1, 0);
03471 if (register_operand (x2, SImode))
03472 {
03473 operands[1] = x2;
03474 goto L2158;
03475 }
03476 goto ret0;
03477
03478 L2158: ATTRIBUTE_UNUSED_LABEL
03479 x2 = XEXP (x1, 1);
03480 if (arith_operand (x2, SImode))
03481 {
03482 operands[2] = x2;
03483 goto L2159;
03484 }
03485 goto ret0;
03486
03487 L2159: ATTRIBUTE_UNUSED_LABEL
03488 if ((!TARGET_MIPS16))
03489 {
03490 return 253;
03491 }
03492 L2165: ATTRIBUTE_UNUSED_LABEL
03493 if ((TARGET_MIPS16))
03494 {
03495 return 254;
03496 }
03497 goto ret0;
03498
03499 L2181: ATTRIBUTE_UNUSED_LABEL
03500 x2 = XEXP (x1, 0);
03501 if (register_operand (x2, SImode))
03502 {
03503 operands[1] = x2;
03504 goto L2182;
03505 }
03506 goto ret0;
03507
03508 L2182: ATTRIBUTE_UNUSED_LABEL
03509 x2 = XEXP (x1, 1);
03510 if (small_int (x2, SImode))
03511 {
03512 operands[2] = x2;
03513 goto L2183;
03514 }
03515 goto ret0;
03516
03517 L2183: ATTRIBUTE_UNUSED_LABEL
03518 if ((!TARGET_MIPS16 && INTVAL (operands[2]) < 32767))
03519 {
03520 return 257;
03521 }
03522 L2189: ATTRIBUTE_UNUSED_LABEL
03523 if ((TARGET_MIPS16 && INTVAL (operands[2]) < 32767))
03524 {
03525 return 258;
03526 }
03527 goto ret0;
03528
03529 L2663: ATTRIBUTE_UNUSED_LABEL
03530 x2 = XEXP (x1, 0);
03531 if (equality_op (x2, VOIDmode))
03532 {
03533 operands[4] = x2;
03534 goto L2664;
03535 }
03536 L2681: ATTRIBUTE_UNUSED_LABEL
03537 if (equality_op (x2, VOIDmode))
03538 {
03539 operands[3] = x2;
03540 goto L2682;
03541 }
03542 goto ret0;
03543
03544 L2664: ATTRIBUTE_UNUSED_LABEL
03545 x3 = XEXP (x2, 0);
03546 switch (GET_MODE (x3))
03547 {
03548 case SImode:
03549 goto L3422;
03550 case DImode:
03551 goto L3423;
03552 default:
03553 break;
03554 }
03555 goto L2681;
03556
03557 L3422: ATTRIBUTE_UNUSED_LABEL
03558 if (register_operand (x3, SImode))
03559 {
03560 operands[1] = x3;
03561 goto L2665;
03562 }
03563 goto L2681;
03564
03565 L2665: ATTRIBUTE_UNUSED_LABEL
03566 x3 = XEXP (x2, 1);
03567 if (GET_CODE (x3) == CONST_INT
03568 && XWINT (x3, 0) == 0LL)
03569 goto L2666;
03570 goto L2681;
03571
03572 L2666: ATTRIBUTE_UNUSED_LABEL
03573 x2 = XEXP (x1, 1);
03574 if (reg_or_0_operand (x2, SImode))
03575 {
03576 operands[2] = x2;
03577 goto L2667;
03578 }
03579 x2 = XEXP (x1, 0);
03580 goto L2681;
03581
03582 L2667: ATTRIBUTE_UNUSED_LABEL
03583 x2 = XEXP (x1, 2);
03584 if (reg_or_0_operand (x2, SImode))
03585 {
03586 operands[3] = x2;
03587 goto L2668;
03588 }
03589 x2 = XEXP (x1, 0);
03590 goto L2681;
03591
03592 L2668: ATTRIBUTE_UNUSED_LABEL
03593 if ((ISA_HAS_CONDMOVE || ISA_HAS_INT_CONDMOVE))
03594 {
03595 return 319;
03596 }
03597 x1 = XEXP (x0, 1);
03598 x2 = XEXP (x1, 0);
03599 goto L2681;
03600
03601 L3423: ATTRIBUTE_UNUSED_LABEL
03602 if (se_register_operand (x3, DImode))
03603 {
03604 operands[1] = x3;
03605 goto L2674;
03606 }
03607 goto L2681;
03608
03609 L2674: ATTRIBUTE_UNUSED_LABEL
03610 x3 = XEXP (x2, 1);
03611 if (GET_CODE (x3) == CONST_INT
03612 && XWINT (x3, 0) == 0LL)
03613 goto L2675;
03614 goto L2681;
03615
03616 L2675: ATTRIBUTE_UNUSED_LABEL
03617 x2 = XEXP (x1, 1);
03618 if (reg_or_0_operand (x2, SImode))
03619 {
03620 operands[2] = x2;
03621 goto L2676;
03622 }
03623 x2 = XEXP (x1, 0);
03624 goto L2681;
03625
03626 L2676: ATTRIBUTE_UNUSED_LABEL
03627 x2 = XEXP (x1, 2);
03628 if (reg_or_0_operand (x2, SImode))
03629 {
03630 operands[3] = x2;
03631 goto L2677;
03632 }
03633 x2 = XEXP (x1, 0);
03634 goto L2681;
03635
03636 L2677: ATTRIBUTE_UNUSED_LABEL
03637 if ((ISA_HAS_CONDMOVE || ISA_HAS_INT_CONDMOVE))
03638 {
03639 return 320;
03640 }
03641 x1 = XEXP (x0, 1);
03642 x2 = XEXP (x1, 0);
03643 goto L2681;
03644
03645 L2682: ATTRIBUTE_UNUSED_LABEL
03646 x3 = XEXP (x2, 0);
03647 if (register_operand (x3, CCmode))
03648 {
03649 operands[4] = x3;
03650 goto L2683;
03651 }
03652 goto ret0;
03653
03654 L2683: ATTRIBUTE_UNUSED_LABEL
03655 x3 = XEXP (x2, 1);
03656 if (GET_CODE (x3) == CONST_INT
03657 && XWINT (x3, 0) == 0LL)
03658 goto L2684;
03659 goto ret0;
03660
03661 L2684: ATTRIBUTE_UNUSED_LABEL
03662 x2 = XEXP (x1, 1);
03663 if (reg_or_0_operand (x2, SImode))
03664 {
03665 operands[1] = x2;
03666 goto L2685;
03667 }
03668 goto ret0;
03669
03670 L2685: ATTRIBUTE_UNUSED_LABEL
03671 x2 = XEXP (x1, 2);
03672 if (reg_or_0_operand (x2, SImode))
03673 {
03674 operands[2] = x2;
03675 goto L2686;
03676 }
03677 goto ret0;
03678
03679 L2686: ATTRIBUTE_UNUSED_LABEL
03680 if ((ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT))
03681 {
03682 return 321;
03683 }
03684 goto ret0;
03685 ret0:
03686 return -1;
03687 }
03688
03689 static int recog_4 PARAMS ((rtx, rtx, int *));
03690 static int
03691 recog_4 (x0, insn, pnum_clobbers)
03692 rtx x0 ATTRIBUTE_UNUSED;
03693 rtx insn ATTRIBUTE_UNUSED;
03694 int *pnum_clobbers ATTRIBUTE_UNUSED;
03695 {
03696 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
03697 rtx x1 ATTRIBUTE_UNUSED;
03698 rtx x2 ATTRIBUTE_UNUSED;
03699 rtx x3 ATTRIBUTE_UNUSED;
03700 rtx x4 ATTRIBUTE_UNUSED;
03701 rtx x5 ATTRIBUTE_UNUSED;
03702 rtx x6 ATTRIBUTE_UNUSED;
03703 rtx x7 ATTRIBUTE_UNUSED;
03704 int tem ATTRIBUTE_UNUSED;
03705
03706 x1 = XEXP (x0, 1);
03707 switch (GET_CODE (x1))
03708 {
03709 case MINUS:
03710 goto L169;
03711 case SIGN_EXTEND:
03712 goto L181;
03713 case MULT:
03714 goto L381;
03715 case NEG:
03716 goto L460;
03717 case TRUNCATE:
03718 goto L594;
03719 case PLUS:
03720 goto L663;
03721 case DIV:
03722 goto L934;
03723 case MOD:
03724 goto L968;
03725 case UDIV:
03726 goto L1002;
03727 case UMOD:
03728 goto L1036;
03729 case ABS:
03730 goto L1071;
03731 case FFS:
03732 goto L1111;
03733 case NOT:
03734 goto L1147;
03735 case AND:
03736 goto L1163;
03737 case IOR:
03738 goto L1193;
03739 case XOR:
03740 goto L1217;
03741 case ZERO_EXTEND:
03742 goto L1316;
03743 case FIX:
03744 goto L1440;
03745 case UNSPEC:
03746 goto L3461;
03747 case ASHIFT:
03748 goto L1786;
03749 case ASHIFTRT:
03750 goto L1837;
03751 case LSHIFTRT:
03752 goto L1894;
03753 case ROTATERT:
03754 goto L1912;
03755 case EQ:
03756 goto L2041;
03757 case NE:
03758 goto L2056;
03759 case GT:
03760 goto L2073;
03761 case LT:
03762 goto L2097;
03763 case LE:
03764 goto L2121;
03765 case GTU:
03766 goto L2145;
03767 case LTU:
03768 goto L2169;
03769 case LEU:
03770 goto L2193;
03771 case IF_THEN_ELSE:
03772 goto L2690;
03773 default:
03774 break;
03775 }
03776 goto ret0;
03777
03778 L169: ATTRIBUTE_UNUSED_LABEL
03779 x2 = XEXP (x1, 0);
03780 if (GET_MODE (x2) == DImode)
03781 goto L3462;
03782 goto ret0;
03783
03784 L3462: ATTRIBUTE_UNUSED_LABEL
03785 if (GET_CODE (x2) == REG
03786 && XINT (x2, 0) == 29)
03787 goto L170;
03788 L3463: ATTRIBUTE_UNUSED_LABEL
03789 if (register_operand (x2, DImode))
03790 {
03791 operands[1] = x2;
03792 goto L176;
03793 }
03794 L3464: ATTRIBUTE_UNUSED_LABEL
03795 if (register_operand (x2, DImode))
03796 {
03797 operands[3] = x2;
03798 goto L485;
03799 }
03800 goto ret0;
03801
03802 L170: ATTRIBUTE_UNUSED_LABEL
03803 x2 = XEXP (x1, 1);
03804 if (small_int (x2, DImode))
03805 {
03806 operands[1] = x2;
03807 goto L171;
03808 }
03809 x2 = XEXP (x1, 0);
03810 goto L3463;
03811
03812 L171: ATTRIBUTE_UNUSED_LABEL
03813 if ((TARGET_MIPS16
03814 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768)))
03815 {
03816 return 26;
03817 }
03818 x1 = XEXP (x0, 1);
03819 x2 = XEXP (x1, 0);
03820 goto L3463;
03821
03822 L176: ATTRIBUTE_UNUSED_LABEL
03823 x2 = XEXP (x1, 1);
03824 if (arith_operand (x2, DImode))
03825 {
03826 operands[2] = x2;
03827 goto L177;
03828 }
03829 x2 = XEXP (x1, 0);
03830 goto L3464;
03831
03832 L177: ATTRIBUTE_UNUSED_LABEL
03833 if ((TARGET_MIPS16
03834 && (GET_CODE (operands[2]) != CONST_INT
03835 || (INTVAL (operands[2]) != -32768 && INTVAL (operands[2]) != -0x4000))))
03836 {
03837 return 27;
03838 }
03839 x1 = XEXP (x0, 1);
03840 x2 = XEXP (x1, 0);
03841 goto L3464;
03842
03843 L485: ATTRIBUTE_UNUSED_LABEL
03844 x2 = XEXP (x1, 1);
03845 if (GET_MODE (x2) == DImode
03846 && GET_CODE (x2) == MULT)
03847 goto L486;
03848 goto ret0;
03849
03850 L486: ATTRIBUTE_UNUSED_LABEL
03851 x3 = XEXP (x2, 0);
03852 if (extend_operator (x3, DImode))
03853 {
03854 operands[4] = x3;
03855 goto L487;
03856 }
03857 goto ret0;
03858
03859 L487: ATTRIBUTE_UNUSED_LABEL
03860 x4 = XEXP (x3, 0);
03861 if (register_operand (x4, SImode))
03862 {
03863 operands[1] = x4;
03864 goto L488;
03865 }
03866 goto ret0;
03867
03868 L488: ATTRIBUTE_UNUSED_LABEL
03869 x3 = XEXP (x2, 1);
03870 if (extend_operator (x3, DImode))
03871 {
03872 operands[5] = x3;
03873 goto L489;
03874 }
03875 goto ret0;
03876
03877 L489: ATTRIBUTE_UNUSED_LABEL
03878 x4 = XEXP (x3, 0);
03879 if (register_operand (x4, SImode))
03880 {
03881 operands[2] = x4;
03882 goto L490;
03883 }
03884 goto ret0;
03885
03886 L490: ATTRIBUTE_UNUSED_LABEL
03887 if ((TARGET_64BIT
03888 && ISA_HAS_MSAC
03889 && GET_CODE (operands[4]) == GET_CODE (operands[5]))
03890 && pnum_clobbers != NULL)
03891 {
03892 *pnum_clobbers = 2;
03893 return 46;
03894 }
03895 goto ret0;
03896
03897 L181: ATTRIBUTE_UNUSED_LABEL
03898 x2 = XEXP (x1, 0);
03899 switch (GET_MODE (x2))
03900 {
03901 case SImode:
03902 goto L3465;
03903 case HImode:
03904 goto L3467;
03905 case QImode:
03906 goto L3468;
03907 default:
03908 break;
03909 }
03910 goto ret0;
03911
03912 L3465: ATTRIBUTE_UNUSED_LABEL
03913 switch (GET_CODE (x2))
03914 {
03915 case MINUS:
03916 goto L182;
03917 case SUBREG:
03918 goto L3469;
03919 default:
03920 break;
03921 }
03922 goto ret0;
03923
03924 L182: ATTRIBUTE_UNUSED_LABEL
03925 x3 = XEXP (x2, 0);
03926 if (reg_or_0_operand (x3, SImode))
03927 {
03928 operands[1] = x3;
03929 goto L183;
03930 }
03931 L189: ATTRIBUTE_UNUSED_LABEL
03932 if (register_operand (x3, SImode))
03933 {
03934 operands[1] = x3;
03935 goto L190;
03936 }
03937 goto ret0;
03938
03939 L183: ATTRIBUTE_UNUSED_LABEL
03940 x3 = XEXP (x2, 1);
03941 if (arith_operand (x3, SImode))
03942 {
03943 operands[2] = x3;
03944 goto L184;
03945 }
03946 x3 = XEXP (x2, 0);
03947 goto L189;
03948
03949 L184: ATTRIBUTE_UNUSED_LABEL
03950 if ((TARGET_64BIT && !TARGET_MIPS16
03951 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768)))
03952 {
03953 return 28;
03954 }
03955 x1 = XEXP (x0, 1);
03956 x2 = XEXP (x1, 0);
03957 x3 = XEXP (x2, 0);
03958 goto L189;
03959
03960 L190: ATTRIBUTE_UNUSED_LABEL
03961 x3 = XEXP (x2, 1);
03962 if (arith_operand (x3, SImode))
03963 {
03964 operands[2] = x3;
03965 goto L191;
03966 }
03967 goto ret0;
03968
03969 L191: ATTRIBUTE_UNUSED_LABEL
03970 if ((TARGET_64BIT && TARGET_MIPS16
03971 && (GET_CODE (operands[2]) != CONST_INT
03972 || (INTVAL (operands[2]) != -32768 && INTVAL (operands[2]) != -0x4000))))
03973 {
03974 return 29;
03975 }
03976 goto ret0;
03977
03978 L3469: ATTRIBUTE_UNUSED_LABEL
03979 if (XINT (x2, 1) == 0)
03980 goto L1367;
03981 goto ret0;
03982
03983 L1367: ATTRIBUTE_UNUSED_LABEL
03984 x3 = XEXP (x2, 0);
03985 if (memory_operand (x3, HImode))
03986 {
03987 operands[1] = x3;
03988 goto L1368;
03989 }
03990 goto ret0;
03991
03992 L1368: ATTRIBUTE_UNUSED_LABEL
03993 if ((TARGET_64BIT))
03994 {
03995 return 135;
03996 }
03997 goto ret0;
03998
03999 L3467: ATTRIBUTE_UNUSED_LABEL
04000 if (memory_operand (x2, HImode))
04001 {
04002 operands[1] = x2;
04003 goto L1378;
04004 }
04005 goto ret0;
04006
04007 L1378: ATTRIBUTE_UNUSED_LABEL
04008 if ((TARGET_64BIT))
04009 {
04010 return 137;
04011 }
04012 goto ret0;
04013
04014 L3468: ATTRIBUTE_UNUSED_LABEL
04015 if (memory_operand (x2, QImode))
04016 {
04017 operands[1] = x2;
04018 goto L1395;
04019 }
04020 goto ret0;
04021
04022 L1395: ATTRIBUTE_UNUSED_LABEL
04023 if ((TARGET_64BIT))
04024 {
04025 return 141;
04026 }
04027 goto ret0;
04028
04029 L381: ATTRIBUTE_UNUSED_LABEL
04030 x2 = XEXP (x1, 0);
04031 if (GET_MODE (x2) == DImode)
04032 goto L3470;
04033 goto ret0;
04034
04035 L3470: ATTRIBUTE_UNUSED_LABEL
04036 if (se_register_operand (x2, DImode))
04037 {
04038 operands[1] = x2;
04039 goto L382;
04040 }
04041 L3471: ATTRIBUTE_UNUSED_LABEL
04042 if (extend_operator (x2, DImode))
04043 {
04044 operands[3] = x2;
04045 goto L418;
04046 }
04047 goto ret0;
04048
04049 L382: ATTRIBUTE_UNUSED_LABEL
04050 x2 = XEXP (x1, 1);
04051 if (register_operand (x2, DImode))
04052 {
04053 operands[2] = x2;
04054 goto L383;
04055 }
04056 x2 = XEXP (x1, 0);
04057 goto L3471;
04058
04059 L383: ATTRIBUTE_UNUSED_LABEL
04060 if ((TARGET_64BIT && !TARGET_MIPS4000 && !TARGET_MIPS16)
04061 && pnum_clobbers != NULL)
04062 {
04063 *pnum_clobbers = 2;
04064 return 41;
04065 }
04066 L402: ATTRIBUTE_UNUSED_LABEL
04067 if ((TARGET_64BIT && (GENERATE_MULT3_DI || TARGET_MIPS4000 || TARGET_MIPS16))
04068 && pnum_clobbers != NULL)
04069 {
04070 *pnum_clobbers = 3;
04071 return 42;
04072 }
04073 x1 = XEXP (x0, 1);
04074 x2 = XEXP (x1, 0);
04075 goto L3471;
04076
04077 L418: ATTRIBUTE_UNUSED_LABEL
04078 x3 = XEXP (x2, 0);
04079 if (register_operand (x3, SImode))
04080 {
04081 operands[1] = x3;
04082 goto L419;
04083 }
04084 goto ret0;
04085
04086 L419: ATTRIBUTE_UNUSED_LABEL
04087 x2 = XEXP (x1, 1);
04088 if (extend_operator (x2, DImode))
04089 {
04090 operands[4] = x2;
04091 goto L420;
04092 }
04093 goto ret0;
04094
04095 L420: ATTRIBUTE_UNUSED_LABEL
04096 x3 = XEXP (x2, 0);
04097 if (register_operand (x3, SImode))
04098 {
04099 operands[2] = x3;
04100 goto L421;
04101 }
04102 goto ret0;
04103
04104 L421: ATTRIBUTE_UNUSED_LABEL
04105 if ((!TARGET_64BIT && GET_CODE (operands[3]) == GET_CODE (operands[4]))
04106 && pnum_clobbers != NULL)
04107 {
04108 *pnum_clobbers = 1;
04109 return 43;
04110 }
04111 L442: ATTRIBUTE_UNUSED_LABEL
04112 if ((TARGET_64BIT && GET_CODE (operands[3]) == GET_CODE (operands[4]))
04113 && pnum_clobbers != NULL)
04114 {
04115 *pnum_clobbers = 2;
04116 return 44;
04117 }
04118 goto ret0;
04119
04120 L460: ATTRIBUTE_UNUSED_LABEL
04121 x2 = XEXP (x1, 0);
04122 if (GET_MODE (x2) == DImode)
04123 goto L3472;
04124 goto ret0;
04125
04126 L3472: ATTRIBUTE_UNUSED_LABEL
04127 if (GET_CODE (x2) == MULT)
04128 goto L461;
04129 if (se_register_operand (x2, DImode))
04130 {
04131 operands[1] = x2;
04132 goto L1129;
04133 }
04134 goto ret0;
04135
04136 L461: ATTRIBUTE_UNUSED_LABEL
04137 x3 = XEXP (x2, 0);
04138 if (extend_operator (x3, DImode))
04139 {
04140 operands[3] = x3;
04141 goto L462;
04142 }
04143 goto ret0;
04144
04145 L462: ATTRIBUTE_UNUSED_LABEL
04146 x4 = XEXP (x3, 0);
04147 if (register_operand (x4, SImode))
04148 {
04149 operands[1] = x4;
04150 goto L463;
04151 }
04152 goto ret0;
04153
04154 L463: ATTRIBUTE_UNUSED_LABEL
04155 x3 = XEXP (x2, 1);
04156 if (extend_operator (x3, DImode))
04157 {
04158 operands[4] = x3;
04159 goto L464;
04160 }
04161 goto ret0;
04162
04163 L464: ATTRIBUTE_UNUSED_LABEL
04164 x4 = XEXP (x3, 0);
04165 if (register_operand (x4, SImode))
04166 {
04167 operands[2] = x4;
04168 goto L465;
04169 }
04170 goto ret0;
04171
04172 L465: ATTRIBUTE_UNUSED_LABEL
04173 if ((TARGET_64BIT
04174 && ISA_HAS_MULS
04175 && GET_CODE (operands[3]) == GET_CODE (operands[4]))
04176 && pnum_clobbers != NULL)
04177 {
04178 *pnum_clobbers = 2;
04179 return 45;
04180 }
04181 goto ret0;
04182
04183 L1129: ATTRIBUTE_UNUSED_LABEL
04184 if ((TARGET_64BIT && !TARGET_MIPS16))
04185 {
04186 return 93;
04187 }
04188 goto ret0;
04189
04190 L594: ATTRIBUTE_UNUSED_LABEL
04191 x2 = XEXP (x1, 0);
04192 if (GET_MODE (x2) == TImode
04193 && GET_CODE (x2) == LSHIFTRT)
04194 goto L595;
04195 goto ret0;
04196
04197 L595: ATTRIBUTE_UNUSED_LABEL
04198 x3 = XEXP (x2, 0);
04199 if (GET_MODE (x3) == TImode
04200 && GET_CODE (x3) == MULT)
04201 goto L596;
04202 goto ret0;
04203
04204 L596: ATTRIBUTE_UNUSED_LABEL
04205 x4 = XEXP (x3, 0);
04206 if (GET_MODE (x4) == TImode)
04207 goto L3474;
04208 goto ret0;
04209
04210 L3474: ATTRIBUTE_UNUSED_LABEL
04211 switch (GET_CODE (x4))
04212 {
04213 case SIGN_EXTEND:
04214 goto L597;
04215 case ZERO_EXTEND:
04216 goto L623;
04217 default:
04218 break;
04219 }
04220 goto ret0;
04221
04222 L597: ATTRIBUTE_UNUSED_LABEL
04223 x5 = XEXP (x4, 0);
04224 if (se_register_operand (x5, DImode))
04225 {
04226 operands[1] = x5;
04227 goto L598;
04228 }
04229 goto ret0;
04230
04231 L598: ATTRIBUTE_UNUSED_LABEL
04232 x4 = XEXP (x3, 1);
04233 if (GET_MODE (x4) == TImode
04234 && GET_CODE (x4) == SIGN_EXTEND)
04235 goto L599;
04236 goto ret0;
04237
04238 L599: ATTRIBUTE_UNUSED_LABEL
04239 x5 = XEXP (x4, 0);
04240 if (se_register_operand (x5, DImode))
04241 {
04242 operands[2] = x5;
04243 goto L600;
04244 }
04245 goto ret0;
04246
04247 L600: ATTRIBUTE_UNUSED_LABEL
04248 x3 = XEXP (x2, 1);
04249 if (GET_CODE (x3) == CONST_INT
04250 && XWINT (x3, 0) == 64LL
04251 && (TARGET_64BIT)
04252 && pnum_clobbers != NULL)
04253 {
04254 *pnum_clobbers = 2;
04255 return 50;
04256 }
04257 goto ret0;
04258
04259 L623: ATTRIBUTE_UNUSED_LABEL
04260 x5 = XEXP (x4, 0);
04261 if (se_register_operand (x5, DImode))
04262 {
04263 operands[1] = x5;
04264 goto L624;
04265 }
04266 goto ret0;
04267
04268 L624: ATTRIBUTE_UNUSED_LABEL
04269 x4 = XEXP (x3, 1);
04270 if (GET_MODE (x4) == TImode
04271 && GET_CODE (x4) == ZERO_EXTEND)
04272 goto L625;
04273 goto ret0;
04274
04275 L625: ATTRIBUTE_UNUSED_LABEL
04276 x5 = XEXP (x4, 0);
04277 if (se_register_operand (x5, DImode))
04278 {
04279 operands[2] = x5;
04280 goto L626;
04281 }
04282 goto ret0;
04283
04284 L626: ATTRIBUTE_UNUSED_LABEL
04285 x3 = XEXP (x2, 1);
04286 if (GET_CODE (x3) == CONST_INT
04287 && XWINT (x3, 0) == 64LL
04288 && (TARGET_64BIT)
04289 && pnum_clobbers != NULL)
04290 {
04291 *pnum_clobbers = 2;
04292 return 51;
04293 }
04294 goto ret0;
04295
04296 L663: ATTRIBUTE_UNUSED_LABEL
04297 x2 = XEXP (x1, 0);
04298 if (GET_MODE (x2) == DImode
04299 && GET_CODE (x2) == MULT)
04300 goto L664;
04301 goto ret0;
04302
04303 L664: ATTRIBUTE_UNUSED_LABEL
04304 x3 = XEXP (x2, 0);
04305 if (extend_operator (x3, DImode))
04306 {
04307 operands[3] = x3;
04308 goto L665;
04309 }
04310 goto ret0;
04311
04312 L665: ATTRIBUTE_UNUSED_LABEL
04313 x4 = XEXP (x3, 0);
04314 if (register_operand (x4, SImode))
04315 {
04316 operands[1] = x4;
04317 goto L666;
04318 }
04319 goto ret0;
04320
04321 L666: ATTRIBUTE_UNUSED_LABEL
04322 x3 = XEXP (x2, 1);
04323 if (extend_operator (x3, DImode))
04324 {
04325 operands[4] = x3;
04326 goto L667;
04327 }
04328 goto ret0;
04329
04330 L667: ATTRIBUTE_UNUSED_LABEL
04331 x4 = XEXP (x3, 0);
04332 if (register_operand (x4, SImode))
04333 {
04334 operands[2] = x4;
04335 goto L668;
04336 }
04337 goto ret0;
04338
04339 L668: ATTRIBUTE_UNUSED_LABEL
04340 x2 = XEXP (x1, 1);
04341 if (rtx_equal_p (x2, operands[0])
04342 && (TARGET_MAD
04343 && ! TARGET_64BIT
04344 && GET_CODE (operands[3]) == GET_CODE (operands[4]))
04345 && pnum_clobbers != NULL)
04346 {
04347 *pnum_clobbers = 1;
04348 return 53;
04349 }
04350 L692: ATTRIBUTE_UNUSED_LABEL
04351 if (rtx_equal_p (x2, operands[0])
04352 && (TARGET_MAD
04353 && TARGET_64BIT
04354 && GET_CODE (operands[3]) == GET_CODE (operands[4]))
04355 && pnum_clobbers != NULL)
04356 {
04357 *pnum_clobbers = 2;
04358 return 54;
04359 }
04360 goto ret0;
04361
04362 L934: ATTRIBUTE_UNUSED_LABEL
04363 x2 = XEXP (x1, 0);
04364 if (se_register_operand (x2, DImode))
04365 {
04366 operands[1] = x2;
04367 goto L935;
04368 }
04369 goto ret0;
04370
04371 L935: ATTRIBUTE_UNUSED_LABEL
04372 x2 = XEXP (x1, 1);
04373 if (se_nonmemory_operand (x2, DImode))
04374 {
04375 operands[2] = x2;
04376 goto L936;
04377 }
04378 goto ret0;
04379
04380 L936: ATTRIBUTE_UNUSED_LABEL
04381 if ((TARGET_64BIT && !optimize)
04382 && pnum_clobbers != NULL)
04383 {
04384 *pnum_clobbers = 2;
04385 return 74;
04386 }
04387 goto ret0;
04388
04389 L968: ATTRIBUTE_UNUSED_LABEL
04390 x2 = XEXP (x1, 0);
04391 if (se_register_operand (x2, DImode))
04392 {
04393 operands[1] = x2;
04394 goto L969;
04395 }
04396 goto ret0;
04397
04398 L969: ATTRIBUTE_UNUSED_LABEL
04399 x2 = XEXP (x1, 1);
04400 if (se_nonmemory_operand (x2, DImode))
04401 {
04402 operands[2] = x2;
04403 goto L970;
04404 }
04405 goto ret0;
04406
04407 L970: ATTRIBUTE_UNUSED_LABEL
04408 if ((TARGET_64BIT && !optimize)
04409 && pnum_clobbers != NULL)
04410 {
04411 *pnum_clobbers = 2;
04412 return 76;
04413 }
04414 goto ret0;
04415
04416 L1002: ATTRIBUTE_UNUSED_LABEL
04417 x2 = XEXP (x1, 0);
04418 if (se_register_operand (x2, DImode))
04419 {
04420 operands[1] = x2;
04421 goto L1003;
04422 }
04423 goto ret0;
04424
04425 L1003: ATTRIBUTE_UNUSED_LABEL
04426 x2 = XEXP (x1, 1);
04427 if (se_nonmemory_operand (x2, DImode))
04428 {
04429 operands[2] = x2;
04430 goto L1004;
04431 }
04432 goto ret0;
04433
04434 L1004: ATTRIBUTE_UNUSED_LABEL
04435 if ((TARGET_64BIT && !optimize)
04436 && pnum_clobbers != NULL)
04437 {
04438 *pnum_clobbers = 2;
04439 return 78;
04440 }
04441 goto ret0;
04442
04443 L1036: ATTRIBUTE_UNUSED_LABEL
04444 x2 = XEXP (x1, 0);
04445 if (se_register_operand (x2, DImode))
04446 {
04447 operands[1] = x2;
04448 goto L1037;
04449 }
04450 goto ret0;
04451
04452 L1037: ATTRIBUTE_UNUSED_LABEL
04453 x2 = XEXP (x1, 1);
04454 if (se_nonmemory_operand (x2, DImode))
04455 {
04456 operands[2] = x2;
04457 goto L1038;
04458 }
04459 goto ret0;
04460
04461 L1038: ATTRIBUTE_UNUSED_LABEL
04462 if ((TARGET_64BIT && !optimize)
04463 && pnum_clobbers != NULL)
04464 {
04465 *pnum_clobbers = 2;
04466 return 80;
04467 }
04468 goto ret0;
04469
04470 L1071: ATTRIBUTE_UNUSED_LABEL
04471 x2 = XEXP (x1, 0);
04472 if (se_register_operand (x2, DImode))
04473 {
04474 operands[1] = x2;
04475 goto L1072;
04476 }
04477 goto ret0;
04478
04479 L1072: ATTRIBUTE_UNUSED_LABEL
04480 if ((TARGET_64BIT && !TARGET_MIPS16))
04481 {
04482 return 86;
04483 }
04484 goto ret0;
04485
04486 L1111: ATTRIBUTE_UNUSED_LABEL
04487 x2 = XEXP (x1, 0);
04488 if (se_register_operand (x2, DImode))
04489 {
04490 operands[1] = x2;
04491 goto L1112;
04492 }
04493 goto ret0;
04494
04495 L1112: ATTRIBUTE_UNUSED_LABEL
04496 if ((TARGET_64BIT && !TARGET_MIPS16)
04497 && pnum_clobbers != NULL)
04498 {
04499 *pnum_clobbers = 2;
04500 return 90;
04501 }
04502 goto ret0;
04503
04504 L1147: ATTRIBUTE_UNUSED_LABEL
04505 x2 = XEXP (x1, 0);
04506 if (se_register_operand (x2, DImode))
04507 {
04508 operands[1] = x2;
04509 return 97;
04510 }
04511 goto ret0;
04512
04513 L1163: ATTRIBUTE_UNUSED_LABEL
04514 x2 = XEXP (x1, 0);
04515 if (GET_MODE (x2) == DImode)
04516 goto L3477;
04517 goto ret0;
04518
04519 L3477: ATTRIBUTE_UNUSED_LABEL
04520 if (GET_CODE (x2) == NOT)
04521 goto L1250;
04522 if (se_register_operand (x2, DImode))
04523 {
04524 operands[1] = x2;
04525 goto L1164;
04526 }
04527 goto ret0;
04528
04529 L1250: ATTRIBUTE_UNUSED_LABEL
04530 x3 = XEXP (x2, 0);
04531 if (se_register_operand (x3, DImode))
04532 {
04533 operands[1] = x3;
04534 goto L1251;
04535 }
04536 goto ret0;
04537
04538 L1251: ATTRIBUTE_UNUSED_LABEL
04539 x2 = XEXP (x1, 1);
04540 if (GET_MODE (x2) == DImode
04541 && GET_CODE (x2) == NOT)
04542 goto L1252;
04543 goto ret0;
04544
04545 L1252: ATTRIBUTE_UNUSED_LABEL
04546 x3 = XEXP (x2, 0);
04547 if (se_register_operand (x3, DImode))
04548 {
04549 operands[2] = x3;
04550 goto L1253;
04551 }
04552 goto ret0;
04553
04554 L1253: ATTRIBUTE_UNUSED_LABEL
04555 if ((!TARGET_MIPS16))
04556 {
04557 return 114;
04558 }
04559 goto ret0;
04560
04561 L1164: ATTRIBUTE_UNUSED_LABEL
04562 x2 = XEXP (x1, 1);
04563 if (se_register_operand (x2, DImode))
04564 {
04565 operands[2] = x2;
04566 goto L1165;
04567 }
04568 L1176: ATTRIBUTE_UNUSED_LABEL
04569 if (se_uns_arith_operand (x2, DImode))
04570 {
04571 operands[2] = x2;
04572 goto L1177;
04573 }
04574 goto ret0;
04575
04576 L1165: ATTRIBUTE_UNUSED_LABEL
04577 if (((TARGET_64BIT || !TARGET_DEBUG_G_MODE) && !TARGET_MIPS16))
04578 {
04579 return 100;
04580 }
04581 L1171: ATTRIBUTE_UNUSED_LABEL
04582 if (((TARGET_64BIT || !TARGET_DEBUG_G_MODE) && TARGET_MIPS16))
04583 {
04584 return 101;
04585 }
04586 x1 = XEXP (x0, 1);
04587 x2 = XEXP (x1, 1);
04588 goto L1176;
04589
04590 L1177: ATTRIBUTE_UNUSED_LABEL
04591 if ((TARGET_64BIT && !TARGET_MIPS16))
04592 {
04593 return 102;
04594 }
04595 goto ret0;
04596
04597 L1193: ATTRIBUTE_UNUSED_LABEL
04598 x2 = XEXP (x1, 0);
04599 if (se_register_operand (x2, DImode))
04600 {
04601 operands[1] = x2;
04602 goto L1194;
04603 }
04604 goto ret0;
04605
04606 L1194: ATTRIBUTE_UNUSED_LABEL
04607 x2 = XEXP (x1, 1);
04608 if (se_register_operand (x2, DImode))
04609 {
04610 operands[2] = x2;
04611 goto L1195;
04612 }
04613 goto ret0;
04614
04615 L1195: ATTRIBUTE_UNUSED_LABEL
04616 if (((TARGET_64BIT || !TARGET_DEBUG_G_MODE) && !TARGET_MIPS16))
04617 {
04618 return 105;
04619 }
04620 L1201: ATTRIBUTE_UNUSED_LABEL
04621 if (((TARGET_64BIT || !TARGET_DEBUG_G_MODE) && TARGET_MIPS16))
04622 {
04623 return 106;
04624 }
04625 goto ret0;
04626
04627 L1217: ATTRIBUTE_UNUSED_LABEL
04628 x2 = XEXP (x1, 0);
04629 if (se_register_operand (x2, DImode))
04630 {
04631 operands[1] = x2;
04632 goto L1218;
04633 }
04634 goto ret0;
04635
04636 L1218: ATTRIBUTE_UNUSED_LABEL
04637 x2 = XEXP (x1, 1);
04638 if (se_register_operand (x2, DImode))
04639 {
04640 operands[2] = x2;
04641 goto L1219;
04642 }
04643 L1230: ATTRIBUTE_UNUSED_LABEL
04644 if (se_uns_arith_operand (x2, DImode))
04645 {
04646 operands[2] = x2;
04647 goto L1231;
04648 }
04649 goto ret0;
04650
04651 L1219: ATTRIBUTE_UNUSED_LABEL
04652 if (((TARGET_64BIT || !TARGET_DEBUG_G_MODE) && !TARGET_MIPS16))
04653 {
04654 return 109;
04655 }
04656 L1225: ATTRIBUTE_UNUSED_LABEL
04657 if ((!TARGET_64BIT && TARGET_MIPS16))
04658 {
04659 return 110;
04660 }
04661 x1 = XEXP (x0, 1);
04662 x2 = XEXP (x1, 1);
04663 goto L1230;
04664
04665 L1231: ATTRIBUTE_UNUSED_LABEL
04666 if ((TARGET_64BIT && TARGET_MIPS16))
04667 {
04668 return 111;
04669 }
04670 L1237: ATTRIBUTE_UNUSED_LABEL
04671 if ((TARGET_64BIT && !TARGET_MIPS16))
04672 {
04673 return 112;
04674 }
04675 goto ret0;
04676
04677 L1316: ATTRIBUTE_UNUSED_LABEL
04678 x2 = XEXP (x1, 0);
04679 switch (GET_MODE (x2))
04680 {
04681 case SImode:
04682 goto L3478;
04683 case HImode:
04684 goto L3479;
04685 case QImode:
04686 goto L3481;
04687 default:
04688 break;
04689 }
04690 goto ret0;
04691
04692 L3478: ATTRIBUTE_UNUSED_LABEL
04693 if (memory_operand (x2, SImode))
04694 {
04695 operands[1] = x2;
04696 goto L1317;
04697 }
04698 goto ret0;
04699
04700 L1317: ATTRIBUTE_UNUSED_LABEL
04701 if ((TARGET_64BIT && !TARGET_MIPS16))
04702 {
04703 return 125;
04704 }
04705 goto ret0;
04706
04707 L3479: ATTRIBUTE_UNUSED_LABEL
04708 if (nonimmediate_operand (x2, HImode))
04709 {
04710 operands[1] = x2;
04711 goto L1332;
04712 }
04713 L3480: ATTRIBUTE_UNUSED_LABEL
04714 if (memory_operand (x2, HImode))
04715 {
04716 operands[1] = x2;
04717 goto L1337;
04718 }
04719 goto ret0;
04720
04721 L1332: ATTRIBUTE_UNUSED_LABEL
04722 if ((TARGET_64BIT && !TARGET_MIPS16))
04723 {
04724 return 128;
04725 }
04726 x1 = XEXP (x0, 1);
04727 x2 = XEXP (x1, 0);
04728 goto L3480;
04729
04730 L1337: ATTRIBUTE_UNUSED_LABEL
04731 if ((TARGET_64BIT && TARGET_MIPS16))
04732 {
04733 return 129;
04734 }
04735 goto ret0;
04736
04737 L3481: ATTRIBUTE_UNUSED_LABEL
04738 if (nonimmediate_operand (x2, QImode))
04739 {
04740 operands[1] = x2;
04741 goto L1362;
04742 }
04743 L3482: ATTRIBUTE_UNUSED_LABEL
04744 if (memory_operand (x2, QImode))
04745 {
04746 operands[1] = x2;
04747 goto L1373;
04748 }
04749 goto ret0;
04750
04751 L1362: ATTRIBUTE_UNUSED_LABEL
04752 if ((TARGET_64BIT && !TARGET_MIPS16))
04753 {
04754 return 134;
04755 }
04756 x1 = XEXP (x0, 1);
04757 x2 = XEXP (x1, 0);
04758 goto L3482;
04759
04760 L1373: ATTRIBUTE_UNUSED_LABEL
04761 if ((TARGET_64BIT && TARGET_MIPS16))
04762 {
04763 return 136;
04764 }
04765 goto ret0;
04766
04767 L1440: ATTRIBUTE_UNUSED_LABEL
04768 x2 = XEXP (x1, 0);
04769 switch (GET_MODE (x2))
04770 {
04771 case DFmode:
04772 goto L3483;
04773 case SFmode:
04774 goto L3484;
04775 default:
04776 break;
04777 }
04778 goto ret0;
04779
04780 L3483: ATTRIBUTE_UNUSED_LABEL
04781 if (register_operand (x2, DFmode))
04782 {
04783 operands[1] = x2;
04784 goto L1441;
04785 }
04786 goto ret0;
04787
04788 L1441: ATTRIBUTE_UNUSED_LABEL
04789 if ((TARGET_HARD_FLOAT && TARGET_FLOAT64 && TARGET_DOUBLE_FLOAT))
04790 {
04791 return 147;
04792 }
04793 goto ret0;
04794
04795 L3484: ATTRIBUTE_UNUSED_LABEL
04796 if (register_operand (x2, SFmode))
04797 {
04798 operands[1] = x2;
04799 goto L1446;
04800 }
04801 goto ret0;
04802
04803 L1446: ATTRIBUTE_UNUSED_LABEL
04804 if ((TARGET_HARD_FLOAT && TARGET_FLOAT64 && TARGET_DOUBLE_FLOAT))
04805 {
04806 return 148;
04807 }
04808 goto ret0;
04809
04810 L3461: ATTRIBUTE_UNUSED_LABEL
04811 if (XVECLEN (x1, 0) == 1
04812 && XINT (x1, 1) == 2)
04813 goto L1480;
04814 goto ret0;
04815
04816 L1480: ATTRIBUTE_UNUSED_LABEL
04817 x2 = XVECEXP (x1, 0, 0);
04818 if (general_operand (x2, BLKmode))
04819 {
04820 operands[1] = x2;
04821 return 155;
04822 }
04823 goto ret0;
04824
04825 L1786: ATTRIBUTE_UNUSED_LABEL
04826 x2 = XEXP (x1, 0);
04827 if (se_register_operand (x2, DImode))
04828 {
04829 operands[1] = x2;
04830 goto L1787;
04831 }
04832 goto ret0;
04833
04834 L1787: ATTRIBUTE_UNUSED_LABEL
04835 x2 = XEXP (x1, 1);
04836 if (arith_operand (x2, SImode))
04837 {
04838 operands[2] = x2;
04839 goto L1788;
04840 }
04841 goto ret0;
04842
04843 L1788: ATTRIBUTE_UNUSED_LABEL
04844 if ((TARGET_64BIT && !TARGET_MIPS16))
04845 {
04846 return 200;
04847 }
04848 L1794: ATTRIBUTE_UNUSED_LABEL
04849 if ((TARGET_64BIT && TARGET_MIPS16))
04850 {
04851 return 201;
04852 }
04853 goto ret0;
04854
04855 L1837: ATTRIBUTE_UNUSED_LABEL
04856 x2 = XEXP (x1, 0);
04857 if (se_register_operand (x2, DImode))
04858 {
04859 operands[1] = x2;
04860 goto L1838;
04861 }
04862 goto ret0;
04863
04864 L1838: ATTRIBUTE_UNUSED_LABEL
04865 x2 = XEXP (x1, 1);
04866 if (arith_operand (x2, SImode))
04867 {
04868 operands[2] = x2;
04869 goto L1839;
04870 }
04871 goto ret0;
04872
04873 L1839: ATTRIBUTE_UNUSED_LABEL
04874 if ((TARGET_64BIT && !TARGET_MIPS16))
04875 {
04876 return 207;
04877 }
04878 L1845: ATTRIBUTE_UNUSED_LABEL
04879 if ((TARGET_64BIT && TARGET_MIPS16))
04880 {
04881 return 208;
04882 }
04883 goto ret0;
04884
04885 L1894: ATTRIBUTE_UNUSED_LABEL
04886 x2 = XEXP (x1, 0);
04887 if (se_register_operand (x2, DImode))
04888 {
04889 operands[1] = x2;
04890 goto L1895;
04891 }
04892 goto ret0;
04893
04894 L1895: ATTRIBUTE_UNUSED_LABEL
04895 x2 = XEXP (x1, 1);
04896 if (arith_operand (x2, SImode))
04897 {
04898 operands[2] = x2;
04899 goto L1896;
04900 }
04901 goto ret0;
04902
04903 L1896: ATTRIBUTE_UNUSED_LABEL
04904 if ((TARGET_64BIT && !TARGET_MIPS16))
04905 {
04906 return 215;
04907 }
04908 L1902: ATTRIBUTE_UNUSED_LABEL
04909 if ((TARGET_64BIT && TARGET_MIPS16))
04910 {
04911 return 216;
04912 }
04913 goto ret0;
04914
04915 L1912: ATTRIBUTE_UNUSED_LABEL
04916 x2 = XEXP (x1, 0);
04917 if (register_operand (x2, DImode))
04918 {
04919 operands[1] = x2;
04920 goto L1913;
04921 }
04922 goto ret0;
04923
04924 L1913: ATTRIBUTE_UNUSED_LABEL
04925 x2 = XEXP (x1, 1);
04926 if (arith_operand (x2, DImode))
04927 {
04928 operands[2] = x2;
04929 goto L1914;
04930 }
04931 goto ret0;
04932
04933 L1914: ATTRIBUTE_UNUSED_LABEL
04934 if ((ISA_HAS_ROTR_DI))
04935 {
04936 return 218;
04937 }
04938 goto ret0;
04939
04940 L2041: ATTRIBUTE_UNUSED_LABEL
04941 x2 = XEXP (x1, 0);
04942 if (se_register_operand (x2, DImode))
04943 {
04944 operands[1] = x2;
04945 goto L2042;
04946 }
04947 goto ret0;
04948
04949 L2042: ATTRIBUTE_UNUSED_LABEL
04950 x2 = XEXP (x1, 1);
04951 if (GET_CODE (x2) == CONST_INT)
04952 goto L3485;
04953 goto ret0;
04954
04955 L3485: ATTRIBUTE_UNUSED_LABEL
04956 if (XWINT (x2, 0) == 0LL)
04957 goto L3487;
04958 goto ret0;
04959
04960 L3487: ATTRIBUTE_UNUSED_LABEL
04961 if ((TARGET_64BIT && !TARGET_MIPS16))
04962 {
04963 return 233;
04964 }
04965 L3488: ATTRIBUTE_UNUSED_LABEL
04966 if ((TARGET_64BIT && TARGET_MIPS16))
04967 {
04968 return 234;
04969 }
04970 goto ret0;
04971
04972 L2056: ATTRIBUTE_UNUSED_LABEL
04973 x2 = XEXP (x1, 0);
04974 if (se_register_operand (x2, DImode))
04975 {
04976 operands[1] = x2;
04977 goto L2057;
04978 }
04979 goto ret0;
04980
04981 L2057: ATTRIBUTE_UNUSED_LABEL
04982 x2 = XEXP (x1, 1);
04983 if (GET_CODE (x2) == CONST_INT
04984 && XWINT (x2, 0) == 0LL
04985 && (TARGET_64BIT && !TARGET_MIPS16))
04986 {
04987 return 236;
04988 }
04989 goto ret0;
04990
04991 L2073: ATTRIBUTE_UNUSED_LABEL
04992 x2 = XEXP (x1, 0);
04993 if (se_register_operand (x2, DImode))
04994 {
04995 operands[1] = x2;
04996 goto L2074;
04997 }
04998 goto ret0;
04999
05000 L2074: ATTRIBUTE_UNUSED_LABEL
05001 x2 = XEXP (x1, 1);
05002 if (se_reg_or_0_operand (x2, DImode))
05003 {
05004 operands[2] = x2;
05005 goto L2075;
05006 }
05007 L2080: ATTRIBUTE_UNUSED_LABEL
05008 if (se_register_operand (x2, DImode))
05009 {
05010 operands[2] = x2;
05011 goto L2081;
05012 }
05013 goto ret0;
05014
05015 L2075: ATTRIBUTE_UNUSED_LABEL
05016 if ((TARGET_64BIT && !TARGET_MIPS16))
05017 {
05018 return 239;
05019 }
05020 x1 = XEXP (x0, 1);
05021 x2 = XEXP (x1, 1);
05022 goto L2080;
05023
05024 L2081: ATTRIBUTE_UNUSED_LABEL
05025 if ((TARGET_64BIT && TARGET_MIPS16))
05026 {
05027 return 240;
05028 }
05029 goto ret0;
05030
05031 L2097: ATTRIBUTE_UNUSED_LABEL
05032 x2 = XEXP (x1, 0);
05033 if (se_register_operand (x2, DImode))
05034 {
05035 operands[1] = x2;
05036 goto L2098;
05037 }
05038 goto ret0;
05039
05040 L2098: ATTRIBUTE_UNUSED_LABEL
05041 x2 = XEXP (x1, 1);
05042 if (se_arith_operand (x2, DImode))
05043 {
05044 operands[2] = x2;
05045 goto L2099;
05046 }
05047 goto ret0;
05048
05049 L2099: ATTRIBUTE_UNUSED_LABEL
05050 if ((TARGET_64BIT && !TARGET_MIPS16))
05051 {
05052 return 243;
05053 }
05054 L2105: ATTRIBUTE_UNUSED_LABEL
05055 if ((TARGET_64BIT && TARGET_MIPS16))
05056 {
05057 return 244;
05058 }
05059 goto ret0;
05060
05061 L2121: ATTRIBUTE_UNUSED_LABEL
05062 x2 = XEXP (x1, 0);
05063 if (se_register_operand (x2, DImode))
05064 {
05065 operands[1] = x2;
05066 goto L2122;
05067 }
05068 goto ret0;
05069
05070 L2122: ATTRIBUTE_UNUSED_LABEL
05071 x2 = XEXP (x1, 1);
05072 if (small_int (x2, DImode))
05073 {
05074 operands[2] = x2;
05075 goto L2123;
05076 }
05077 goto ret0;
05078
05079 L2123: ATTRIBUTE_UNUSED_LABEL
05080 if ((TARGET_64BIT && !TARGET_MIPS16 && INTVAL (operands[2]) < 32767))
05081 {
05082 return 247;
05083 }
05084 L2129: ATTRIBUTE_UNUSED_LABEL
05085 if ((TARGET_64BIT && TARGET_MIPS16 && INTVAL (operands[2]) < 32767))
05086 {
05087 return 248;
05088 }
05089 goto ret0;
05090
05091 L2145: ATTRIBUTE_UNUSED_LABEL
05092 x2 = XEXP (x1, 0);
05093 if (se_register_operand (x2, DImode))
05094 {
05095 operands[1] = x2;
05096 goto L2146;
05097 }
05098 goto ret0;
05099
05100 L2146: ATTRIBUTE_UNUSED_LABEL
05101 x2 = XEXP (x1, 1);
05102 if (se_reg_or_0_operand (x2, DImode))
05103 {
05104 operands[2] = x2;
05105 goto L2147;
05106 }
05107 L2152: ATTRIBUTE_UNUSED_LABEL
05108 if (se_register_operand (x2, DImode))
05109 {
05110 operands[2] = x2;
05111 goto L2153;
05112 }
05113 goto ret0;
05114
05115 L2147: ATTRIBUTE_UNUSED_LABEL
05116 if ((TARGET_64BIT && !TARGET_MIPS16))
05117 {
05118 return 251;
05119 }
05120 x1 = XEXP (x0, 1);
05121 x2 = XEXP (x1, 1);
05122 goto L2152;
05123
05124 L2153: ATTRIBUTE_UNUSED_LABEL
05125 if ((TARGET_64BIT && TARGET_MIPS16))
05126 {
05127 return 252;
05128 }
05129 goto ret0;
05130
05131 L2169: ATTRIBUTE_UNUSED_LABEL
05132 x2 = XEXP (x1, 0);
05133 if (se_register_operand (x2, DImode))
05134 {
05135 operands[1] = x2;
05136 goto L2170;
05137 }
05138 goto ret0;
05139
05140 L2170: ATTRIBUTE_UNUSED_LABEL
05141 x2 = XEXP (x1, 1);
05142 if (se_arith_operand (x2, DImode))
05143 {
05144 operands[2] = x2;
05145 goto L2171;
05146 }
05147 goto ret0;
05148
05149 L2171: ATTRIBUTE_UNUSED_LABEL
05150 if ((TARGET_64BIT && !TARGET_MIPS16))
05151 {
05152 return 255;
05153 }
05154 L2177: ATTRIBUTE_UNUSED_LABEL
05155 if ((TARGET_64BIT && TARGET_MIPS16))
05156 {
05157 return 256;
05158 }
05159 goto ret0;
05160
05161 L2193: ATTRIBUTE_UNUSED_LABEL
05162 x2 = XEXP (x1, 0);
05163 if (se_register_operand (x2, DImode))
05164 {
05165 operands[1] = x2;
05166 goto L2194;
05167 }
05168 goto ret0;
05169
05170 L2194: ATTRIBUTE_UNUSED_LABEL
05171 x2 = XEXP (x1, 1);
05172 if (small_int (x2, DImode))
05173 {
05174 operands[2] = x2;
05175 goto L2195;
05176 }
05177 goto ret0;
05178
05179 L2195: ATTRIBUTE_UNUSED_LABEL
05180 if ((TARGET_64BIT && !TARGET_MIPS16 && INTVAL (operands[2]) < 32767))
05181 {
05182 return 259;
05183 }
05184 L2201: ATTRIBUTE_UNUSED_LABEL
05185 if ((TARGET_64BIT && TARGET_MIPS16 && INTVAL (operands[2]) < 32767))
05186 {
05187 return 260;
05188 }
05189 goto ret0;
05190
05191 L2690: ATTRIBUTE_UNUSED_LABEL
05192 x2 = XEXP (x1, 0);
05193 if (equality_op (x2, VOIDmode))
05194 {
05195 operands[4] = x2;
05196 goto L2691;
05197 }
05198 L2708: ATTRIBUTE_UNUSED_LABEL
05199 if (equality_op (x2, VOIDmode))
05200 {
05201 operands[3] = x2;
05202 goto L2709;
05203 }
05204 goto ret0;
05205
05206 L2691: ATTRIBUTE_UNUSED_LABEL
05207 x3 = XEXP (x2, 0);
05208 switch (GET_MODE (x3))
05209 {
05210 case SImode:
05211 goto L3489;
05212 case DImode:
05213 goto L3490;
05214 default:
05215 break;
05216 }
05217 goto L2708;
05218
05219 L3489: ATTRIBUTE_UNUSED_LABEL
05220 if (register_operand (x3, SImode))
05221 {
05222 operands[1] = x3;
05223 goto L2692;
05224 }
05225 goto L2708;
05226
05227 L2692: ATTRIBUTE_UNUSED_LABEL
05228 x3 = XEXP (x2, 1);
05229 if (GET_CODE (x3) == CONST_INT
05230 && XWINT (x3, 0) == 0LL)
05231 goto L2693;
05232 goto L2708;
05233
05234 L2693: ATTRIBUTE_UNUSED_LABEL
05235 x2 = XEXP (x1, 1);
05236 if (se_reg_or_0_operand (x2, DImode))
05237 {
05238 operands[2] = x2;
05239 goto L2694;
05240 }
05241 x2 = XEXP (x1, 0);
05242 goto L2708;
05243
05244 L2694: ATTRIBUTE_UNUSED_LABEL
05245 x2 = XEXP (x1, 2);
05246 if (se_reg_or_0_operand (x2, DImode))
05247 {
05248 operands[3] = x2;
05249 goto L2695;
05250 }
05251 x2 = XEXP (x1, 0);
05252 goto L2708;
05253
05254 L2695: ATTRIBUTE_UNUSED_LABEL
05255 if (((ISA_HAS_CONDMOVE || ISA_HAS_INT_CONDMOVE) && TARGET_64BIT))
05256 {
05257 return 322;
05258 }
05259 x1 = XEXP (x0, 1);
05260 x2 = XEXP (x1, 0);
05261 goto L2708;
05262
05263 L3490: ATTRIBUTE_UNUSED_LABEL
05264 if (se_register_operand (x3, DImode))
05265 {
05266 operands[1] = x3;
05267 goto L2701;
05268 }
05269 goto L2708;
05270
05271 L2701: ATTRIBUTE_UNUSED_LABEL
05272 x3 = XEXP (x2, 1);
05273 if (GET_CODE (x3) == CONST_INT
05274 && XWINT (x3, 0) == 0LL)
05275 goto L2702;
05276 goto L2708;
05277
05278 L2702: ATTRIBUTE_UNUSED_LABEL
05279 x2 = XEXP (x1, 1);
05280 if (se_reg_or_0_operand (x2, DImode))
05281 {
05282 operands[2] = x2;
05283 goto L2703;
05284 }
05285 x2 = XEXP (x1, 0);
05286 goto L2708;
05287
05288 L2703: ATTRIBUTE_UNUSED_LABEL
05289 x2 = XEXP (x1, 2);
05290 if (se_reg_or_0_operand (x2, DImode))
05291 {
05292 operands[3] = x2;
05293 goto L2704;
05294 }
05295 x2 = XEXP (x1, 0);
05296 goto L2708;
05297
05298 L2704: ATTRIBUTE_UNUSED_LABEL
05299 if (((ISA_HAS_CONDMOVE || ISA_HAS_INT_CONDMOVE) && TARGET_64BIT))
05300 {
05301 return 323;
05302 }
05303 x1 = XEXP (x0, 1);
05304 x2 = XEXP (x1, 0);
05305 goto L2708;
05306
05307 L2709: ATTRIBUTE_UNUSED_LABEL
05308 x3 = XEXP (x2, 0);
05309 if (register_operand (x3, CCmode))
05310 {
05311 operands[4] = x3;
05312 goto L2710;
05313 }
05314 goto ret0;
05315
05316 L2710: ATTRIBUTE_UNUSED_LABEL
05317 x3 = XEXP (x2, 1);
05318 if (GET_CODE (x3) == CONST_INT
05319 && XWINT (x3, 0) == 0LL)
05320 goto L2711;
05321 goto ret0;
05322
05323 L2711: ATTRIBUTE_UNUSED_LABEL
05324 x2 = XEXP (x1, 1);
05325 if (se_reg_or_0_operand (x2, DImode))
05326 {
05327 operands[1] = x2;
05328 goto L2712;
05329 }
05330 goto ret0;
05331
05332 L2712: ATTRIBUTE_UNUSED_LABEL
05333 x2 = XEXP (x1, 2);
05334 if (se_reg_or_0_operand (x2, DImode))
05335 {
05336 operands[2] = x2;
05337 goto L2713;
05338 }
05339 goto ret0;
05340
05341 L2713: ATTRIBUTE_UNUSED_LABEL
05342 if ((ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT && TARGET_64BIT))
05343 {
05344 return 324;
05345 }
05346 goto ret0;
05347 ret0:
05348 return -1;
05349 }
05350
05351 static int recog_5 PARAMS ((rtx, rtx, int *));
05352 static int
05353 recog_5 (x0, insn, pnum_clobbers)
05354 rtx x0 ATTRIBUTE_UNUSED;
05355 rtx insn ATTRIBUTE_UNUSED;
05356 int *pnum_clobbers ATTRIBUTE_UNUSED;
05357 {
05358 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
05359 rtx x1 ATTRIBUTE_UNUSED;
05360 rtx x2 ATTRIBUTE_UNUSED;
05361 rtx x3 ATTRIBUTE_UNUSED;
05362 rtx x4 ATTRIBUTE_UNUSED;
05363 rtx x5 ATTRIBUTE_UNUSED;
05364 rtx x6 ATTRIBUTE_UNUSED;
05365 rtx x7 ATTRIBUTE_UNUSED;
05366 int tem ATTRIBUTE_UNUSED;
05367
05368 x1 = XEXP (x0, 0);
05369 switch (GET_MODE (x1))
05370 {
05371 case DFmode:
05372 goto L3281;
05373 case SFmode:
05374 goto L3280;
05375 case SImode:
05376 goto L3277;
05377 case DImode:
05378 goto L3286;
05379 case HImode:
05380 goto L3272;
05381 case QImode:
05382 goto L3273;
05383 case BLKmode:
05384 goto L3274;
05385 case CCmode:
05386 goto L3279;
05387 default:
05388 break;
05389 }
05390 L1916: ATTRIBUTE_UNUSED_LABEL
05391 if (GET_CODE (x1) == PC)
05392 goto L2322;
05393 if (register_operand (x1, VOIDmode))
05394 {
05395 operands[0] = x1;
05396 goto L2436;
05397 }
05398 goto ret0;
05399
05400 L3281: ATTRIBUTE_UNUSED_LABEL
05401 tem = recog_1 (x0, insn, pnum_clobbers);
05402 if (tem >= 0)
05403 return tem;
05404 goto L1916;
05405
05406 L3280: ATTRIBUTE_UNUSED_LABEL
05407 tem = recog_2 (x0, insn, pnum_clobbers);
05408 if (tem >= 0)
05409 return tem;
05410 goto L1916;
05411
05412 L3277: ATTRIBUTE_UNUSED_LABEL
05413 if (GET_CODE (x1) == MEM)
05414 goto L1522;
05415 if (register_operand (x1, SImode))
05416 {
05417 operands[0] = x1;
05418 goto L22;
05419 }
05420 L3263: ATTRIBUTE_UNUSED_LABEL
05421 if (GET_CODE (x1) == REG
05422 && XINT (x1, 0) == 29)
05423 goto L28;
05424 L3264: ATTRIBUTE_UNUSED_LABEL
05425 if (register_operand (x1, SImode))
05426 {
05427 operands[0] = x1;
05428 goto L34;
05429 }
05430 L3268: ATTRIBUTE_UNUSED_LABEL
05431 if (GET_CODE (x1) == REG
05432 && XINT (x1, 0) == 29)
05433 goto L120;
05434 L3269: ATTRIBUTE_UNUSED_LABEL
05435 if (register_operand (x1, SImode))
05436 {
05437 operands[0] = x1;
05438 goto L126;
05439 }
05440 L3278: ATTRIBUTE_UNUSED_LABEL
05441 if (nonimmediate_operand (x1, SImode))
05442 {
05443 operands[0] = x1;
05444 goto L1528;
05445 }
05446 L3288: ATTRIBUTE_UNUSED_LABEL
05447 if (register_operand (x1, SImode))
05448 {
05449 operands[0] = x1;
05450 goto L2794;
05451 }
05452 goto L1916;
05453
05454 L1522: ATTRIBUTE_UNUSED_LABEL
05455 x2 = XEXP (x1, 0);
05456 if (GET_MODE (x2) == SImode
05457 && GET_CODE (x2) == PLUS)
05458 goto L1523;
05459 goto L3278;
05460
05461 L1523: ATTRIBUTE_UNUSED_LABEL
05462 x3 = XEXP (x2, 0);
05463 if (GET_MODE (x3) == SImode
05464 && GET_CODE (x3) == REG
05465 && XINT (x3, 0) == 29)
05466 goto L1524;
05467 goto L3278;
05468
05469 L1524: ATTRIBUTE_UNUSED_LABEL
05470 x3 = XEXP (x2, 1);
05471 if (small_int (x3, SImode))
05472 {
05473 operands[0] = x3;
05474 goto L1525;
05475 }
05476 goto L3278;
05477
05478 L1525: ATTRIBUTE_UNUSED_LABEL
05479 x1 = XEXP (x0, 1);
05480 if (GET_MODE (x1) == SImode
05481 && GET_CODE (x1) == REG
05482 && XINT (x1, 0) == 31
05483 && (TARGET_MIPS16))
05484 {
05485 return 165;
05486 }
05487 x1 = XEXP (x0, 0);
05488 goto L3278;
05489
05490 L22: ATTRIBUTE_UNUSED_LABEL
05491 x1 = XEXP (x0, 1);
05492 if (GET_MODE (x1) == SImode
05493 && GET_CODE (x1) == PLUS)
05494 goto L23;
05495 x1 = XEXP (x0, 0);
05496 goto L3263;
05497
05498 L23: ATTRIBUTE_UNUSED_LABEL
05499 x2 = XEXP (x1, 0);
05500 if (reg_or_0_operand (x2, SImode))
05501 {
05502 operands[1] = x2;
05503 goto L24;
05504 }
05505 x1 = XEXP (x0, 0);
05506 goto L3263;
05507
05508 L24: ATTRIBUTE_UNUSED_LABEL
05509 x2 = XEXP (x1, 1);
05510 if (arith_operand (x2, SImode))
05511 {
05512 operands[2] = x2;
05513 goto L25;
05514 }
05515 x1 = XEXP (x0, 0);
05516 goto L3263;
05517
05518 L25: ATTRIBUTE_UNUSED_LABEL
05519 if ((! TARGET_MIPS16
05520 && (TARGET_GAS
05521 || GET_CODE (operands[2]) != CONST_INT
05522 || INTVAL (operands[2]) != -32768)))
05523 {
05524 return 4;
05525 }
05526 x1 = XEXP (x0, 0);
05527 goto L3263;
05528
05529 L28: ATTRIBUTE_UNUSED_LABEL
05530 x1 = XEXP (x0, 1);
05531 if (GET_MODE (x1) == SImode
05532 && GET_CODE (x1) == PLUS)
05533 goto L29;
05534 x1 = XEXP (x0, 0);
05535 goto L3264;
05536
05537 L29: ATTRIBUTE_UNUSED_LABEL
05538 x2 = XEXP (x1, 0);
05539 if (GET_MODE (x2) == SImode
05540 && GET_CODE (x2) == REG
05541 && XINT (x2, 0) == 29)
05542 goto L30;
05543 x1 = XEXP (x0, 0);
05544 goto L3264;
05545
05546 L30: ATTRIBUTE_UNUSED_LABEL
05547 x2 = XEXP (x1, 1);
05548 if (small_int (x2, SImode))
05549 {
05550 operands[0] = x2;
05551 goto L31;
05552 }
05553 x1 = XEXP (x0, 0);
05554 goto L3264;
05555
05556 L31: ATTRIBUTE_UNUSED_LABEL
05557 if ((TARGET_MIPS16))
05558 {
05559 return 5;
05560 }
05561 x1 = XEXP (x0, 0);
05562 goto L3264;
05563
05564 L34: ATTRIBUTE_UNUSED_LABEL
05565 x1 = XEXP (x0, 1);
05566 if (GET_MODE (x1) == SImode)
05567 goto L3352;
05568 x1 = XEXP (x0, 0);
05569 goto L3268;
05570
05571 L3352: ATTRIBUTE_UNUSED_LABEL
05572 switch (GET_CODE (x1))
05573 {
05574 case PLUS:
05575 goto L35;
05576 case MINUS:
05577 goto L115;
05578 default:
05579 break;
05580 }
05581 x1 = XEXP (x0, 0);
05582 goto L3268;
05583
05584 L35: ATTRIBUTE_UNUSED_LABEL
05585 x2 = XEXP (x1, 0);
05586 if (GET_MODE (x2) == SImode)
05587 goto L3354;
05588 x1 = XEXP (x0, 0);
05589 goto L3268;
05590
05591 L3354: ATTRIBUTE_UNUSED_LABEL
05592 if (GET_CODE (x2) == REG
05593 && XINT (x2, 0) == 29)
05594 goto L36;
05595 L3355: ATTRIBUTE_UNUSED_LABEL
05596 if (register_operand (x2, SImode))
05597 {
05598 operands[1] = x2;
05599 goto L42;
05600 }
05601 x1 = XEXP (x0, 0);
05602 goto L3268;
05603
05604 L36: ATTRIBUTE_UNUSED_LABEL
05605 x2 = XEXP (x1, 1);
05606 if (small_int (x2, SImode))
05607 {
05608 operands[1] = x2;
05609 goto L37;
05610 }
05611 x2 = XEXP (x1, 0);
05612 goto L3355;
05613
05614 L37: ATTRIBUTE_UNUSED_LABEL
05615 if ((TARGET_MIPS16))
05616 {
05617 return 6;
05618 }
05619 x1 = XEXP (x0, 1);
05620 x2 = XEXP (x1, 0);
05621 goto L3355;
05622
05623 L42: ATTRIBUTE_UNUSED_LABEL
05624 x2 = XEXP (x1, 1);
05625 if (arith_operand (x2, SImode))
05626 {
05627 operands[2] = x2;
05628 goto L43;
05629 }
05630 x1 = XEXP (x0, 0);
05631 goto L3268;
05632
05633 L43: ATTRIBUTE_UNUSED_LABEL
05634 if ((TARGET_MIPS16
05635 && (GET_CODE (operands[1]) != REG
05636 || REGNO (operands[1]) >= FIRST_PSEUDO_REGISTER
05637 || M16_REG_P (REGNO (operands[1]))
05638 || REGNO (operands[1]) == ARG_POINTER_REGNUM
05639 || REGNO (operands[1]) == FRAME_POINTER_REGNUM
05640 || REGNO (operands[1]) == STACK_POINTER_REGNUM)
05641 && (GET_CODE (operands[2]) != REG
05642 || REGNO (operands[2]) >= FIRST_PSEUDO_REGISTER
05643 || M16_REG_P (REGNO (operands[2]))
05644 || REGNO (operands[2]) == ARG_POINTER_REGNUM
05645 || REGNO (operands[2]) == FRAME_POINTER_REGNUM
05646 || REGNO (operands[2]) == STACK_POINTER_REGNUM)))
05647 {
05648 return 7;
05649 }
05650 x1 = XEXP (x0, 0);
05651 goto L3268;
05652
05653 L115: ATTRIBUTE_UNUSED_LABEL
05654 x2 = XEXP (x1, 0);
05655 if (reg_or_0_operand (x2, SImode))
05656 {
05657 operands[1] = x2;
05658 goto L116;
05659 }
05660 x1 = XEXP (x0, 0);
05661 goto L3268;
05662
05663 L116: ATTRIBUTE_UNUSED_LABEL
05664 x2 = XEXP (x1, 1);
05665 if (arith_operand (x2, SImode))
05666 {
05667 operands[2] = x2;
05668 goto L117;
05669 }
05670 x1 = XEXP (x0, 0);
05671 goto L3268;
05672
05673 L117: ATTRIBUTE_UNUSED_LABEL
05674 if ((!TARGET_MIPS16
05675 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768)))
05676 {
05677 return 18;
05678 }
05679 x1 = XEXP (x0, 0);
05680 goto L3268;
05681
05682 L120: ATTRIBUTE_UNUSED_LABEL
05683 x1 = XEXP (x0, 1);
05684 if (GET_MODE (x1) == SImode
05685 && GET_CODE (x1) == MINUS)
05686 goto L121;
05687 x1 = XEXP (x0, 0);
05688 goto L3269;
05689
05690 L121: ATTRIBUTE_UNUSED_LABEL
05691 x2 = XEXP (x1, 0);
05692 if (GET_MODE (x2) == SImode
05693 && GET_CODE (x2) == REG
05694 && XINT (x2, 0) == 29)
05695 goto L122;
05696 x1 = XEXP (x0, 0);
05697 goto L3269;
05698
05699 L122: ATTRIBUTE_UNUSED_LABEL
05700 x2 = XEXP (x1, 1);
05701 if (small_int (x2, SImode))
05702 {
05703 operands[0] = x2;
05704 goto L123;
05705 }
05706 x1 = XEXP (x0, 0);
05707 goto L3269;
05708
05709 L123: ATTRIBUTE_UNUSED_LABEL
05710 if ((TARGET_MIPS16
05711 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768)))
05712 {
05713 return 19;
05714 }
05715 x1 = XEXP (x0, 0);
05716 goto L3269;
05717
05718 L126: ATTRIBUTE_UNUSED_LABEL
05719 x1 = XEXP (x0, 1);
05720 if (GET_MODE (x1) == SImode)
05721 goto L3356;
05722 x1 = XEXP (x0, 0);
05723 goto L3278;
05724
05725 L3356: ATTRIBUTE_UNUSED_LABEL
05726 tem = recog_3 (x0, insn, pnum_clobbers);
05727 if (tem >= 0)
05728 return tem;
05729 x1 = XEXP (x0, 0);
05730 goto L3278;
05731
05732 L1528: ATTRIBUTE_UNUSED_LABEL
05733 x1 = XEXP (x0, 1);
05734 if (move_operand (x1, SImode))
05735 {
05736 operands[1] = x1;
05737 goto L1529;
05738 }
05739 x1 = XEXP (x0, 0);
05740 goto L3288;
05741
05742 L1529: ATTRIBUTE_UNUSED_LABEL
05743 if ((!TARGET_MIPS16
05744 && (register_operand (operands[0], SImode)
05745 || register_operand (operands[1], SImode)
05746 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0))))
05747 {
05748 return 166;
05749 }
05750 L1533: ATTRIBUTE_UNUSED_LABEL
05751 if ((TARGET_MIPS16
05752 && (register_operand (operands[0], SImode)
05753 || register_operand (operands[1], SImode)
05754 || (GET_CODE (operands[0]) == MEM
05755 && GET_CODE (XEXP (operands[0], 0)) == PLUS
05756 && GET_CODE (XEXP (XEXP (operands[0], 0), 1)) == CONST
05757 && mips16_gp_offset_p (XEXP (XEXP (operands[0], 0), 1))
05758 && GET_CODE (operands[1]) == CONST_INT
05759 && (SMALL_INT (operands[1])
05760 || SMALL_INT_UNSIGNED (operands[1]))))))
05761 {
05762 return 167;
05763 }
05764 x1 = XEXP (x0, 0);
05765 goto L3288;
05766
05767 L2794: ATTRIBUTE_UNUSED_LABEL
05768 x1 = XEXP (x0, 1);
05769 if (address_operand (x1, SImode))
05770 {
05771 operands[1] = x1;
05772 goto L2795;
05773 }
05774 x1 = XEXP (x0, 0);
05775 goto L1916;
05776
05777 L2795: ATTRIBUTE_UNUSED_LABEL
05778 if ((Pmode == SImode))
05779 {
05780 return 340;
05781 }
05782 x1 = XEXP (x0, 0);
05783 goto L1916;
05784
05785 L3286: ATTRIBUTE_UNUSED_LABEL
05786 if (GET_CODE (x1) == REG
05787 && XINT (x1, 0) == 28)
05788 goto L1650;
05789 L3265: ATTRIBUTE_UNUSED_LABEL
05790 if (register_operand (x1, DImode))
05791 {
05792 operands[0] = x1;
05793 goto L64;
05794 }
05795 L3266: ATTRIBUTE_UNUSED_LABEL
05796 if (GET_CODE (x1) == REG
05797 && XINT (x1, 0) == 29)
05798 goto L70;
05799 L3267: ATTRIBUTE_UNUSED_LABEL
05800 if (register_operand (x1, DImode))
05801 {
05802 operands[0] = x1;
05803 goto L76;
05804 }
05805 L3270: ATTRIBUTE_UNUSED_LABEL
05806 if (GET_CODE (x1) == REG
05807 && XINT (x1, 0) == 29)
05808 goto L162;
05809 L3271: ATTRIBUTE_UNUSED_LABEL
05810 if (register_operand (x1, DImode))
05811 {
05812 operands[0] = x1;
05813 goto L168;
05814 }
05815 L3275: ATTRIBUTE_UNUSED_LABEL
05816 if (memory_operand (x1, DImode))
05817 {
05818 operands[0] = x1;
05819 goto L1498;
05820 }
05821 L3276: ATTRIBUTE_UNUSED_LABEL
05822 if (nonimmediate_operand (x1, DImode))
05823 {
05824 operands[0] = x1;
05825 goto L1513;
05826 }
05827 L3289: ATTRIBUTE_UNUSED_LABEL
05828 if (register_operand (x1, DImode))
05829 {
05830 operands[0] = x1;
05831 goto L2798;
05832 }
05833 goto L1916;
05834
05835 L1650: ATTRIBUTE_UNUSED_LABEL
05836 x1 = XEXP (x0, 1);
05837 if (GET_MODE (x1) == DImode
05838 && GET_CODE (x1) == UNSPEC_VOLATILE
05839 && XVECLEN (x1, 0) == 2
05840 && XINT (x1, 1) == 7)
05841 goto L1651;
05842 x1 = XEXP (x0, 0);
05843 goto L3265;
05844
05845 L1651: ATTRIBUTE_UNUSED_LABEL
05846 x2 = XVECEXP (x1, 0, 0);
05847 if (address_operand (x2, DImode))
05848 {
05849 operands[0] = x2;
05850 goto L1652;
05851 }
05852 x1 = XEXP (x0, 0);
05853 goto L3265;
05854
05855 L1652: ATTRIBUTE_UNUSED_LABEL
05856 x2 = XVECEXP (x1, 0, 1);
05857 if (register_operand (x2, DImode))
05858 {
05859 operands[1] = x2;
05860 goto L1653;
05861 }
05862 x1 = XEXP (x0, 0);
05863 goto L3265;
05864
05865 L1653: ATTRIBUTE_UNUSED_LABEL
05866 if (pnum_clobbers != NULL)
05867 {
05868 *pnum_clobbers = 1;
05869 return 189;
05870 }
05871 x1 = XEXP (x0, 0);
05872 goto L3265;
05873
05874 L64: ATTRIBUTE_UNUSED_LABEL
05875 x1 = XEXP (x0, 1);
05876 if (GET_MODE (x1) == DImode
05877 && GET_CODE (x1) == PLUS)
05878 goto L65;
05879 x1 = XEXP (x0, 0);
05880 goto L3266;
05881
05882 L65: ATTRIBUTE_UNUSED_LABEL
05883 x2 = XEXP (x1, 0);
05884 if (se_reg_or_0_operand (x2, DImode))
05885 {
05886 operands[1] = x2;
05887 goto L66;
05888 }
05889 x1 = XEXP (x0, 0);
05890 goto L3266;
05891
05892 L66: ATTRIBUTE_UNUSED_LABEL
05893 x2 = XEXP (x1, 1);
05894 if (se_arith_operand (x2, DImode))
05895 {
05896 operands[2] = x2;
05897 goto L67;
05898 }
05899 x1 = XEXP (x0, 0);
05900 goto L3266;
05901
05902 L67: ATTRIBUTE_UNUSED_LABEL
05903 if ((TARGET_64BIT
05904 && !TARGET_MIPS16
05905 && (TARGET_GAS
05906 || GET_CODE (operands[2]) != CONST_INT
05907 || INTVAL (operands[2]) != -32768)))
05908 {
05909 return 10;
05910 }
05911 x1 = XEXP (x0, 0);
05912 goto L3266;
05913
05914 L70: ATTRIBUTE_UNUSED_LABEL
05915 x1 = XEXP (x0, 1);
05916 if (GET_MODE (x1) == DImode
05917 && GET_CODE (x1) == PLUS)
05918 goto L71;
05919 x1 = XEXP (x0, 0);
05920 goto L3267;
05921
05922 L71: ATTRIBUTE_UNUSED_LABEL
05923 x2 = XEXP (x1, 0);
05924 if (GET_MODE (x2) == DImode
05925 && GET_CODE (x2) == REG
05926 && XINT (x2, 0) == 29)
05927 goto L72;
05928 x1 = XEXP (x0, 0);
05929 goto L3267;
05930
05931 L72: ATTRIBUTE_UNUSED_LABEL
05932 x2 = XEXP (x1, 1);
05933 if (small_int (x2, DImode))
05934 {
05935 operands[0] = x2;
05936 goto L73;
05937 }
05938 x1 = XEXP (x0, 0);
05939 goto L3267;
05940
05941 L73: ATTRIBUTE_UNUSED_LABEL
05942 if ((TARGET_MIPS16 && TARGET_64BIT))
05943 {
05944 return 11;
05945 }
05946 x1 = XEXP (x0, 0);
05947 goto L3267;
05948
05949 L76: ATTRIBUTE_UNUSED_LABEL
05950 x1 = XEXP (x0, 1);
05951 if (GET_MODE (x1) == DImode)
05952 goto L3424;
05953 x1 = XEXP (x0, 0);
05954 goto L3270;
05955
05956 L3424: ATTRIBUTE_UNUSED_LABEL
05957 switch (GET_CODE (x1))
05958 {
05959 case PLUS:
05960 goto L77;
05961 case SIGN_EXTEND:
05962 goto L89;
05963 case MINUS:
05964 goto L157;
05965 default:
05966 break;
05967 }
05968 x1 = XEXP (x0, 0);
05969 goto L3270;
05970
05971 L77: ATTRIBUTE_UNUSED_LABEL
05972 x2 = XEXP (x1, 0);
05973 if (GET_MODE (x2) == DImode)
05974 goto L3427;
05975 x1 = XEXP (x0, 0);
05976 goto L3270;
05977
05978 L3427: ATTRIBUTE_UNUSED_LABEL
05979 if (GET_CODE (x2) == REG
05980 && XINT (x2, 0) == 29)
05981 goto L78;
05982 L3428: ATTRIBUTE_UNUSED_LABEL
05983 if (register_operand (x2, DImode))
05984 {
05985 operands[1] = x2;
05986 goto L84;
05987 }
05988 x1 = XEXP (x0, 0);
05989 goto L3270;
05990
05991 L78: ATTRIBUTE_UNUSED_LABEL
05992 x2 = XEXP (x1, 1);
05993 if (small_int (x2, DImode))
05994 {
05995 operands[1] = x2;
05996 goto L79;
05997 }
05998 x2 = XEXP (x1, 0);
05999 goto L3428;
06000
06001 L79: ATTRIBUTE_UNUSED_LABEL
06002 if ((TARGET_MIPS16 && TARGET_64BIT))
06003 {
06004 return 12;
06005 }
06006 x1 = XEXP (x0, 1);
06007 x2 = XEXP (x1, 0);
06008 goto L3428;
06009
06010 L84: ATTRIBUTE_UNUSED_LABEL
06011 x2 = XEXP (x1, 1);
06012 if (arith_operand (x2, DImode))
06013 {
06014 operands[2] = x2;
06015 goto L85;
06016 }
06017 x1 = XEXP (x0, 0);
06018 goto L3270;
06019
06020 L85: ATTRIBUTE_UNUSED_LABEL
06021 if ((TARGET_MIPS16 && TARGET_64BIT
06022 && (GET_CODE (operands[1]) != REG
06023 || REGNO (operands[1]) >= FIRST_PSEUDO_REGISTER
06024 || M16_REG_P (REGNO (operands[1]))
06025 || REGNO (operands[1]) == ARG_POINTER_REGNUM
06026 || REGNO (operands[1]) == FRAME_POINTER_REGNUM
06027 || REGNO (operands[1]) == STACK_POINTER_REGNUM)
06028 && (GET_CODE (operands[2]) != REG
06029 || REGNO (operands[2]) >= FIRST_PSEUDO_REGISTER
06030 || M16_REG_P (REGNO (operands[2]))
06031 || REGNO (operands[2]) == ARG_POINTER_REGNUM
06032 || REGNO (operands[2]) == FRAME_POINTER_REGNUM
06033 || REGNO (operands[2]) == STACK_POINTER_REGNUM)))
06034 {
06035 return 13;
06036 }
06037 x1 = XEXP (x0, 0);
06038 goto L3270;
06039
06040 L89: ATTRIBUTE_UNUSED_LABEL
06041 x2 = XEXP (x1, 0);
06042 if (GET_MODE (x2) == SImode
06043 && GET_CODE (x2) == PLUS)
06044 goto L90;
06045 x1 = XEXP (x0, 0);
06046 goto L3270;
06047
06048 L90: ATTRIBUTE_UNUSED_LABEL
06049 x3 = XEXP (x2, 0);
06050 if (reg_or_0_operand (x3, SImode))
06051 {
06052 operands[1] = x3;
06053 goto L91;
06054 }
06055 L97: ATTRIBUTE_UNUSED_LABEL
06056 if (register_operand (x3, SImode))
06057 {
06058 operands[1] = x3;
06059 goto L98;
06060 }
06061 x1 = XEXP (x0, 0);
06062 goto L3270;
06063
06064 L91: ATTRIBUTE_UNUSED_LABEL
06065 x3 = XEXP (x2, 1);
06066 if (arith_operand (x3, SImode))
06067 {
06068 operands[2] = x3;
06069 goto L92;
06070 }
06071 x3 = XEXP (x2, 0);
06072 goto L97;
06073
06074 L92: ATTRIBUTE_UNUSED_LABEL
06075 if ((TARGET_64BIT
06076 && !TARGET_MIPS16
06077 && (TARGET_GAS
06078 || GET_CODE (operands[2]) != CONST_INT
06079 || INTVAL (operands[2]) != -32768)))
06080 {
06081 return 14;
06082 }
06083 x1 = XEXP (x0, 1);
06084 x2 = XEXP (x1, 0);
06085 x3 = XEXP (x2, 0);
06086 goto L97;
06087
06088 L98: ATTRIBUTE_UNUSED_LABEL
06089 x3 = XEXP (x2, 1);
06090 if (arith_operand (x3, SImode))
06091 {
06092 operands[2] = x3;
06093 goto L99;
06094 }
06095 x1 = XEXP (x0, 0);
06096 goto L3270;
06097
06098 L99: ATTRIBUTE_UNUSED_LABEL
06099 if ((TARGET_MIPS16 && TARGET_64BIT))
06100 {
06101 return 15;
06102 }
06103 x1 = XEXP (x0, 0);
06104 goto L3270;
06105
06106 L157: ATTRIBUTE_UNUSED_LABEL
06107 x2 = XEXP (x1, 0);
06108 if (se_reg_or_0_operand (x2, DImode))
06109 {
06110 operands[1] = x2;
06111 goto L158;
06112 }
06113 x1 = XEXP (x0, 0);
06114 goto L3270;
06115
06116 L158: ATTRIBUTE_UNUSED_LABEL
06117 x2 = XEXP (x1, 1);
06118 if (se_arith_operand (x2, DImode))
06119 {
06120 operands[2] = x2;
06121 goto L159;
06122 }
06123 x1 = XEXP (x0, 0);
06124 goto L3270;
06125
06126 L159: ATTRIBUTE_UNUSED_LABEL
06127 if ((TARGET_64BIT && !TARGET_MIPS16
06128 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768)))
06129 {
06130 return 24;
06131 }
06132 x1 = XEXP (x0, 0);
06133 goto L3270;
06134
06135 L162: ATTRIBUTE_UNUSED_LABEL
06136 x1 = XEXP (x0, 1);
06137 if (GET_MODE (x1) == DImode
06138 && GET_CODE (x1) == MINUS)
06139 goto L163;
06140 x1 = XEXP (x0, 0);
06141 goto L3271;
06142
06143 L163: ATTRIBUTE_UNUSED_LABEL
06144 x2 = XEXP (x1, 0);
06145 if (GET_MODE (x2) == DImode
06146 && GET_CODE (x2) == REG
06147 && XINT (x2, 0) == 29)
06148 goto L164;
06149 x1 = XEXP (x0, 0);
06150 goto L3271;
06151
06152 L164: ATTRIBUTE_UNUSED_LABEL
06153 x2 = XEXP (x1, 1);
06154 if (small_int (x2, DImode))
06155 {
06156 operands[0] = x2;
06157 goto L165;
06158 }
06159 x1 = XEXP (x0, 0);
06160 goto L3271;
06161
06162 L165: ATTRIBUTE_UNUSED_LABEL
06163 if ((TARGET_MIPS16
06164 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768)))
06165 {
06166 return 25;
06167 }
06168 x1 = XEXP (x0, 0);
06169 goto L3271;
06170
06171 L168: ATTRIBUTE_UNUSED_LABEL
06172 x1 = XEXP (x0, 1);
06173 if (GET_MODE (x1) == DImode)
06174 goto L3429;
06175 x1 = XEXP (x0, 0);
06176 goto L3275;
06177
06178 L3429: ATTRIBUTE_UNUSED_LABEL
06179 tem = recog_4 (x0, insn, pnum_clobbers);
06180 if (tem >= 0)
06181 return tem;
06182 x1 = XEXP (x0, 0);
06183 goto L3275;
06184
06185 L1498: ATTRIBUTE_UNUSED_LABEL
06186 x1 = XEXP (x0, 1);
06187 if (GET_MODE (x1) == DImode
06188 && GET_CODE (x1) == REG
06189 && XINT (x1, 0) == 31
06190 && (TARGET_MIPS16 && TARGET_64BIT))
06191 {
06192 return 159;
06193 }
06194 x1 = XEXP (x0, 0);
06195 goto L3276;
06196
06197 L1513: ATTRIBUTE_UNUSED_LABEL
06198 x1 = XEXP (x0, 1);
06199 if (GET_MODE (x1) == DImode
06200 && GET_CODE (x1) == SIGN_EXTEND)
06201 goto L1514;
06202 if (general_operand (x1, DImode))
06203 {
06204 operands[1] = x1;
06205 goto L1502;
06206 }
06207 L1509: ATTRIBUTE_UNUSED_LABEL
06208 if (move_operand (x1, DImode))
06209 {
06210 operands[1] = x1;
06211 goto L1510;
06212 }
06213 L1518: ATTRIBUTE_UNUSED_LABEL
06214 if (movdi_operand (x1, DImode))
06215 {
06216 operands[1] = x1;
06217 goto L1519;
06218 }
06219 x1 = XEXP (x0, 0);
06220 goto L3289;
06221
06222 L1514: ATTRIBUTE_UNUSED_LABEL
06223 x2 = XEXP (x1, 0);
06224 if (move_operand (x2, SImode))
06225 {
06226 operands[1] = x2;
06227 goto L1515;
06228 }
06229 goto L1518;
06230
06231 L1515: ATTRIBUTE_UNUSED_LABEL
06232 if ((TARGET_64BIT && !TARGET_MIPS16
06233 && (register_operand (operands[0], DImode)
06234 || register_operand (operands[1], DImode)
06235 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0)
06236 || operands[1] == CONST0_RTX (DImode))))
06237 {
06238 return 163;
06239 }
06240 x1 = XEXP (x0, 1);
06241 goto L1518;
06242
06243 L1502: ATTRIBUTE_UNUSED_LABEL
06244 if ((!TARGET_64BIT && !TARGET_MIPS16
06245 && (register_operand (operands[0], DImode)
06246 || register_operand (operands[1], DImode)
06247 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0)
06248 || operands[1] == CONST0_RTX (DImode))))
06249 {
06250 return 160;
06251 }
06252 L1506: ATTRIBUTE_UNUSED_LABEL
06253 if ((!TARGET_64BIT && TARGET_MIPS16
06254 && (register_operand (operands[0], DImode)
06255 || register_operand (operands[1], DImode))))
06256 {
06257 return 161;
06258 }
06259 x1 = XEXP (x0, 1);
06260 goto L1509;
06261
06262 L1510: ATTRIBUTE_UNUSED_LABEL
06263 if ((TARGET_64BIT && !TARGET_MIPS16
06264 && (register_operand (operands[0], DImode)
06265 || register_operand (operands[1], DImode)
06266 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0)
06267 || operands[1] == CONST0_RTX (DImode))))
06268 {
06269 return 162;
06270 }
06271 x1 = XEXP (x0, 1);
06272 goto L1518;
06273
06274 L1519: ATTRIBUTE_UNUSED_LABEL
06275 if ((TARGET_64BIT && TARGET_MIPS16
06276 && (register_operand (operands[0], DImode)
06277 || se_register_operand (operands[1], DImode))))
06278 {
06279 return 164;
06280 }
06281 x1 = XEXP (x0, 0);
06282 goto L3289;
06283
06284 L2798: ATTRIBUTE_UNUSED_LABEL
06285 x1 = XEXP (x0, 1);
06286 if (address_operand (x1, DImode))
06287 {
06288 operands[1] = x1;
06289 goto L2799;
06290 }
06291 x1 = XEXP (x0, 0);
06292 goto L1916;
06293
06294 L2799: ATTRIBUTE_UNUSED_LABEL
06295 if ((Pmode == DImode))
06296 {
06297 return 341;
06298 }
06299 x1 = XEXP (x0, 0);
06300 goto L1916;
06301
06302 L3272: ATTRIBUTE_UNUSED_LABEL
06303 if (register_operand (x1, HImode))
06304 {
06305 operands[0] = x1;
06306 goto L1266;
06307 }
06308 L3282: ATTRIBUTE_UNUSED_LABEL
06309 if (nonimmediate_operand (x1, HImode))
06310 {
06311 operands[0] = x1;
06312 goto L1598;
06313 }
06314 goto L1916;
06315
06316 L1266: ATTRIBUTE_UNUSED_LABEL
06317 x1 = XEXP (x0, 1);
06318 if (GET_MODE (x1) == HImode)
06319 goto L3491;
06320 x1 = XEXP (x0, 0);
06321 goto L3282;
06322
06323 L3491: ATTRIBUTE_UNUSED_LABEL
06324 switch (GET_CODE (x1))
06325 {
06326 case TRUNCATE:
06327 goto L1267;
06328 case ZERO_EXTEND:
06329 goto L1310;
06330 case SIGN_EXTEND:
06331 goto L1386;
06332 default:
06333 break;
06334 }
06335 x1 = XEXP (x0, 0);
06336 goto L3282;
06337
06338 L1267: ATTRIBUTE_UNUSED_LABEL
06339 x2 = XEXP (x1, 0);
06340 if (se_register_operand (x2, DImode))
06341 {
06342 operands[1] = x2;
06343 goto L1268;
06344 }
06345 x1 = XEXP (x0, 0);
06346 goto L3282;
06347
06348 L1268: ATTRIBUTE_UNUSED_LABEL
06349 if ((TARGET_64BIT))
06350 {
06351 return 117;
06352 }
06353 x1 = XEXP (x0, 0);
06354 goto L3282;
06355
06356 L1310: ATTRIBUTE_UNUSED_LABEL
06357 x2 = XEXP (x1, 0);
06358 if (GET_MODE (x2) == QImode)
06359 goto L3494;
06360 x1 = XEXP (x0, 0);
06361 goto L3282;
06362
06363 L3494: ATTRIBUTE_UNUSED_LABEL
06364 if (GET_CODE (x2) == TRUNCATE)
06365 goto L1311;
06366 if (nonimmediate_operand (x2, QImode))
06367 {
06368 operands[1] = x2;
06369 goto L1342;
06370 }
06371 L3496: ATTRIBUTE_UNUSED_LABEL
06372 if (memory_operand (x2, QImode))
06373 {
06374 operands[1] = x2;
06375 goto L1347;
06376 }
06377 x1 = XEXP (x0, 0);
06378 goto L3282;
06379
06380 L1311: ATTRIBUTE_UNUSED_LABEL
06381 x3 = XEXP (x2, 0);
06382 if (se_register_operand (x3, DImode))
06383 {
06384 operands[1] = x3;
06385 goto L1312;
06386 }
06387 x1 = XEXP (x0, 0);
06388 goto L3282;
06389
06390 L1312: ATTRIBUTE_UNUSED_LABEL
06391 if ((TARGET_64BIT && !TARGET_MIPS16))
06392 {
06393 return 124;
06394 }
06395 x1 = XEXP (x0, 0);
06396 goto L3282;
06397
06398 L1342: ATTRIBUTE_UNUSED_LABEL
06399 if ((!TARGET_MIPS16))
06400 {
06401 return 130;
06402 }
06403 x1 = XEXP (x0, 1);
06404 x2 = XEXP (x1, 0);
06405 goto L3496;
06406
06407 L1347: ATTRIBUTE_UNUSED_LABEL
06408 if ((TARGET_MIPS16))
06409 {
06410 return 131;
06411 }
06412 x1 = XEXP (x0, 0);
06413 goto L3282;
06414
06415 L1386: ATTRIBUTE_UNUSED_LABEL
06416 x2 = XEXP (x1, 0);
06417 if (memory_operand (x2, QImode))
06418 {
06419 operands[1] = x2;
06420 return 139;
06421 }
06422 x1 = XEXP (x0, 0);
06423 goto L3282;
06424
06425 L1598: ATTRIBUTE_UNUSED_LABEL
06426 x1 = XEXP (x0, 1);
06427 if (general_operand (x1, HImode))
06428 {
06429 operands[1] = x1;
06430 goto L1599;
06431 }
06432 x1 = XEXP (x0, 0);
06433 goto L1916;
06434
06435 L1599: ATTRIBUTE_UNUSED_LABEL
06436 if ((!TARGET_MIPS16
06437 && (register_operand (operands[0], HImode)
06438 || register_operand (operands[1], HImode)
06439 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0))))
06440 {
06441 return 178;
06442 }
06443 L1603: ATTRIBUTE_UNUSED_LABEL
06444 if ((TARGET_MIPS16
06445 && (register_operand (operands[0], HImode)
06446 || register_operand (operands[1], HImode))))
06447 {
06448 return 179;
06449 }
06450 x1 = XEXP (x0, 0);
06451 goto L1916;
06452
06453 L3273: ATTRIBUTE_UNUSED_LABEL
06454 if (register_operand (x1, QImode))
06455 {
06456 operands[0] = x1;
06457 goto L1271;
06458 }
06459 L3283: ATTRIBUTE_UNUSED_LABEL
06460 if (nonimmediate_operand (x1, QImode))
06461 {
06462 operands[0] = x1;
06463 goto L1606;
06464 }
06465 goto L1916;
06466
06467 L1271: ATTRIBUTE_UNUSED_LABEL
06468 x1 = XEXP (x0, 1);
06469 if (GET_MODE (x1) == QImode
06470 && GET_CODE (x1) == TRUNCATE)
06471 goto L1272;
06472 x1 = XEXP (x0, 0);
06473 goto L3283;
06474
06475 L1272: ATTRIBUTE_UNUSED_LABEL
06476 x2 = XEXP (x1, 0);
06477 if (se_register_operand (x2, DImode))
06478 {
06479 operands[1] = x2;
06480 goto L1273;
06481 }
06482 x1 = XEXP (x0, 0);
06483 goto L3283;
06484
06485 L1273: ATTRIBUTE_UNUSED_LABEL
06486 if ((TARGET_64BIT))
06487 {
06488 return 118;
06489 }
06490 x1 = XEXP (x0, 0);
06491 goto L3283;
06492
06493 L1606: ATTRIBUTE_UNUSED_LABEL
06494 x1 = XEXP (x0, 1);
06495 if (general_operand (x1, QImode))
06496 {
06497 operands[1] = x1;
06498 goto L1607;
06499 }
06500 x1 = XEXP (x0, 0);
06501 goto L1916;
06502
06503 L1607: ATTRIBUTE_UNUSED_LABEL
06504 if ((!TARGET_MIPS16
06505 && (register_operand (operands[0], QImode)
06506 || register_operand (operands[1], QImode)
06507 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0))))
06508 {
06509 return 180;
06510 }
06511 L1611: ATTRIBUTE_UNUSED_LABEL
06512 if ((TARGET_MIPS16
06513 && (register_operand (operands[0], QImode)
06514 || register_operand (operands[1], QImode))))
06515 {
06516 return 181;
06517 }
06518 x1 = XEXP (x0, 0);
06519 goto L1916;
06520
06521 L3274: ATTRIBUTE_UNUSED_LABEL
06522 if (memory_operand (x1, BLKmode))
06523 {
06524 operands[0] = x1;
06525 goto L1474;
06526 }
06527 goto L1916;
06528
06529 L1474: ATTRIBUTE_UNUSED_LABEL
06530 x1 = XEXP (x0, 1);
06531 if (GET_MODE (x1) == BLKmode)
06532 goto L3497;
06533 x1 = XEXP (x0, 0);
06534 goto L1916;
06535
06536 L3497: ATTRIBUTE_UNUSED_LABEL
06537 if (GET_CODE (x1) == UNSPEC)
06538 goto L3499;
06539 x1 = XEXP (x0, 0);
06540 goto L1916;
06541
06542 L3499: ATTRIBUTE_UNUSED_LABEL
06543 if (XVECLEN (x1, 0) == 1)
06544 goto L3501;
06545 x1 = XEXP (x0, 0);
06546 goto L1916;
06547
06548 L3501: ATTRIBUTE_UNUSED_LABEL
06549 switch (XINT (x1, 1))
06550 {
06551 case 1LL:
06552 goto L1475;
06553 case 3LL:
06554 goto L1484;
06555 default:
06556 break;
06557 }
06558 x1 = XEXP (x0, 0);
06559 goto L1916;
06560
06561 L1475: ATTRIBUTE_UNUSED_LABEL
06562 x2 = XVECEXP (x1, 0, 0);
06563 if (reg_or_0_operand (x2, SImode))
06564 {
06565 operands[1] = x2;
06566 goto L1476;
06567 }
06568 x1 = XEXP (x0, 0);
06569 goto L1916;
06570
06571 L1476: ATTRIBUTE_UNUSED_LABEL
06572 if ((!TARGET_MIPS16))
06573 {
06574 return 154;
06575 }
06576 x1 = XEXP (x0, 0);
06577 goto L1916;
06578
06579 L1484: ATTRIBUTE_UNUSED_LABEL
06580 x2 = XVECEXP (x1, 0, 0);
06581 if (reg_or_0_operand (x2, DImode))
06582 {
06583 operands[1] = x2;
06584 return 156;
06585 }
06586 x1 = XEXP (x0, 0);
06587 goto L1916;
06588
06589 L3279: ATTRIBUTE_UNUSED_LABEL
06590 if (nonimmediate_operand (x1, CCmode))
06591 {
06592 operands[0] = x1;
06593 goto L1538;
06594 }
06595 L3287: ATTRIBUTE_UNUSED_LABEL
06596 if (register_operand (x1, CCmode))
06597 {
06598 operands[0] = x1;
06599 goto L2204;
06600 }
06601 goto L1916;
06602
06603 L1538: ATTRIBUTE_UNUSED_LABEL
06604 x1 = XEXP (x0, 1);
06605 if (general_operand (x1, CCmode))
06606 {
06607 operands[1] = x1;
06608 goto L1539;
06609 }
06610 x1 = XEXP (x0, 0);
06611 goto L3287;
06612
06613 L1539: ATTRIBUTE_UNUSED_LABEL
06614 if ((ISA_HAS_8CC && TARGET_HARD_FLOAT))
06615 {
06616 return 169;
06617 }
06618 x1 = XEXP (x0, 0);
06619 goto L3287;
06620
06621 L2204: ATTRIBUTE_UNUSED_LABEL
06622 x1 = XEXP (x0, 1);
06623 if (GET_MODE (x1) == CCmode)
06624 goto L3503;
06625 x1 = XEXP (x0, 0);
06626 goto L1916;
06627
06628 L3503: ATTRIBUTE_UNUSED_LABEL
06629 switch (GET_CODE (x1))
06630 {
06631 case UNORDERED:
06632 goto L2205;
06633 case UNLT:
06634 goto L2211;
06635 case UNEQ:
06636 goto L2217;
06637 case UNLE:
06638 goto L2223;
06639 case EQ:
06640 goto L2229;
06641 case LT:
06642 goto L2235;
06643 case LE:
06644 goto L2241;
06645 case GT:
06646 goto L2247;
06647 case GE:
06648 goto L2253;
06649 default:
06650 break;
06651 }
06652 x1 = XEXP (x0, 0);
06653 goto L1916;
06654
06655 L2205: ATTRIBUTE_UNUSED_LABEL
06656 x2 = XEXP (x1, 0);
06657 switch (GET_MODE (x2))
06658 {
06659 case DFmode:
06660 goto L3512;
06661 case SFmode:
06662 goto L3513;
06663 default:
06664 break;
06665 }
06666 x1 = XEXP (x0, 0);
06667 goto L1916;
06668
06669 L3512: ATTRIBUTE_UNUSED_LABEL
06670 if (register_operand (x2, DFmode))
06671 {
06672 operands[1] = x2;
06673 goto L2206;
06674 }
06675 x1 = XEXP (x0, 0);
06676 goto L1916;
06677
06678 L2206: ATTRIBUTE_UNUSED_LABEL
06679 x2 = XEXP (x1, 1);
06680 if (register_operand (x2, DFmode))
06681 {
06682 operands[2] = x2;
06683 goto L2207;
06684 }
06685 x1 = XEXP (x0, 0);
06686 goto L1916;
06687
06688 L2207: ATTRIBUTE_UNUSED_LABEL
06689 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
06690 {
06691 return 261;
06692 }
06693 x1 = XEXP (x0, 0);
06694 goto L1916;
06695
06696 L3513: ATTRIBUTE_UNUSED_LABEL
06697 if (register_operand (x2, SFmode))
06698 {
06699 operands[1] = x2;
06700 goto L2260;
06701 }
06702 x1 = XEXP (x0, 0);
06703 goto L1916;
06704
06705 L2260: ATTRIBUTE_UNUSED_LABEL
06706 x2 = XEXP (x1, 1);
06707 if (register_operand (x2, SFmode))
06708 {
06709 operands[2] = x2;
06710 goto L2261;
06711 }
06712 x1 = XEXP (x0, 0);
06713 goto L1916;
06714
06715 L2261: ATTRIBUTE_UNUSED_LABEL
06716 if ((TARGET_HARD_FLOAT))
06717 {
06718 return 270;
06719 }
06720 x1 = XEXP (x0, 0);
06721 goto L1916;
06722
06723 L2211: ATTRIBUTE_UNUSED_LABEL
06724 x2 = XEXP (x1, 0);
06725 switch (GET_MODE (x2))
06726 {
06727 case DFmode:
06728 goto L3514;
06729 case SFmode:
06730 goto L3515;
06731 default:
06732 break;
06733 }
06734 x1 = XEXP (x0, 0);
06735 goto L1916;
06736
06737 L3514: ATTRIBUTE_UNUSED_LABEL
06738 if (register_operand (x2, DFmode))
06739 {
06740 operands[1] = x2;
06741 goto L2212;
06742 }
06743 x1 = XEXP (x0, 0);
06744 goto L1916;
06745
06746 L2212: ATTRIBUTE_UNUSED_LABEL
06747 x2 = XEXP (x1, 1);
06748 if (register_operand (x2, DFmode))
06749 {
06750 operands[2] = x2;
06751 goto L2213;
06752 }
06753 x1 = XEXP (x0, 0);
06754 goto L1916;
06755
06756 L2213: ATTRIBUTE_UNUSED_LABEL
06757 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
06758 {
06759 return 262;
06760 }
06761 x1 = XEXP (x0, 0);
06762 goto L1916;
06763
06764 L3515: ATTRIBUTE_UNUSED_LABEL
06765 if (register_operand (x2, SFmode))
06766 {
06767 operands[1] = x2;
06768 goto L2266;
06769 }
06770 x1 = XEXP (x0, 0);
06771 goto L1916;
06772
06773 L2266: ATTRIBUTE_UNUSED_LABEL
06774 x2 = XEXP (x1, 1);
06775 if (register_operand (x2, SFmode))
06776 {
06777 operands[2] = x2;
06778 goto L2267;
06779 }
06780 x1 = XEXP (x0, 0);
06781 goto L1916;
06782
06783 L2267: ATTRIBUTE_UNUSED_LABEL
06784 if ((TARGET_HARD_FLOAT))
06785 {
06786 return 271;
06787 }
06788 x1 = XEXP (x0, 0);
06789 goto L1916;
06790
06791 L2217: ATTRIBUTE_UNUSED_LABEL
06792 x2 = XEXP (x1, 0);
06793 switch (GET_MODE (x2))
06794 {
06795 case DFmode:
06796 goto L3516;
06797 case SFmode:
06798 goto L3517;
06799 default:
06800 break;
06801 }
06802 x1 = XEXP (x0, 0);
06803 goto L1916;
06804
06805 L3516: ATTRIBUTE_UNUSED_LABEL
06806 if (register_operand (x2, DFmode))
06807 {
06808 operands[1] = x2;
06809 goto L2218;
06810 }
06811 x1 = XEXP (x0, 0);
06812 goto L1916;
06813
06814 L2218: ATTRIBUTE_UNUSED_LABEL
06815 x2 = XEXP (x1, 1);
06816 if (register_operand (x2, DFmode))
06817 {
06818 operands[2] = x2;
06819 goto L2219;
06820 }
06821 x1 = XEXP (x0, 0);
06822 goto L1916;
06823
06824 L2219: ATTRIBUTE_UNUSED_LABEL
06825 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
06826 {
06827 return 263;
06828 }
06829 x1 = XEXP (x0, 0);
06830 goto L1916;
06831
06832 L3517: ATTRIBUTE_UNUSED_LABEL
06833 if (register_operand (x2, SFmode))
06834 {
06835 operands[1] = x2;
06836 goto L2272;
06837 }
06838 x1 = XEXP (x0, 0);
06839 goto L1916;
06840
06841 L2272: ATTRIBUTE_UNUSED_LABEL
06842 x2 = XEXP (x1, 1);
06843 if (register_operand (x2, SFmode))
06844 {
06845 operands[2] = x2;
06846 goto L2273;
06847 }
06848 x1 = XEXP (x0, 0);
06849 goto L1916;
06850
06851 L2273: ATTRIBUTE_UNUSED_LABEL
06852 if ((TARGET_HARD_FLOAT))
06853 {
06854 return 272;
06855 }
06856 x1 = XEXP (x0, 0);
06857 goto L1916;
06858
06859 L2223: ATTRIBUTE_UNUSED_LABEL
06860 x2 = XEXP (x1, 0);
06861 switch (GET_MODE (x2))
06862 {
06863 case DFmode:
06864 goto L3518;
06865 case SFmode:
06866 goto L3519;
06867 default:
06868 break;
06869 }
06870 x1 = XEXP (x0, 0);
06871 goto L1916;
06872
06873 L3518: ATTRIBUTE_UNUSED_LABEL
06874 if (register_operand (x2, DFmode))
06875 {
06876 operands[1] = x2;
06877 goto L2224;
06878 }
06879 x1 = XEXP (x0, 0);
06880 goto L1916;
06881
06882 L2224: ATTRIBUTE_UNUSED_LABEL
06883 x2 = XEXP (x1, 1);
06884 if (register_operand (x2, DFmode))
06885 {
06886 operands[2] = x2;
06887 goto L2225;
06888 }
06889 x1 = XEXP (x0, 0);
06890 goto L1916;
06891
06892 L2225: ATTRIBUTE_UNUSED_LABEL
06893 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
06894 {
06895 return 264;
06896 }
06897 x1 = XEXP (x0, 0);
06898 goto L1916;
06899
06900 L3519: ATTRIBUTE_UNUSED_LABEL
06901 if (register_operand (x2, SFmode))
06902 {
06903 operands[1] = x2;
06904 goto L2278;
06905 }
06906 x1 = XEXP (x0, 0);
06907 goto L1916;
06908
06909 L2278: ATTRIBUTE_UNUSED_LABEL
06910 x2 = XEXP (x1, 1);
06911 if (register_operand (x2, SFmode))
06912 {
06913 operands[2] = x2;
06914 goto L2279;
06915 }
06916 x1 = XEXP (x0, 0);
06917 goto L1916;
06918
06919 L2279: ATTRIBUTE_UNUSED_LABEL
06920 if ((TARGET_HARD_FLOAT))
06921 {
06922 return 273;
06923 }
06924 x1 = XEXP (x0, 0);
06925 goto L1916;
06926
06927 L2229: ATTRIBUTE_UNUSED_LABEL
06928 x2 = XEXP (x1, 0);
06929 switch (GET_MODE (x2))
06930 {
06931 case DFmode:
06932 goto L3520;
06933 case SFmode:
06934 goto L3521;
06935 default:
06936 break;
06937 }
06938 x1 = XEXP (x0, 0);
06939 goto L1916;
06940
06941 L3520: ATTRIBUTE_UNUSED_LABEL
06942 if (register_operand (x2, DFmode))
06943 {
06944 operands[1] = x2;
06945 goto L2230;
06946 }
06947 x1 = XEXP (x0, 0);
06948 goto L1916;
06949
06950 L2230: ATTRIBUTE_UNUSED_LABEL
06951 x2 = XEXP (x1, 1);
06952 if (register_operand (x2, DFmode))
06953 {
06954 operands[2] = x2;
06955 goto L2231;
06956 }
06957 x1 = XEXP (x0, 0);
06958 goto L1916;
06959
06960 L2231: ATTRIBUTE_UNUSED_LABEL
06961 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
06962 {
06963 return 265;
06964 }
06965 x1 = XEXP (x0, 0);
06966 goto L1916;
06967
06968 L3521: ATTRIBUTE_UNUSED_LABEL
06969 if (register_operand (x2, SFmode))
06970 {
06971 operands[1] = x2;
06972 goto L2284;
06973 }
06974 x1 = XEXP (x0, 0);
06975 goto L1916;
06976
06977 L2284: ATTRIBUTE_UNUSED_LABEL
06978 x2 = XEXP (x1, 1);
06979 if (register_operand (x2, SFmode))
06980 {
06981 operands[2] = x2;
06982 goto L2285;
06983 }
06984 x1 = XEXP (x0, 0);
06985 goto L1916;
06986
06987 L2285: ATTRIBUTE_UNUSED_LABEL
06988 if ((TARGET_HARD_FLOAT))
06989 {
06990 return 274;
06991 }
06992 x1 = XEXP (x0, 0);
06993 goto L1916;
06994
06995 L2235: ATTRIBUTE_UNUSED_LABEL
06996 x2 = XEXP (x1, 0);
06997 switch (GET_MODE (x2))
06998 {
06999 case DFmode:
07000 goto L3522;
07001 case SFmode:
07002 goto L3523;
07003 default:
07004 break;
07005 }
07006 x1 = XEXP (x0, 0);
07007 goto L1916;
07008
07009 L3522: ATTRIBUTE_UNUSED_LABEL
07010 if (register_operand (x2, DFmode))
07011 {
07012 operands[1] = x2;
07013 goto L2236;
07014 }
07015 x1 = XEXP (x0, 0);
07016 goto L1916;
07017
07018 L2236: ATTRIBUTE_UNUSED_LABEL
07019 x2 = XEXP (x1, 1);
07020 if (register_operand (x2, DFmode))
07021 {
07022 operands[2] = x2;
07023 goto L2237;
07024 }
07025 x1 = XEXP (x0, 0);
07026 goto L1916;
07027
07028 L2237: ATTRIBUTE_UNUSED_LABEL
07029 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
07030 {
07031 return 266;
07032 }
07033 x1 = XEXP (x0, 0);
07034 goto L1916;
07035
07036 L3523: ATTRIBUTE_UNUSED_LABEL
07037 if (register_operand (x2, SFmode))
07038 {
07039 operands[1] = x2;
07040 goto L2290;
07041 }
07042 x1 = XEXP (x0, 0);
07043 goto L1916;
07044
07045 L2290: ATTRIBUTE_UNUSED_LABEL
07046 x2 = XEXP (x1, 1);
07047 if (register_operand (x2, SFmode))
07048 {
07049 operands[2] = x2;
07050 goto L2291;
07051 }
07052 x1 = XEXP (x0, 0);
07053 goto L1916;
07054
07055 L2291: ATTRIBUTE_UNUSED_LABEL
07056 if ((TARGET_HARD_FLOAT))
07057 {
07058 return 275;
07059 }
07060 x1 = XEXP (x0, 0);
07061 goto L1916;
07062
07063 L2241: ATTRIBUTE_UNUSED_LABEL
07064 x2 = XEXP (x1, 0);
07065 switch (GET_MODE (x2))
07066 {
07067 case DFmode:
07068 goto L3524;
07069 case SFmode:
07070 goto L3525;
07071 default:
07072 break;
07073 }
07074 x1 = XEXP (x0, 0);
07075 goto L1916;
07076
07077 L3524: ATTRIBUTE_UNUSED_LABEL
07078 if (register_operand (x2, DFmode))
07079 {
07080 operands[1] = x2;
07081 goto L2242;
07082 }
07083 x1 = XEXP (x0, 0);
07084 goto L1916;
07085
07086 L2242: ATTRIBUTE_UNUSED_LABEL
07087 x2 = XEXP (x1, 1);
07088 if (register_operand (x2, DFmode))
07089 {
07090 operands[2] = x2;
07091 goto L2243;
07092 }
07093 x1 = XEXP (x0, 0);
07094 goto L1916;
07095
07096 L2243: ATTRIBUTE_UNUSED_LABEL
07097 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
07098 {
07099 return 267;
07100 }
07101 x1 = XEXP (x0, 0);
07102 goto L1916;
07103
07104 L3525: ATTRIBUTE_UNUSED_LABEL
07105 if (register_operand (x2, SFmode))
07106 {
07107 operands[1] = x2;
07108 goto L2296;
07109 }
07110 x1 = XEXP (x0, 0);
07111 goto L1916;
07112
07113 L2296: ATTRIBUTE_UNUSED_LABEL
07114 x2 = XEXP (x1, 1);
07115 if (register_operand (x2, SFmode))
07116 {
07117 operands[2] = x2;
07118 goto L2297;
07119 }
07120 x1 = XEXP (x0, 0);
07121 goto L1916;
07122
07123 L2297: ATTRIBUTE_UNUSED_LABEL
07124 if ((TARGET_HARD_FLOAT))
07125 {
07126 return 276;
07127 }
07128 x1 = XEXP (x0, 0);
07129 goto L1916;
07130
07131 L2247: ATTRIBUTE_UNUSED_LABEL
07132 x2 = XEXP (x1, 0);
07133 switch (GET_MODE (x2))
07134 {
07135 case DFmode:
07136 goto L3526;
07137 case SFmode:
07138 goto L3527;
07139 default:
07140 break;
07141 }
07142 x1 = XEXP (x0, 0);
07143 goto L1916;
07144
07145 L3526: ATTRIBUTE_UNUSED_LABEL
07146 if (register_operand (x2, DFmode))
07147 {
07148 operands[1] = x2;
07149 goto L2248;
07150 }
07151 x1 = XEXP (x0, 0);
07152 goto L1916;
07153
07154 L2248: ATTRIBUTE_UNUSED_LABEL
07155 x2 = XEXP (x1, 1);
07156 if (register_operand (x2, DFmode))
07157 {
07158 operands[2] = x2;
07159 goto L2249;
07160 }
07161 x1 = XEXP (x0, 0);
07162 goto L1916;
07163
07164 L2249: ATTRIBUTE_UNUSED_LABEL
07165 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
07166 {
07167 return 268;
07168 }
07169 x1 = XEXP (x0, 0);
07170 goto L1916;
07171
07172 L3527: ATTRIBUTE_UNUSED_LABEL
07173 if (register_operand (x2, SFmode))
07174 {
07175 operands[1] = x2;
07176 goto L2302;
07177 }
07178 x1 = XEXP (x0, 0);
07179 goto L1916;
07180
07181 L2302: ATTRIBUTE_UNUSED_LABEL
07182 x2 = XEXP (x1, 1);
07183 if (register_operand (x2, SFmode))
07184 {
07185 operands[2] = x2;
07186 goto L2303;
07187 }
07188 x1 = XEXP (x0, 0);
07189 goto L1916;
07190
07191 L2303: ATTRIBUTE_UNUSED_LABEL
07192 if ((TARGET_HARD_FLOAT))
07193 {
07194 return 277;
07195 }
07196 x1 = XEXP (x0, 0);
07197 goto L1916;
07198
07199 L2253: ATTRIBUTE_UNUSED_LABEL
07200 x2 = XEXP (x1, 0);
07201 switch (GET_MODE (x2))
07202 {
07203 case DFmode:
07204 goto L3528;
07205 case SFmode:
07206 goto L3529;
07207 default:
07208 break;
07209 }
07210 x1 = XEXP (x0, 0);
07211 goto L1916;
07212
07213 L3528: ATTRIBUTE_UNUSED_LABEL
07214 if (register_operand (x2, DFmode))
07215 {
07216 operands[1] = x2;
07217 goto L2254;
07218 }
07219 x1 = XEXP (x0, 0);
07220 goto L1916;
07221
07222 L2254: ATTRIBUTE_UNUSED_LABEL
07223 x2 = XEXP (x1, 1);
07224 if (register_operand (x2, DFmode))
07225 {
07226 operands[2] = x2;
07227 goto L2255;
07228 }
07229 x1 = XEXP (x0, 0);
07230 goto L1916;
07231
07232 L2255: ATTRIBUTE_UNUSED_LABEL
07233 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT))
07234 {
07235 return 269;
07236 }
07237 x1 = XEXP (x0, 0);
07238 goto L1916;
07239
07240 L3529: ATTRIBUTE_UNUSED_LABEL
07241 if (register_operand (x2, SFmode))
07242 {
07243 operands[1] = x2;
07244 goto L2308;
07245 }
07246 x1 = XEXP (x0, 0);
07247 goto L1916;
07248
07249 L2308: ATTRIBUTE_UNUSED_LABEL
07250 x2 = XEXP (x1, 1);
07251 if (register_operand (x2, SFmode))
07252 {
07253 operands[2] = x2;
07254 goto L2309;
07255 }
07256 x1 = XEXP (x0, 0);
07257 goto L1916;
07258
07259 L2309: ATTRIBUTE_UNUSED_LABEL
07260 if ((TARGET_HARD_FLOAT))
07261 {
07262 return 278;
07263 }
07264 x1 = XEXP (x0, 0);
07265 goto L1916;
07266
07267 L2322: ATTRIBUTE_UNUSED_LABEL
07268 x1 = XEXP (x0, 1);
07269 switch (GET_MODE (x1))
07270 {
07271 case SImode:
07272 goto L3530;
07273 case DImode:
07274 goto L3531;
07275 default:
07276 break;
07277 }
07278 L1917: ATTRIBUTE_UNUSED_LABEL
07279 switch (GET_CODE (x1))
07280 {
07281 case IF_THEN_ELSE:
07282 goto L1918;
07283 case LABEL_REF:
07284 goto L2313;
07285 default:
07286 break;
07287 }
07288 goto ret0;
07289
07290 L3530: ATTRIBUTE_UNUSED_LABEL
07291 if (register_operand (x1, SImode))
07292 {
07293 operands[0] = x1;
07294 goto L2323;
07295 }
07296 goto L1917;
07297
07298 L2323: ATTRIBUTE_UNUSED_LABEL
07299 if ((!(Pmode == DImode)))
07300 {
07301 return 281;
07302 }
07303 x1 = XEXP (x0, 1);
07304 goto L1917;
07305
07306 L3531: ATTRIBUTE_UNUSED_LABEL
07307 if (se_register_operand (x1, DImode))
07308 {
07309 operands[0] = x1;
07310 goto L2327;
07311 }
07312 goto L1917;
07313
07314 L2327: ATTRIBUTE_UNUSED_LABEL
07315 if ((Pmode == DImode))
07316 {
07317 return 282;
07318 }
07319 x1 = XEXP (x0, 1);
07320 goto L1917;
07321
07322 L1918: ATTRIBUTE_UNUSED_LABEL
07323 x2 = XEXP (x1, 0);
07324 switch (GET_MODE (x2))
07325 {
07326 case CCmode:
07327 goto L3532;
07328 case SImode:
07329 goto L3533;
07330 case DImode:
07331 goto L3534;
07332 default:
07333 break;
07334 }
07335 goto ret0;
07336
07337 L3532: ATTRIBUTE_UNUSED_LABEL
07338 if (cmp_op (x2, CCmode))
07339 {
07340 operands[0] = x2;
07341 goto L1919;
07342 }
07343 goto ret0;
07344
07345 L1919: ATTRIBUTE_UNUSED_LABEL
07346 x3 = XEXP (x2, 0);
07347 if (register_operand (x3, CCmode))
07348 {
07349 operands[2] = x3;
07350 goto L1920;
07351 }
07352 goto ret0;
07353
07354 L1920: ATTRIBUTE_UNUSED_LABEL
07355 x3 = XEXP (x2, 1);
07356 if (GET_CODE (x3) == CONST_INT
07357 && XWINT (x3, 0) == 0LL)
07358 goto L1921;
07359 goto ret0;
07360
07361 L1921: ATTRIBUTE_UNUSED_LABEL
07362 x2 = XEXP (x1, 1);
07363 switch (GET_CODE (x2))
07364 {
07365 case LABEL_REF:
07366 goto L1922;
07367 case PC:
07368 goto L1931;
07369 default:
07370 break;
07371 }
07372 goto ret0;
07373
07374 L1922: ATTRIBUTE_UNUSED_LABEL
07375 x3 = XEXP (x2, 0);
07376 operands[1] = x3;
07377 goto L1923;
07378
07379 L1923: ATTRIBUTE_UNUSED_LABEL
07380 x2 = XEXP (x1, 2);
07381 if (GET_CODE (x2) == PC
07382 && (TARGET_HARD_FLOAT))
07383 {
07384 return 219;
07385 }
07386 goto ret0;
07387
07388 L1931: ATTRIBUTE_UNUSED_LABEL
07389 x2 = XEXP (x1, 2);
07390 if (GET_CODE (x2) == LABEL_REF)
07391 goto L1932;
07392 goto ret0;
07393
07394 L1932: ATTRIBUTE_UNUSED_LABEL
07395 x3 = XEXP (x2, 0);
07396 operands[1] = x3;
07397 goto L1933;
07398
07399 L1933: ATTRIBUTE_UNUSED_LABEL
07400 if ((TARGET_HARD_FLOAT))
07401 {
07402 return 220;
07403 }
07404 goto ret0;
07405
07406 L3533: ATTRIBUTE_UNUSED_LABEL
07407 if (cmp_op (x2, SImode))
07408 {
07409 operands[0] = x2;
07410 goto L1938;
07411 }
07412 L3535: ATTRIBUTE_UNUSED_LABEL
07413 if (equality_op (x2, SImode))
07414 {
07415 operands[0] = x2;
07416 goto L1976;
07417 }
07418 goto ret0;
07419
07420 L1938: ATTRIBUTE_UNUSED_LABEL
07421 x3 = XEXP (x2, 0);
07422 if (register_operand (x3, SImode))
07423 {
07424 operands[2] = x3;
07425 goto L1939;
07426 }
07427 goto L3535;
07428
07429 L1939: ATTRIBUTE_UNUSED_LABEL
07430 x3 = XEXP (x2, 1);
07431 if (GET_CODE (x3) == CONST_INT
07432 && XWINT (x3, 0) == 0LL)
07433 goto L1940;
07434 goto L3535;
07435
07436 L1940: ATTRIBUTE_UNUSED_LABEL
07437 x2 = XEXP (x1, 1);
07438 switch (GET_CODE (x2))
07439 {
07440 case LABEL_REF:
07441 goto L1941;
07442 case PC:
07443 goto L1950;
07444 default:
07445 break;
07446 }
07447 x2 = XEXP (x1, 0);
07448 goto L3535;
07449
07450 L1941: ATTRIBUTE_UNUSED_LABEL
07451 x3 = XEXP (x2, 0);
07452 operands[1] = x3;
07453 goto L1942;
07454
07455 L1942: ATTRIBUTE_UNUSED_LABEL
07456 x2 = XEXP (x1, 2);
07457 if (GET_CODE (x2) == PC
07458 && (!TARGET_MIPS16))
07459 {
07460 return 221;
07461 }
07462 x2 = XEXP (x1, 0);
07463 goto L3535;
07464
07465 L1950: ATTRIBUTE_UNUSED_LABEL
07466 x2 = XEXP (x1, 2);
07467 if (GET_CODE (x2) == LABEL_REF)
07468 goto L1951;
07469 x2 = XEXP (x1, 0);
07470 goto L3535;
07471
07472 L1951: ATTRIBUTE_UNUSED_LABEL
07473 x3 = XEXP (x2, 0);
07474 operands[1] = x3;
07475 goto L1952;
07476
07477 L1952: ATTRIBUTE_UNUSED_LABEL
07478 if ((!TARGET_MIPS16))
07479 {
07480 return 222;
07481 }
07482 x1 = XEXP (x0, 1);
07483 x2 = XEXP (x1, 0);
07484 goto L3535;
07485
07486 L1976: ATTRIBUTE_UNUSED_LABEL
07487 x3 = XEXP (x2, 0);
07488 if (GET_MODE (x3) == SImode)
07489 goto L3537;
07490 goto ret0;
07491
07492 L3537: ATTRIBUTE_UNUSED_LABEL
07493 if (register_operand (x3, SImode))
07494 {
07495 operands[2] = x3;
07496 goto L1977;
07497 }
07498 L3538: ATTRIBUTE_UNUSED_LABEL
07499 if (register_operand (x3, SImode))
07500 {
07501 operands[1] = x3;
07502 goto L2015;
07503 }
07504 goto ret0;
07505
07506 L1977: ATTRIBUTE_UNUSED_LABEL
07507 x3 = XEXP (x2, 1);
07508 if (register_operand (x3, SImode))
07509 {
07510 operands[3] = x3;
07511 goto L1978;
07512 }
07513 x3 = XEXP (x2, 0);
07514 goto L3538;
07515
07516 L1978: ATTRIBUTE_UNUSED_LABEL
07517 x2 = XEXP (x1, 1);
07518 switch (GET_CODE (x2))
07519 {
07520 case LABEL_REF:
07521 goto L1979;
07522 case PC:
07523 goto L1997;
07524 default:
07525 break;
07526 }
07527 x2 = XEXP (x1, 0);
07528 x3 = XEXP (x2, 0);
07529 goto L3538;
07530
07531 L1979: ATTRIBUTE_UNUSED_LABEL
07532 x3 = XEXP (x2, 0);
07533 operands[1] = x3;
07534 goto L1980;
07535
07536 L1980: ATTRIBUTE_UNUSED_LABEL
07537 x2 = XEXP (x1, 2);
07538 if (GET_CODE (x2) == PC
07539 && (!TARGET_MIPS16))
07540 {
07541 return 225;
07542 }
07543 x2 = XEXP (x1, 0);
07544 x3 = XEXP (x2, 0);
07545 goto L3538;
07546
07547 L1997: ATTRIBUTE_UNUSED_LABEL
07548 x2 = XEXP (x1, 2);
07549 if (GET_CODE (x2) == LABEL_REF)
07550 goto L1998;
07551 x2 = XEXP (x1, 0);
07552 x3 = XEXP (x2, 0);
07553 goto L3538;
07554
07555 L1998: ATTRIBUTE_UNUSED_LABEL
07556 x3 = XEXP (x2, 0);
07557 operands[1] = x3;
07558 goto L1999;
07559
07560 L1999: ATTRIBUTE_UNUSED_LABEL
07561 if ((!TARGET_MIPS16))
07562 {
07563 return 227;
07564 }
07565 x1 = XEXP (x0, 1);
07566 x2 = XEXP (x1, 0);
07567 x3 = XEXP (x2, 0);
07568 goto L3538;
07569
07570 L2015: ATTRIBUTE_UNUSED_LABEL
07571 x3 = XEXP (x2, 1);
07572 if (GET_CODE (x3) == CONST_INT
07573 && XWINT (x3, 0) == 0LL)
07574 goto L2016;
07575 goto ret0;
07576
07577 L2016: ATTRIBUTE_UNUSED_LABEL
07578 x2 = XEXP (x1, 1);
07579 if (pc_or_label_operand (x2, VOIDmode))
07580 {
07581 operands[2] = x2;
07582 goto L2017;
07583 }
07584 goto ret0;
07585
07586 L2017: ATTRIBUTE_UNUSED_LABEL
07587 x2 = XEXP (x1, 2);
07588 if (pc_or_label_operand (x2, VOIDmode))
07589 {
07590 operands[3] = x2;
07591 goto L2018;
07592 }
07593 goto ret0;
07594
07595 L2018: ATTRIBUTE_UNUSED_LABEL
07596 if ((TARGET_MIPS16))
07597 {
07598 return 229;
07599 }
07600 goto ret0;
07601
07602 L3534: ATTRIBUTE_UNUSED_LABEL
07603 if (cmp_op (x2, DImode))
07604 {
07605 operands[0] = x2;
07606 goto L1957;
07607 }
07608 L3536: ATTRIBUTE_UNUSED_LABEL
07609 if (equality_op (x2, DImode))
07610 {
07611 operands[0] = x2;
07612 goto L1985;
07613 }
07614 goto ret0;
07615
07616 L1957: ATTRIBUTE_UNUSED_LABEL
07617 x3 = XEXP (x2, 0);
07618 if (se_register_operand (x3, DImode))
07619 {
07620 operands[2] = x3;
07621 goto L1958;
07622 }
07623 goto L3536;
07624
07625 L1958: ATTRIBUTE_UNUSED_LABEL
07626 x3 = XEXP (x2, 1);
07627 if (GET_CODE (x3) == CONST_INT
07628 && XWINT (x3, 0) == 0LL)
07629 goto L1959;
07630 goto L3536;
07631
07632 L1959: ATTRIBUTE_UNUSED_LABEL
07633 x2 = XEXP (x1, 1);
07634 switch (GET_CODE (x2))
07635 {
07636 case LABEL_REF:
07637 goto L1960;
07638 case PC:
07639 goto L1969;
07640 default:
07641 break;
07642 }
07643 x2 = XEXP (x1, 0);
07644 goto L3536;
07645
07646 L1960: ATTRIBUTE_UNUSED_LABEL
07647 x3 = XEXP (x2, 0);
07648 operands[1] = x3;
07649 goto L1961;
07650
07651 L1961: ATTRIBUTE_UNUSED_LABEL
07652 x2 = XEXP (x1, 2);
07653 if (GET_CODE (x2) == PC
07654 && (!TARGET_MIPS16))
07655 {
07656 return 223;
07657 }
07658 x2 = XEXP (x1, 0);
07659 goto L3536;
07660
07661 L1969: ATTRIBUTE_UNUSED_LABEL
07662 x2 = XEXP (x1, 2);
07663 if (GET_CODE (x2) == LABEL_REF)
07664 goto L1970;
07665 x2 = XEXP (x1, 0);
07666 goto L3536;
07667
07668 L1970: ATTRIBUTE_UNUSED_LABEL
07669 x3 = XEXP (x2, 0);
07670 operands[1] = x3;
07671 goto L1971;
07672
07673 L1971: ATTRIBUTE_UNUSED_LABEL
07674 if ((!TARGET_MIPS16))
07675 {
07676 return 224;
07677 }
07678 x1 = XEXP (x0, 1);
07679 x2 = XEXP (x1, 0);
07680 goto L3536;
07681
07682 L1985: ATTRIBUTE_UNUSED_LABEL
07683 x3 = XEXP (x2, 0);
07684 if (GET_MODE (x3) == DImode)
07685 goto L3539;
07686 goto ret0;
07687
07688 L3539: ATTRIBUTE_UNUSED_LABEL
07689 if (se_register_operand (x3, DImode))
07690 {
07691 operands[2] = x3;
07692 goto L1986;
07693 }
07694 L3540: ATTRIBUTE_UNUSED_LABEL
07695 if (se_register_operand (x3, DImode))
07696 {
07697 operands[1] = x3;
07698 goto L2024;
07699 }
07700 goto ret0;
07701
07702 L1986: ATTRIBUTE_UNUSED_LABEL
07703 x3 = XEXP (x2, 1);
07704 if (se_register_operand (x3, DImode))
07705 {
07706 operands[3] = x3;
07707 goto L1987;
07708 }
07709 x3 = XEXP (x2, 0);
07710 goto L3540;
07711
07712 L1987: ATTRIBUTE_UNUSED_LABEL
07713 x2 = XEXP (x1, 1);
07714 switch (GET_CODE (x2))
07715 {
07716 case LABEL_REF:
07717 goto L1988;
07718 case PC:
07719 goto L2007;
07720 default:
07721 break;
07722 }
07723 x2 = XEXP (x1, 0);
07724 x3 = XEXP (x2, 0);
07725 goto L3540;
07726
07727 L1988: ATTRIBUTE_UNUSED_LABEL
07728 x3 = XEXP (x2, 0);
07729 operands[1] = x3;
07730 goto L1989;
07731
07732 L1989: ATTRIBUTE_UNUSED_LABEL
07733 x2 = XEXP (x1, 2);
07734 if (GET_CODE (x2) == PC
07735 && (!TARGET_MIPS16))
07736 {
07737 return 226;
07738 }
07739 x2 = XEXP (x1, 0);
07740 x3 = XEXP (x2, 0);
07741 goto L3540;
07742
07743 L2007: ATTRIBUTE_UNUSED_LABEL
07744 x2 = XEXP (x1, 2);
07745 if (GET_CODE (x2) == LABEL_REF)
07746 goto L2008;
07747 x2 = XEXP (x1, 0);
07748 x3 = XEXP (x2, 0);
07749 goto L3540;
07750
07751 L2008: ATTRIBUTE_UNUSED_LABEL
07752 x3 = XEXP (x2, 0);
07753 operands[1] = x3;
07754 goto L2009;
07755
07756 L2009: ATTRIBUTE_UNUSED_LABEL
07757 if ((!TARGET_MIPS16))
07758 {
07759 return 228;
07760 }
07761 x1 = XEXP (x0, 1);
07762 x2 = XEXP (x1, 0);
07763 x3 = XEXP (x2, 0);
07764 goto L3540;
07765
07766 L2024: ATTRIBUTE_UNUSED_LABEL
07767 x3 = XEXP (x2, 1);
07768 if (GET_CODE (x3) == CONST_INT
07769 && XWINT (x3, 0) == 0LL)
07770 goto L2025;
07771 goto ret0;
07772
07773 L2025: ATTRIBUTE_UNUSED_LABEL
07774 x2 = XEXP (x1, 1);
07775 if (pc_or_label_operand (x2, VOIDmode))
07776 {
07777 operands[2] = x2;
07778 goto L2026;
07779 }
07780 goto ret0;
07781
07782 L2026: ATTRIBUTE_UNUSED_LABEL
07783 x2 = XEXP (x1, 2);
07784 if (pc_or_label_operand (x2, VOIDmode))
07785 {
07786 operands[3] = x2;
07787 goto L2027;
07788 }
07789 goto ret0;
07790
07791 L2027: ATTRIBUTE_UNUSED_LABEL
07792 if ((TARGET_MIPS16))
07793 {
07794 return 230;
07795 }
07796 goto ret0;
07797
07798 L2313: ATTRIBUTE_UNUSED_LABEL
07799 x2 = XEXP (x1, 0);
07800 operands[0] = x2;
07801 goto L2314;
07802
07803 L2314: ATTRIBUTE_UNUSED_LABEL
07804 if ((!TARGET_MIPS16))
07805 {
07806 return 279;
07807 }
07808 L2319: ATTRIBUTE_UNUSED_LABEL
07809 if ((TARGET_MIPS16))
07810 {
07811 return 280;
07812 }
07813 goto ret0;
07814
07815 L2436: ATTRIBUTE_UNUSED_LABEL
07816 x1 = XEXP (x0, 1);
07817 if (GET_CODE (x1) == UNSPEC
07818 && XVECLEN (x1, 0) == 1
07819 && XINT (x1, 1) == 4)
07820 goto L2437;
07821 goto ret0;
07822
07823 L2437: ATTRIBUTE_UNUSED_LABEL
07824 x2 = XVECEXP (x1, 0, 0);
07825 operands[1] = x2;
07826 goto L2438;
07827
07828 L2438: ATTRIBUTE_UNUSED_LABEL
07829 if ((TARGET_EMBEDDED_PIC
07830 && GET_CODE (operands[1]) == SYMBOL_REF)
07831 && pnum_clobbers != NULL)
07832 {
07833 *pnum_clobbers = 1;
07834 return 292;
07835 }
07836 goto ret0;
07837 ret0:
07838 return -1;
07839 }
07840
07841 static int recog_6 PARAMS ((rtx, rtx, int *));
07842 static int
07843 recog_6 (x0, insn, pnum_clobbers)
07844 rtx x0 ATTRIBUTE_UNUSED;
07845 rtx insn ATTRIBUTE_UNUSED;
07846 int *pnum_clobbers ATTRIBUTE_UNUSED;
07847 {
07848 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
07849 rtx x1 ATTRIBUTE_UNUSED;
07850 rtx x2 ATTRIBUTE_UNUSED;
07851 rtx x3 ATTRIBUTE_UNUSED;
07852 rtx x4 ATTRIBUTE_UNUSED;
07853 rtx x5 ATTRIBUTE_UNUSED;
07854 rtx x6 ATTRIBUTE_UNUSED;
07855 rtx x7 ATTRIBUTE_UNUSED;
07856 int tem ATTRIBUTE_UNUSED;
07857
07858 x1 = XVECEXP (x0, 0, 0);
07859 x2 = XEXP (x1, 0);
07860 switch (GET_MODE (x2))
07861 {
07862 case DImode:
07863 goto L3544;
07864 case SImode:
07865 goto L3543;
07866 default:
07867 break;
07868 }
07869 L2330: ATTRIBUTE_UNUSED_LABEL
07870 if (GET_CODE (x2) == PC)
07871 goto L2331;
07872 if (register_operand (x2, VOIDmode))
07873 {
07874 operands[0] = x2;
07875 goto L2430;
07876 }
07877 goto ret0;
07878
07879 L3544: ATTRIBUTE_UNUSED_LABEL
07880 if (GET_CODE (x2) == REG
07881 && XINT (x2, 0) == 28)
07882 goto L1643;
07883 L3542: ATTRIBUTE_UNUSED_LABEL
07884 if (register_operand (x2, DImode))
07885 {
07886 operands[0] = x2;
07887 goto L47;
07888 }
07889 goto L2330;
07890
07891 L1643: ATTRIBUTE_UNUSED_LABEL
07892 x2 = XEXP (x1, 1);
07893 if (GET_MODE (x2) == DImode
07894 && GET_CODE (x2) == UNSPEC_VOLATILE
07895 && XVECLEN (x2, 0) == 2
07896 && XINT (x2, 1) == 7)
07897 goto L1644;
07898 x2 = XEXP (x1, 0);
07899 goto L3542;
07900
07901 L1644: ATTRIBUTE_UNUSED_LABEL
07902 x3 = XVECEXP (x2, 0, 0);
07903 if (address_operand (x3, DImode))
07904 {
07905 operands[0] = x3;
07906 goto L1645;
07907 }
07908 x2 = XEXP (x1, 0);
07909 goto L3542;
07910
07911 L1645: ATTRIBUTE_UNUSED_LABEL
07912 x3 = XVECEXP (x2, 0, 1);
07913 if (register_operand (x3, DImode))
07914 {
07915 operands[1] = x3;
07916 goto L1646;
07917 }
07918 x2 = XEXP (x1, 0);
07919 goto L3542;
07920
07921 L1646: ATTRIBUTE_UNUSED_LABEL
07922 x1 = XVECEXP (x0, 0, 1);
07923 if (GET_CODE (x1) == CLOBBER)
07924 goto L1647;
07925 x1 = XVECEXP (x0, 0, 0);
07926 x2 = XEXP (x1, 0);
07927 goto L3542;
07928
07929 L1647: ATTRIBUTE_UNUSED_LABEL
07930 x2 = XEXP (x1, 0);
07931 if (GET_MODE (x2) == DImode
07932 && GET_CODE (x2) == REG
07933 && XINT (x2, 0) == 1)
07934 {
07935 return 189;
07936 }
07937 x1 = XVECEXP (x0, 0, 0);
07938 x2 = XEXP (x1, 0);
07939 goto L3542;
07940
07941 L47: ATTRIBUTE_UNUSED_LABEL
07942 x2 = XEXP (x1, 1);
07943 if (GET_MODE (x2) == DImode)
07944 goto L3545;
07945 x2 = XEXP (x1, 0);
07946 goto L2330;
07947
07948 L3545: ATTRIBUTE_UNUSED_LABEL
07949 switch (GET_CODE (x2))
07950 {
07951 case PLUS:
07952 goto L48;
07953 case MINUS:
07954 goto L140;
07955 case MULT:
07956 goto L407;
07957 case DIV:
07958 goto L826;
07959 case UDIV:
07960 goto L876;
07961 case NEG:
07962 goto L1121;
07963 case ASHIFT:
07964 goto L1760;
07965 case ASHIFTRT:
07966 goto L1811;
07967 case LSHIFTRT:
07968 goto L1868;
07969 default:
07970 break;
07971 }
07972 x2 = XEXP (x1, 0);
07973 goto L2330;
07974
07975 L48: ATTRIBUTE_UNUSED_LABEL
07976 x3 = XEXP (x2, 0);
07977 if (GET_MODE (x3) == DImode)
07978 goto L3555;
07979 x2 = XEXP (x1, 0);
07980 goto L2330;
07981
07982 L3555: ATTRIBUTE_UNUSED_LABEL
07983 if (GET_CODE (x3) == MULT)
07984 goto L652;
07985 if (register_operand (x3, DImode))
07986 {
07987 operands[1] = x3;
07988 goto L49;
07989 }
07990 x2 = XEXP (x1, 0);
07991 goto L2330;
07992
07993 L652: ATTRIBUTE_UNUSED_LABEL
07994 x4 = XEXP (x3, 0);
07995 if (extend_operator (x4, DImode))
07996 {
07997 operands[3] = x4;
07998 goto L653;
07999 }
08000 x2 = XEXP (x1, 0);
08001 goto L2330;
08002
08003 L653: ATTRIBUTE_UNUSED_LABEL
08004 x5 = XEXP (x4, 0);
08005 if (register_operand (x5, SImode))
08006 {
08007 operands[1] = x5;
08008 goto L654;
08009 }
08010 x2 = XEXP (x1, 0);
08011 goto L2330;
08012
08013 L654: ATTRIBUTE_UNUSED_LABEL
08014 x4 = XEXP (x3, 1);
08015 if (extend_operator (x4, DImode))
08016 {
08017 operands[4] = x4;
08018 goto L655;
08019 }
08020 x2 = XEXP (x1, 0);
08021 goto L2330;
08022
08023 L655: ATTRIBUTE_UNUSED_LABEL
08024 x5 = XEXP (x4, 0);
08025 if (register_operand (x5, SImode))
08026 {
08027 operands[2] = x5;
08028 goto L656;
08029 }
08030 x2 = XEXP (x1, 0);
08031 goto L2330;
08032
08033 L656: ATTRIBUTE_UNUSED_LABEL
08034 x3 = XEXP (x2, 1);
08035 if (rtx_equal_p (x3, operands[0]))
08036 goto L657;
08037 x2 = XEXP (x1, 0);
08038 goto L2330;
08039
08040 L657: ATTRIBUTE_UNUSED_LABEL
08041 x1 = XVECEXP (x0, 0, 1);
08042 if (GET_CODE (x1) == CLOBBER)
08043 goto L658;
08044 x1 = XVECEXP (x0, 0, 0);
08045 x2 = XEXP (x1, 0);
08046 goto L2330;
08047
08048 L658: ATTRIBUTE_UNUSED_LABEL
08049 x2 = XEXP (x1, 0);
08050 if (scratch_operand (x2, SImode))
08051 {
08052 operands[5] = x2;
08053 goto L659;
08054 }
08055 x1 = XVECEXP (x0, 0, 0);
08056 x2 = XEXP (x1, 0);
08057 goto L2330;
08058
08059 L659: ATTRIBUTE_UNUSED_LABEL
08060 if ((TARGET_MAD
08061 && ! TARGET_64BIT
08062 && GET_CODE (operands[3]) == GET_CODE (operands[4])))
08063 {
08064 return 53;
08065 }
08066 x1 = XVECEXP (x0, 0, 0);
08067 x2 = XEXP (x1, 0);
08068 goto L2330;
08069
08070 L49: ATTRIBUTE_UNUSED_LABEL
08071 x3 = XEXP (x2, 1);
08072 if (register_operand (x3, DImode))
08073 {
08074 operands[2] = x3;
08075 goto L50;
08076 }
08077 if (small_int (x3, DImode))
08078 {
08079 operands[2] = x3;
08080 goto L59;
08081 }
08082 x2 = XEXP (x1, 0);
08083 goto L2330;
08084
08085 L50: ATTRIBUTE_UNUSED_LABEL
08086 x1 = XVECEXP (x0, 0, 1);
08087 if (GET_CODE (x1) == CLOBBER)
08088 goto L51;
08089 x1 = XVECEXP (x0, 0, 0);
08090 x2 = XEXP (x1, 0);
08091 goto L2330;
08092
08093 L51: ATTRIBUTE_UNUSED_LABEL
08094 x2 = XEXP (x1, 0);
08095 if (register_operand (x2, SImode))
08096 {
08097 operands[3] = x2;
08098 goto L52;
08099 }
08100 x1 = XVECEXP (x0, 0, 0);
08101 x2 = XEXP (x1, 0);
08102 goto L2330;
08103
08104 L52: ATTRIBUTE_UNUSED_LABEL
08105 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
08106 {
08107 return 8;
08108 }
08109 x1 = XVECEXP (x0, 0, 0);
08110 x2 = XEXP (x1, 0);
08111 goto L2330;
08112
08113 L59: ATTRIBUTE_UNUSED_LABEL
08114 x1 = XVECEXP (x0, 0, 1);
08115 if (GET_CODE (x1) == CLOBBER)
08116 goto L60;
08117 x1 = XVECEXP (x0, 0, 0);
08118 x2 = XEXP (x1, 0);
08119 goto L2330;
08120
08121 L60: ATTRIBUTE_UNUSED_LABEL
08122 x2 = XEXP (x1, 0);
08123 if (register_operand (x2, SImode))
08124 {
08125 operands[3] = x2;
08126 goto L61;
08127 }
08128 x1 = XVECEXP (x0, 0, 0);
08129 x2 = XEXP (x1, 0);
08130 goto L2330;
08131
08132 L61: ATTRIBUTE_UNUSED_LABEL
08133 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
08134 && (TARGET_GAS
08135 || GET_CODE (operands[2]) != CONST_INT
08136 || INTVAL (operands[2]) != -32768)))
08137 {
08138 return 9;
08139 }
08140 x1 = XVECEXP (x0, 0, 0);
08141 x2 = XEXP (x1, 0);
08142 goto L2330;
08143
08144 L140: ATTRIBUTE_UNUSED_LABEL
08145 x3 = XEXP (x2, 0);
08146 if (register_operand (x3, DImode))
08147 {
08148 operands[1] = x3;
08149 goto L141;
08150 }
08151 x2 = XEXP (x1, 0);
08152 goto L2330;
08153
08154 L141: ATTRIBUTE_UNUSED_LABEL
08155 x3 = XEXP (x2, 1);
08156 if (register_operand (x3, DImode))
08157 {
08158 operands[2] = x3;
08159 goto L142;
08160 }
08161 if (small_int (x3, DImode))
08162 {
08163 operands[2] = x3;
08164 goto L151;
08165 }
08166 x2 = XEXP (x1, 0);
08167 goto L2330;
08168
08169 L142: ATTRIBUTE_UNUSED_LABEL
08170 x1 = XVECEXP (x0, 0, 1);
08171 if (GET_CODE (x1) == CLOBBER)
08172 goto L143;
08173 x1 = XVECEXP (x0, 0, 0);
08174 x2 = XEXP (x1, 0);
08175 goto L2330;
08176
08177 L143: ATTRIBUTE_UNUSED_LABEL
08178 x2 = XEXP (x1, 0);
08179 if (register_operand (x2, SImode))
08180 {
08181 operands[3] = x2;
08182 goto L144;
08183 }
08184 x1 = XVECEXP (x0, 0, 0);
08185 x2 = XEXP (x1, 0);
08186 goto L2330;
08187
08188 L144: ATTRIBUTE_UNUSED_LABEL
08189 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
08190 {
08191 return 22;
08192 }
08193 x1 = XVECEXP (x0, 0, 0);
08194 x2 = XEXP (x1, 0);
08195 goto L2330;
08196
08197 L151: ATTRIBUTE_UNUSED_LABEL
08198 x1 = XVECEXP (x0, 0, 1);
08199 if (GET_CODE (x1) == CLOBBER)
08200 goto L152;
08201 x1 = XVECEXP (x0, 0, 0);
08202 x2 = XEXP (x1, 0);
08203 goto L2330;
08204
08205 L152: ATTRIBUTE_UNUSED_LABEL
08206 x2 = XEXP (x1, 0);
08207 if (register_operand (x2, SImode))
08208 {
08209 operands[3] = x2;
08210 goto L153;
08211 }
08212 x1 = XVECEXP (x0, 0, 0);
08213 x2 = XEXP (x1, 0);
08214 goto L2330;
08215
08216 L153: ATTRIBUTE_UNUSED_LABEL
08217 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
08218 && INTVAL (operands[2]) != -32768))
08219 {
08220 return 23;
08221 }
08222 x1 = XVECEXP (x0, 0, 0);
08223 x2 = XEXP (x1, 0);
08224 goto L2330;
08225
08226 L407: ATTRIBUTE_UNUSED_LABEL
08227 x3 = XEXP (x2, 0);
08228 if (extend_operator (x3, DImode))
08229 {
08230 operands[3] = x3;
08231 goto L408;
08232 }
08233 x2 = XEXP (x1, 0);
08234 goto L2330;
08235
08236 L408: ATTRIBUTE_UNUSED_LABEL
08237 x4 = XEXP (x3, 0);
08238 if (register_operand (x4, SImode))
08239 {
08240 operands[1] = x4;
08241 goto L409;
08242 }
08243 x2 = XEXP (x1, 0);
08244 goto L2330;
08245
08246 L409: ATTRIBUTE_UNUSED_LABEL
08247 x3 = XEXP (x2, 1);
08248 if (extend_operator (x3, DImode))
08249 {
08250 operands[4] = x3;
08251 goto L410;
08252 }
08253 x2 = XEXP (x1, 0);
08254 goto L2330;
08255
08256 L410: ATTRIBUTE_UNUSED_LABEL
08257 x4 = XEXP (x3, 0);
08258 if (register_operand (x4, SImode))
08259 {
08260 operands[2] = x4;
08261 goto L411;
08262 }
08263 x2 = XEXP (x1, 0);
08264 goto L2330;
08265
08266 L411: ATTRIBUTE_UNUSED_LABEL
08267 x1 = XVECEXP (x0, 0, 1);
08268 if (GET_CODE (x1) == CLOBBER)
08269 goto L412;
08270 x1 = XVECEXP (x0, 0, 0);
08271 x2 = XEXP (x1, 0);
08272 goto L2330;
08273
08274 L412: ATTRIBUTE_UNUSED_LABEL
08275 x2 = XEXP (x1, 0);
08276 if (scratch_operand (x2, SImode))
08277 {
08278 operands[5] = x2;
08279 goto L413;
08280 }
08281 x1 = XVECEXP (x0, 0, 0);
08282 x2 = XEXP (x1, 0);
08283 goto L2330;
08284
08285 L413: ATTRIBUTE_UNUSED_LABEL
08286 if ((!TARGET_64BIT && GET_CODE (operands[3]) == GET_CODE (operands[4])))
08287 {
08288 return 43;
08289 }
08290 x1 = XVECEXP (x0, 0, 0);
08291 x2 = XEXP (x1, 0);
08292 goto L2330;
08293
08294 L826: ATTRIBUTE_UNUSED_LABEL
08295 x3 = XEXP (x2, 0);
08296 if (se_register_operand (x3, DImode))
08297 {
08298 operands[1] = x3;
08299 goto L827;
08300 }
08301 x2 = XEXP (x1, 0);
08302 goto L2330;
08303
08304 L827: ATTRIBUTE_UNUSED_LABEL
08305 x3 = XEXP (x2, 1);
08306 if (se_register_operand (x3, DImode))
08307 {
08308 operands[2] = x3;
08309 goto L828;
08310 }
08311 x2 = XEXP (x1, 0);
08312 goto L2330;
08313
08314 L828: ATTRIBUTE_UNUSED_LABEL
08315 x1 = XVECEXP (x0, 0, 1);
08316 if (GET_CODE (x1) == SET)
08317 goto L829;
08318 x1 = XVECEXP (x0, 0, 0);
08319 x2 = XEXP (x1, 0);
08320 goto L2330;
08321
08322 L829: ATTRIBUTE_UNUSED_LABEL
08323 x2 = XEXP (x1, 0);
08324 if (register_operand (x2, DImode))
08325 {
08326 operands[3] = x2;
08327 goto L830;
08328 }
08329 x1 = XVECEXP (x0, 0, 0);
08330 x2 = XEXP (x1, 0);
08331 goto L2330;
08332
08333 L830: ATTRIBUTE_UNUSED_LABEL
08334 x2 = XEXP (x1, 1);
08335 if (GET_MODE (x2) == DImode
08336 && GET_CODE (x2) == MOD)
08337 goto L831;
08338 x1 = XVECEXP (x0, 0, 0);
08339 x2 = XEXP (x1, 0);
08340 goto L2330;
08341
08342 L831: ATTRIBUTE_UNUSED_LABEL
08343 x3 = XEXP (x2, 0);
08344 if (rtx_equal_p (x3, operands[1]))
08345 goto L832;
08346 x1 = XVECEXP (x0, 0, 0);
08347 x2 = XEXP (x1, 0);
08348 goto L2330;
08349
08350 L832: ATTRIBUTE_UNUSED_LABEL
08351 x3 = XEXP (x2, 1);
08352 if (rtx_equal_p (x3, operands[2])
08353 && (TARGET_64BIT && optimize)
08354 && pnum_clobbers != NULL)
08355 {
08356 *pnum_clobbers = 1;
08357 return 68;
08358 }
08359 x1 = XVECEXP (x0, 0, 0);
08360 x2 = XEXP (x1, 0);
08361 goto L2330;
08362
08363 L876: ATTRIBUTE_UNUSED_LABEL
08364 x3 = XEXP (x2, 0);
08365 if (se_register_operand (x3, DImode))
08366 {
08367 operands[1] = x3;
08368 goto L877;
08369 }
08370 x2 = XEXP (x1, 0);
08371 goto L2330;
08372
08373 L877: ATTRIBUTE_UNUSED_LABEL
08374 x3 = XEXP (x2, 1);
08375 if (se_register_operand (x3, DImode))
08376 {
08377 operands[2] = x3;
08378 goto L878;
08379 }
08380 x2 = XEXP (x1, 0);
08381 goto L2330;
08382
08383 L878: ATTRIBUTE_UNUSED_LABEL
08384 x1 = XVECEXP (x0, 0, 1);
08385 if (GET_CODE (x1) == SET)
08386 goto L879;
08387 x1 = XVECEXP (x0, 0, 0);
08388 x2 = XEXP (x1, 0);
08389 goto L2330;
08390
08391 L879: ATTRIBUTE_UNUSED_LABEL
08392 x2 = XEXP (x1, 0);
08393 if (register_operand (x2, DImode))
08394 {
08395 operands[3] = x2;
08396 goto L880;
08397 }
08398 x1 = XVECEXP (x0, 0, 0);
08399 x2 = XEXP (x1, 0);
08400 goto L2330;
08401
08402 L880: ATTRIBUTE_UNUSED_LABEL
08403 x2 = XEXP (x1, 1);
08404 if (GET_MODE (x2) == DImode
08405 && GET_CODE (x2) == UMOD)
08406 goto L881;
08407 x1 = XVECEXP (x0, 0, 0);
08408 x2 = XEXP (x1, 0);
08409 goto L2330;
08410
08411 L881: ATTRIBUTE_UNUSED_LABEL
08412 x3 = XEXP (x2, 0);
08413 if (rtx_equal_p (x3, operands[1]))
08414 goto L882;
08415 x1 = XVECEXP (x0, 0, 0);
08416 x2 = XEXP (x1, 0);
08417 goto L2330;
08418
08419 L882: ATTRIBUTE_UNUSED_LABEL
08420 x3 = XEXP (x2, 1);
08421 if (rtx_equal_p (x3, operands[2])
08422 && (TARGET_64BIT && optimize)
08423 && pnum_clobbers != NULL)
08424 {
08425 *pnum_clobbers = 1;
08426 return 70;
08427 }
08428 x1 = XVECEXP (x0, 0, 0);
08429 x2 = XEXP (x1, 0);
08430 goto L2330;
08431
08432 L1121: ATTRIBUTE_UNUSED_LABEL
08433 x3 = XEXP (x2, 0);
08434 if (register_operand (x3, DImode))
08435 {
08436 operands[1] = x3;
08437 goto L1122;
08438 }
08439 x2 = XEXP (x1, 0);
08440 goto L2330;
08441
08442 L1122: ATTRIBUTE_UNUSED_LABEL
08443 x1 = XVECEXP (x0, 0, 1);
08444 if (GET_CODE (x1) == CLOBBER)
08445 goto L1123;
08446 x1 = XVECEXP (x0, 0, 0);
08447 x2 = XEXP (x1, 0);
08448 goto L2330;
08449
08450 L1123: ATTRIBUTE_UNUSED_LABEL
08451 x2 = XEXP (x1, 0);
08452 if (register_operand (x2, SImode))
08453 {
08454 operands[2] = x2;
08455 goto L1124;
08456 }
08457 x1 = XVECEXP (x0, 0, 0);
08458 x2 = XEXP (x1, 0);
08459 goto L2330;
08460
08461 L1124: ATTRIBUTE_UNUSED_LABEL
08462 if ((! TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
08463 {
08464 return 92;
08465 }
08466 x1 = XVECEXP (x0, 0, 0);
08467 x2 = XEXP (x1, 0);
08468 goto L2330;
08469
08470 L1760: ATTRIBUTE_UNUSED_LABEL
08471 x3 = XEXP (x2, 0);
08472 if (register_operand (x3, DImode))
08473 {
08474 operands[1] = x3;
08475 goto L1761;
08476 }
08477 x2 = XEXP (x1, 0);
08478 goto L2330;
08479
08480 L1761: ATTRIBUTE_UNUSED_LABEL
08481 x3 = XEXP (x2, 1);
08482 if (register_operand (x3, SImode))
08483 {
08484 operands[2] = x3;
08485 goto L1762;
08486 }
08487 if (small_int (x3, SImode))
08488 {
08489 operands[2] = x3;
08490 goto L1771;
08491 }
08492 x2 = XEXP (x1, 0);
08493 goto L2330;
08494
08495 L1762: ATTRIBUTE_UNUSED_LABEL
08496 x1 = XVECEXP (x0, 0, 1);
08497 if (GET_CODE (x1) == CLOBBER)
08498 goto L1763;
08499 x1 = XVECEXP (x0, 0, 0);
08500 x2 = XEXP (x1, 0);
08501 goto L2330;
08502
08503 L1763: ATTRIBUTE_UNUSED_LABEL
08504 x2 = XEXP (x1, 0);
08505 if (register_operand (x2, SImode))
08506 {
08507 operands[3] = x2;
08508 goto L1764;
08509 }
08510 x1 = XVECEXP (x0, 0, 0);
08511 x2 = XEXP (x1, 0);
08512 goto L2330;
08513
08514 L1764: ATTRIBUTE_UNUSED_LABEL
08515 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
08516 {
08517 return 197;
08518 }
08519 x1 = XVECEXP (x0, 0, 0);
08520 x2 = XEXP (x1, 0);
08521 goto L2330;
08522
08523 L1771: ATTRIBUTE_UNUSED_LABEL
08524 x1 = XVECEXP (x0, 0, 1);
08525 if (GET_CODE (x1) == CLOBBER)
08526 goto L1772;
08527 x1 = XVECEXP (x0, 0, 0);
08528 x2 = XEXP (x1, 0);
08529 goto L2330;
08530
08531 L1772: ATTRIBUTE_UNUSED_LABEL
08532 x2 = XEXP (x1, 0);
08533 if (register_operand (x2, SImode))
08534 {
08535 operands[3] = x2;
08536 goto L1773;
08537 }
08538 x1 = XVECEXP (x0, 0, 0);
08539 x2 = XEXP (x1, 0);
08540 goto L2330;
08541
08542 L1773: ATTRIBUTE_UNUSED_LABEL
08543 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
08544 && (INTVAL (operands[2]) & 32) != 0))
08545 {
08546 return 198;
08547 }
08548 L1782: ATTRIBUTE_UNUSED_LABEL
08549 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
08550 && (INTVAL (operands[2]) & 63) < 32
08551 && (INTVAL (operands[2]) & 63) != 0))
08552 {
08553 return 199;
08554 }
08555 x1 = XVECEXP (x0, 0, 0);
08556 x2 = XEXP (x1, 0);
08557 goto L2330;
08558
08559 L1811: ATTRIBUTE_UNUSED_LABEL
08560 x3 = XEXP (x2, 0);
08561 if (register_operand (x3, DImode))
08562 {
08563 operands[1] = x3;
08564 goto L1812;
08565 }
08566 x2 = XEXP (x1, 0);
08567 goto L2330;
08568
08569 L1812: ATTRIBUTE_UNUSED_LABEL
08570 x3 = XEXP (x2, 1);
08571 if (register_operand (x3, SImode))
08572 {
08573 operands[2] = x3;
08574 goto L1813;
08575 }
08576 if (small_int (x3, SImode))
08577 {
08578 operands[2] = x3;
08579 goto L1822;
08580 }
08581 x2 = XEXP (x1, 0);
08582 goto L2330;
08583
08584 L1813: ATTRIBUTE_UNUSED_LABEL
08585 x1 = XVECEXP (x0, 0, 1);
08586 if (GET_CODE (x1) == CLOBBER)
08587 goto L1814;
08588 x1 = XVECEXP (x0, 0, 0);
08589 x2 = XEXP (x1, 0);
08590 goto L2330;
08591
08592 L1814: ATTRIBUTE_UNUSED_LABEL
08593 x2 = XEXP (x1, 0);
08594 if (register_operand (x2, SImode))
08595 {
08596 operands[3] = x2;
08597 goto L1815;
08598 }
08599 x1 = XVECEXP (x0, 0, 0);
08600 x2 = XEXP (x1, 0);
08601 goto L2330;
08602
08603 L1815: ATTRIBUTE_UNUSED_LABEL
08604 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
08605 {
08606 return 204;
08607 }
08608 x1 = XVECEXP (x0, 0, 0);
08609 x2 = XEXP (x1, 0);
08610 goto L2330;
08611
08612 L1822: ATTRIBUTE_UNUSED_LABEL
08613 x1 = XVECEXP (x0, 0, 1);
08614 if (GET_CODE (x1) == CLOBBER)
08615 goto L1823;
08616 x1 = XVECEXP (x0, 0, 0);
08617 x2 = XEXP (x1, 0);
08618 goto L2330;
08619
08620 L1823: ATTRIBUTE_UNUSED_LABEL
08621 x2 = XEXP (x1, 0);
08622 if (register_operand (x2, SImode))
08623 {
08624 operands[3] = x2;
08625 goto L1824;
08626 }
08627 x1 = XVECEXP (x0, 0, 0);
08628 x2 = XEXP (x1, 0);
08629 goto L2330;
08630
08631 L1824: ATTRIBUTE_UNUSED_LABEL
08632 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && (INTVAL (operands[2]) & 32) != 0))
08633 {
08634 return 205;
08635 }
08636 L1833: ATTRIBUTE_UNUSED_LABEL
08637 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
08638 && (INTVAL (operands[2]) & 63) < 32
08639 && (INTVAL (operands[2]) & 63) != 0))
08640 {
08641 return 206;
08642 }
08643 x1 = XVECEXP (x0, 0, 0);
08644 x2 = XEXP (x1, 0);
08645 goto L2330;
08646
08647 L1868: ATTRIBUTE_UNUSED_LABEL
08648 x3 = XEXP (x2, 0);
08649 if (register_operand (x3, DImode))
08650 {
08651 operands[1] = x3;
08652 goto L1869;
08653 }
08654 x2 = XEXP (x1, 0);
08655 goto L2330;
08656
08657 L1869: ATTRIBUTE_UNUSED_LABEL
08658 x3 = XEXP (x2, 1);
08659 if (register_operand (x3, SImode))
08660 {
08661 operands[2] = x3;
08662 goto L1870;
08663 }
08664 if (small_int (x3, SImode))
08665 {
08666 operands[2] = x3;
08667 goto L1879;
08668 }
08669 x2 = XEXP (x1, 0);
08670 goto L2330;
08671
08672 L1870: ATTRIBUTE_UNUSED_LABEL
08673 x1 = XVECEXP (x0, 0, 1);
08674 if (GET_CODE (x1) == CLOBBER)
08675 goto L1871;
08676 x1 = XVECEXP (x0, 0, 0);
08677 x2 = XEXP (x1, 0);
08678 goto L2330;
08679
08680 L1871: ATTRIBUTE_UNUSED_LABEL
08681 x2 = XEXP (x1, 0);
08682 if (register_operand (x2, SImode))
08683 {
08684 operands[3] = x2;
08685 goto L1872;
08686 }
08687 x1 = XVECEXP (x0, 0, 0);
08688 x2 = XEXP (x1, 0);
08689 goto L2330;
08690
08691 L1872: ATTRIBUTE_UNUSED_LABEL
08692 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
08693 {
08694 return 212;
08695 }
08696 x1 = XVECEXP (x0, 0, 0);
08697 x2 = XEXP (x1, 0);
08698 goto L2330;
08699
08700 L1879: ATTRIBUTE_UNUSED_LABEL
08701 x1 = XVECEXP (x0, 0, 1);
08702 if (GET_CODE (x1) == CLOBBER)
08703 goto L1880;
08704 x1 = XVECEXP (x0, 0, 0);
08705 x2 = XEXP (x1, 0);
08706 goto L2330;
08707
08708 L1880: ATTRIBUTE_UNUSED_LABEL
08709 x2 = XEXP (x1, 0);
08710 if (register_operand (x2, SImode))
08711 {
08712 operands[3] = x2;
08713 goto L1881;
08714 }
08715 x1 = XVECEXP (x0, 0, 0);
08716 x2 = XEXP (x1, 0);
08717 goto L2330;
08718
08719 L1881: ATTRIBUTE_UNUSED_LABEL
08720 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
08721 && (INTVAL (operands[2]) & 32) != 0))
08722 {
08723 return 213;
08724 }
08725 L1890: ATTRIBUTE_UNUSED_LABEL
08726 if ((!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
08727 && (INTVAL (operands[2]) & 63) < 32
08728 && (INTVAL (operands[2]) & 63) != 0))
08729 {
08730 return 214;
08731 }
08732 x1 = XVECEXP (x0, 0, 0);
08733 x2 = XEXP (x1, 0);
08734 goto L2330;
08735
08736 L3543: ATTRIBUTE_UNUSED_LABEL
08737 if (register_operand (x2, SImode))
08738 {
08739 operands[0] = x2;
08740 goto L800;
08741 }
08742 goto L2330;
08743
08744 L800: ATTRIBUTE_UNUSED_LABEL
08745 x2 = XEXP (x1, 1);
08746 if (GET_MODE (x2) == SImode)
08747 goto L3556;
08748 x2 = XEXP (x1, 0);
08749 goto L2330;
08750
08751 L3556: ATTRIBUTE_UNUSED_LABEL
08752 switch (GET_CODE (x2))
08753 {
08754 case DIV:
08755 goto L801;
08756 case UDIV:
08757 goto L851;
08758 case FIX:
08759 goto L1410;
08760 default:
08761 break;
08762 }
08763 x2 = XEXP (x1, 0);
08764 goto L2330;
08765
08766 L801: ATTRIBUTE_UNUSED_LABEL
08767 x3 = XEXP (x2, 0);
08768 if (register_operand (x3, SImode))
08769 {
08770 operands[1] = x3;
08771 goto L802;
08772 }
08773 x2 = XEXP (x1, 0);
08774 goto L2330;
08775
08776 L802: ATTRIBUTE_UNUSED_LABEL
08777 x3 = XEXP (x2, 1);
08778 if (register_operand (x3, SImode))
08779 {
08780 operands[2] = x3;
08781 goto L803;
08782 }
08783 x2 = XEXP (x1, 0);
08784 goto L2330;
08785
08786 L803: ATTRIBUTE_UNUSED_LABEL
08787 x1 = XVECEXP (x0, 0, 1);
08788 if (GET_CODE (x1) == SET)
08789 goto L804;
08790 x1 = XVECEXP (x0, 0, 0);
08791 x2 = XEXP (x1, 0);
08792 goto L2330;
08793
08794 L804: ATTRIBUTE_UNUSED_LABEL
08795 x2 = XEXP (x1, 0);
08796 if (register_operand (x2, SImode))
08797 {
08798 operands[3] = x2;
08799 goto L805;
08800 }
08801 x1 = XVECEXP (x0, 0, 0);
08802 x2 = XEXP (x1, 0);
08803 goto L2330;
08804
08805 L805: ATTRIBUTE_UNUSED_LABEL
08806 x2 = XEXP (x1, 1);
08807 if (GET_MODE (x2) == SImode
08808 && GET_CODE (x2) == MOD)
08809 goto L806;
08810 x1 = XVECEXP (x0, 0, 0);
08811 x2 = XEXP (x1, 0);
08812 goto L2330;
08813
08814 L806: ATTRIBUTE_UNUSED_LABEL
08815 x3 = XEXP (x2, 0);
08816 if (rtx_equal_p (x3, operands[1]))
08817 goto L807;
08818 x1 = XVECEXP (x0, 0, 0);
08819 x2 = XEXP (x1, 0);
08820 goto L2330;
08821
08822 L807: ATTRIBUTE_UNUSED_LABEL
08823 x3 = XEXP (x2, 1);
08824 if (rtx_equal_p (x3, operands[2])
08825 && (optimize)
08826 && pnum_clobbers != NULL)
08827 {
08828 *pnum_clobbers = 1;
08829 return 67;
08830 }
08831 x1 = XVECEXP (x0, 0, 0);
08832 x2 = XEXP (x1, 0);
08833 goto L2330;
08834
08835 L851: ATTRIBUTE_UNUSED_LABEL
08836 x3 = XEXP (x2, 0);
08837 if (register_operand (x3, SImode))
08838 {
08839 operands[1] = x3;
08840 goto L852;
08841 }
08842 x2 = XEXP (x1, 0);
08843 goto L2330;
08844
08845 L852: ATTRIBUTE_UNUSED_LABEL
08846 x3 = XEXP (x2, 1);
08847 if (register_operand (x3, SImode))
08848 {
08849 operands[2] = x3;
08850 goto L853;
08851 }
08852 x2 = XEXP (x1, 0);
08853 goto L2330;
08854
08855 L853: ATTRIBUTE_UNUSED_LABEL
08856 x1 = XVECEXP (x0, 0, 1);
08857 if (GET_CODE (x1) == SET)
08858 goto L854;
08859 x1 = XVECEXP (x0, 0, 0);
08860 x2 = XEXP (x1, 0);
08861 goto L2330;
08862
08863 L854: ATTRIBUTE_UNUSED_LABEL
08864 x2 = XEXP (x1, 0);
08865 if (register_operand (x2, SImode))
08866 {
08867 operands[3] = x2;
08868 goto L855;
08869 }
08870 x1 = XVECEXP (x0, 0, 0);
08871 x2 = XEXP (x1, 0);
08872 goto L2330;
08873
08874 L855: ATTRIBUTE_UNUSED_LABEL
08875 x2 = XEXP (x1, 1);
08876 if (GET_MODE (x2) == SImode
08877 && GET_CODE (x2) == UMOD)
08878 goto L856;
08879 x1 = XVECEXP (x0, 0, 0);
08880 x2 = XEXP (x1, 0);
08881 goto L2330;
08882
08883 L856: ATTRIBUTE_UNUSED_LABEL
08884 x3 = XEXP (x2, 0);
08885 if (rtx_equal_p (x3, operands[1]))
08886 goto L857;
08887 x1 = XVECEXP (x0, 0, 0);
08888 x2 = XEXP (x1, 0);
08889 goto L2330;
08890
08891 L857: ATTRIBUTE_UNUSED_LABEL
08892 x3 = XEXP (x2, 1);
08893 if (rtx_equal_p (x3, operands[2])
08894 && (optimize)
08895 && pnum_clobbers != NULL)
08896 {
08897 *pnum_clobbers = 1;
08898 return 69;
08899 }
08900 x1 = XVECEXP (x0, 0, 0);
08901 x2 = XEXP (x1, 0);
08902 goto L2330;
08903
08904 L1410: ATTRIBUTE_UNUSED_LABEL
08905 x3 = XEXP (x2, 0);
08906 switch (GET_MODE (x3))
08907 {
08908 case DFmode:
08909 goto L3559;
08910 case SFmode:
08911 goto L3560;
08912 default:
08913 break;
08914 }
08915 x2 = XEXP (x1, 0);
08916 goto L2330;
08917
08918 L3559: ATTRIBUTE_UNUSED_LABEL
08919 if (register_operand (x3, DFmode))
08920 {
08921 operands[1] = x3;
08922 goto L1411;
08923 }
08924 x2 = XEXP (x1, 0);
08925 goto L2330;
08926
08927 L1411: ATTRIBUTE_UNUSED_LABEL
08928 x1 = XVECEXP (x0, 0, 1);
08929 if (GET_CODE (x1) == CLOBBER)
08930 goto L1412;
08931 x1 = XVECEXP (x0, 0, 0);
08932 x2 = XEXP (x1, 0);
08933 goto L2330;
08934
08935 L1412: ATTRIBUTE_UNUSED_LABEL
08936 x2 = XEXP (x1, 0);
08937 if (scratch_operand (x2, DFmode))
08938 {
08939 operands[2] = x2;
08940 goto L1413;
08941 }
08942 x1 = XVECEXP (x0, 0, 0);
08943 x2 = XEXP (x1, 0);
08944 goto L2330;
08945
08946 L1413: ATTRIBUTE_UNUSED_LABEL
08947 if ((TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && !ISA_HAS_TRUNC_W))
08948 {
08949 return 144;
08950 }
08951 x1 = XVECEXP (x0, 0, 0);
08952 x2 = XEXP (x1, 0);
08953 goto L2330;
08954
08955 L3560: ATTRIBUTE_UNUSED_LABEL
08956 if (register_operand (x3, SFmode))
08957 {
08958 operands[1] = x3;
08959 goto L1429;
08960 }
08961 x2 = XEXP (x1, 0);
08962 goto L2330;
08963
08964 L1429: ATTRIBUTE_UNUSED_LABEL
08965 x1 = XVECEXP (x0, 0, 1);
08966 if (GET_CODE (x1) == CLOBBER)
08967 goto L1430;
08968 x1 = XVECEXP (x0, 0, 0);
08969 x2 = XEXP (x1, 0);
08970 goto L2330;
08971
08972 L1430: ATTRIBUTE_UNUSED_LABEL
08973 x2 = XEXP (x1, 0);
08974 if (scratch_operand (x2, SFmode))
08975 {
08976 operands[2] = x2;
08977 goto L1431;
08978 }
08979 x1 = XVECEXP (x0, 0, 0);
08980 x2 = XEXP (x1, 0);
08981 goto L2330;
08982
08983 L1431: ATTRIBUTE_UNUSED_LABEL
08984 if ((TARGET_HARD_FLOAT && !ISA_HAS_TRUNC_W))
08985 {
08986 return 146;
08987 }
08988 x1 = XVECEXP (x0, 0, 0);
08989 x2 = XEXP (x1, 0);
08990 goto L2330;
08991
08992 L2331: ATTRIBUTE_UNUSED_LABEL
08993 x2 = XEXP (x1, 1);
08994 switch (GET_MODE (x2))
08995 {
08996 case SImode:
08997 goto L3563;
08998 case DImode:
08999 goto L3564;
09000 default:
09001 break;
09002 }
09003 goto ret0;
09004
09005 L3563: ATTRIBUTE_UNUSED_LABEL
09006 switch (GET_CODE (x2))
09007 {
09008 case PLUS:
09009 goto L2348;
09010 case MEM:
09011 goto L2382;
09012 case SUBREG:
09013 case REG:
09014 case ADDRESSOF:
09015 goto L3561;
09016 default:
09017 goto ret0;
09018 }
09019 L3561: ATTRIBUTE_UNUSED_LABEL
09020 if (register_operand (x2, SImode))
09021 {
09022 operands[0] = x2;
09023 goto L2332;
09024 }
09025 goto ret0;
09026
09027 L2348: ATTRIBUTE_UNUSED_LABEL
09028 x3 = XEXP (x2, 0);
09029 if (register_operand (x3, SImode))
09030 {
09031 operands[0] = x3;
09032 goto L2349;
09033 }
09034 goto ret0;
09035
09036 L2349: ATTRIBUTE_UNUSED_LABEL
09037 x3 = XEXP (x2, 1);
09038 if (GET_MODE (x3) == SImode
09039 && GET_CODE (x3) == LABEL_REF)
09040 goto L2350;
09041 goto ret0;
09042
09043 L2350: ATTRIBUTE_UNUSED_LABEL
09044 x4 = XEXP (x3, 0);
09045 operands[1] = x4;
09046 goto L2351;
09047
09048 L2351: ATTRIBUTE_UNUSED_LABEL
09049 x1 = XVECEXP (x0, 0, 1);
09050 if (GET_CODE (x1) == USE)
09051 goto L2352;
09052 goto ret0;
09053
09054 L2352: ATTRIBUTE_UNUSED_LABEL
09055 x2 = XEXP (x1, 0);
09056 if (GET_MODE (x2) == SImode
09057 && GET_CODE (x2) == LABEL_REF)
09058 goto L2353;
09059 goto ret0;
09060
09061 L2353: ATTRIBUTE_UNUSED_LABEL
09062 x3 = XEXP (x2, 0);
09063 if (rtx_equal_p (x3, operands[1])
09064 && (!(Pmode == DImode) && next_active_insn (insn) != 0
09065 && GET_CODE (PATTERN (next_active_insn (insn))) == ADDR_DIFF_VEC
09066 && PREV_INSN (next_active_insn (insn)) == operands[1]))
09067 {
09068 return 285;
09069 }
09070 goto ret0;
09071
09072 L2382: ATTRIBUTE_UNUSED_LABEL
09073 x3 = XEXP (x2, 0);
09074 if (GET_MODE (x3) == SImode
09075 && GET_CODE (x3) == PLUS)
09076 goto L2383;
09077 goto ret0;
09078
09079 L2383: ATTRIBUTE_UNUSED_LABEL
09080 x4 = XEXP (x3, 0);
09081 if (GET_MODE (x4) == SImode
09082 && GET_CODE (x4) == MULT)
09083 goto L2384;
09084 goto ret0;
09085
09086 L2384: ATTRIBUTE_UNUSED_LABEL
09087 x5 = XEXP (x4, 0);
09088 if (register_operand (x5, SImode))
09089 {
09090 operands[0] = x5;
09091 goto L2385;
09092 }
09093 goto ret0;
09094
09095 L2385: ATTRIBUTE_UNUSED_LABEL
09096 x5 = XEXP (x4, 1);
09097 if (GET_CODE (x5) == CONST_INT
09098 && XWINT (x5, 0) == 4LL)
09099 goto L2386;
09100 goto ret0;
09101
09102 L2386: ATTRIBUTE_UNUSED_LABEL
09103 x4 = XEXP (x3, 1);
09104 if (GET_CODE (x4) == LABEL_REF)
09105 goto L2387;
09106 goto ret0;
09107
09108 L2387: ATTRIBUTE_UNUSED_LABEL
09109 x5 = XEXP (x4, 0);
09110 operands[1] = x5;
09111 goto L2388;
09112
09113 L2388: ATTRIBUTE_UNUSED_LABEL
09114 x1 = XVECEXP (x0, 0, 1);
09115 if (GET_CODE (x1) == CLOBBER)
09116 goto L2389;
09117 goto ret0;
09118
09119 L2389: ATTRIBUTE_UNUSED_LABEL
09120 x2 = XEXP (x1, 0);
09121 if (register_operand (x2, SImode))
09122 {
09123 operands[2] = x2;
09124 goto L2390;
09125 }
09126 goto ret0;
09127
09128 L2390: ATTRIBUTE_UNUSED_LABEL
09129 if ((TARGET_EMBEDDED_PIC)
09130 && pnum_clobbers != NULL)
09131 {
09132 *pnum_clobbers = 1;
09133 return 287;
09134 }
09135 goto ret0;
09136
09137 L2332: ATTRIBUTE_UNUSED_LABEL
09138 x1 = XVECEXP (x0, 0, 1);
09139 if (GET_CODE (x1) == USE)
09140 goto L2333;
09141 goto ret0;
09142
09143 L2333: ATTRIBUTE_UNUSED_LABEL
09144 x2 = XEXP (x1, 0);
09145 if (GET_CODE (x2) == LABEL_REF)
09146 goto L2334;
09147 goto ret0;
09148
09149 L2334: ATTRIBUTE_UNUSED_LABEL
09150 x3 = XEXP (x2, 0);
09151 operands[1] = x3;
09152 goto L2335;
09153
09154 L2335: ATTRIBUTE_UNUSED_LABEL
09155 if ((!(Pmode == DImode)))
09156 {
09157 return 283;
09158 }
09159 goto ret0;
09160
09161 L3564: ATTRIBUTE_UNUSED_LABEL
09162 switch (GET_CODE (x2))
09163 {
09164 case PLUS:
09165 goto L2358;
09166 case MEM:
09167 goto L2410;
09168 case SUBREG:
09169 case REG:
09170 case SIGN_EXTEND:
09171 goto L3562;
09172 default:
09173 goto ret0;
09174 }
09175 L3562: ATTRIBUTE_UNUSED_LABEL
09176 if (se_register_operand (x2, DImode))
09177 {
09178 operands[0] = x2;
09179 goto L2340;
09180 }
09181 goto ret0;
09182
09183 L2358: ATTRIBUTE_UNUSED_LABEL
09184 x3 = XEXP (x2, 0);
09185 if (se_register_operand (x3, DImode))
09186 {
09187 operands[0] = x3;
09188 goto L2359;
09189 }
09190 goto ret0;
09191
09192 L2359: ATTRIBUTE_UNUSED_LABEL
09193 x3 = XEXP (x2, 1);
09194 if (GET_MODE (x3) == DImode
09195 && GET_CODE (x3) == LABEL_REF)
09196 goto L2360;
09197 goto ret0;
09198
09199 L2360: ATTRIBUTE_UNUSED_LABEL
09200 x4 = XEXP (x3, 0);
09201 operands[1] = x4;
09202 goto L2361;
09203
09204 L2361: ATTRIBUTE_UNUSED_LABEL
09205 x1 = XVECEXP (x0, 0, 1);
09206 if (GET_CODE (x1) == USE)
09207 goto L2362;
09208 goto ret0;
09209
09210 L2362: ATTRIBUTE_UNUSED_LABEL
09211 x2 = XEXP (x1, 0);
09212 if (GET_MODE (x2) == DImode
09213 && GET_CODE (x2) == LABEL_REF)
09214 goto L2363;
09215 goto ret0;
09216
09217 L2363: ATTRIBUTE_UNUSED_LABEL
09218 x3 = XEXP (x2, 0);
09219 if (rtx_equal_p (x3, operands[1])
09220 && (Pmode == DImode && next_active_insn (insn) != 0
09221 && GET_CODE (PATTERN (next_active_insn (insn))) == ADDR_DIFF_VEC
09222 && PREV_INSN (next_active_insn (insn)) == operands[1]))
09223 {
09224 return 286;
09225 }
09226 goto ret0;
09227
09228 L2410: ATTRIBUTE_UNUSED_LABEL
09229 x3 = XEXP (x2, 0);
09230 if (GET_MODE (x3) == DImode
09231 && GET_CODE (x3) == PLUS)
09232 goto L2411;
09233 goto ret0;
09234
09235 L2411: ATTRIBUTE_UNUSED_LABEL
09236 x4 = XEXP (x3, 0);
09237 if (GET_MODE (x4) == DImode
09238 && GET_CODE (x4) == SIGN_EXTEND)
09239 goto L2412;
09240 goto ret0;
09241
09242 L2412: ATTRIBUTE_UNUSED_LABEL
09243 x5 = XEXP (x4, 0);
09244 if (GET_MODE (x5) == SImode
09245 && GET_CODE (x5) == MULT)
09246 goto L2413;
09247 goto ret0;
09248
09249 L2413: ATTRIBUTE_UNUSED_LABEL
09250 x6 = XEXP (x5, 0);
09251 if (register_operand (x6, SImode))
09252 {
09253 operands[0] = x6;
09254 goto L2414;
09255 }
09256 goto ret0;
09257
09258 L2414: ATTRIBUTE_UNUSED_LABEL
09259 x6 = XEXP (x5, 1);
09260 if (GET_CODE (x6) == CONST_INT
09261 && XWINT (x6, 0) == 8LL)
09262 goto L2415;
09263 goto ret0;
09264
09265 L2415: ATTRIBUTE_UNUSED_LABEL
09266 x4 = XEXP (x3, 1);
09267 if (GET_CODE (x4) == LABEL_REF)
09268 goto L2416;
09269 goto ret0;
09270
09271 L2416: ATTRIBUTE_UNUSED_LABEL
09272 x5 = XEXP (x4, 0);
09273 operands[1] = x5;
09274 goto L2417;
09275
09276 L2417: ATTRIBUTE_UNUSED_LABEL
09277 x1 = XVECEXP (x0, 0, 1);
09278 if (GET_CODE (x1) == CLOBBER)
09279 goto L2418;
09280 goto ret0;
09281
09282 L2418: ATTRIBUTE_UNUSED_LABEL
09283 x2 = XEXP (x1, 0);
09284 if (register_operand (x2, DImode))
09285 {
09286 operands[2] = x2;
09287 goto L2419;
09288 }
09289 goto ret0;
09290
09291 L2419: ATTRIBUTE_UNUSED_LABEL
09292 if ((TARGET_EMBEDDED_PIC)
09293 && pnum_clobbers != NULL)
09294 {
09295 *pnum_clobbers = 1;
09296 return 288;
09297 }
09298 goto ret0;
09299
09300 L2340: ATTRIBUTE_UNUSED_LABEL
09301 x1 = XVECEXP (x0, 0, 1);
09302 if (GET_CODE (x1) == USE)
09303 goto L2341;
09304 goto ret0;
09305
09306 L2341: ATTRIBUTE_UNUSED_LABEL
09307 x2 = XEXP (x1, 0);
09308 if (GET_CODE (x2) == LABEL_REF)
09309 goto L2342;
09310 goto ret0;
09311
09312 L2342: ATTRIBUTE_UNUSED_LABEL
09313 x3 = XEXP (x2, 0);
09314 operands[1] = x3;
09315 goto L2343;
09316
09317 L2343: ATTRIBUTE_UNUSED_LABEL
09318 if ((Pmode == DImode))
09319 {
09320 return 284;
09321 }
09322 goto ret0;
09323
09324 L2430: ATTRIBUTE_UNUSED_LABEL
09325 x2 = XEXP (x1, 1);
09326 switch (GET_CODE (x2))
09327 {
09328 case UNSPEC:
09329 goto L3567;
09330 case CALL:
09331 goto L2527;
09332 default:
09333 break;
09334 }
09335 goto ret0;
09336
09337 L3567: ATTRIBUTE_UNUSED_LABEL
09338 if (XVECLEN (x2, 0) == 1
09339 && XINT (x2, 1) == 4)
09340 goto L2431;
09341 goto ret0;
09342
09343 L2431: ATTRIBUTE_UNUSED_LABEL
09344 x3 = XVECEXP (x2, 0, 0);
09345 operands[1] = x3;
09346 goto L2432;
09347
09348 L2432: ATTRIBUTE_UNUSED_LABEL
09349 x1 = XVECEXP (x0, 0, 1);
09350 if (GET_CODE (x1) == CLOBBER)
09351 goto L2433;
09352 goto ret0;
09353
09354 L2433: ATTRIBUTE_UNUSED_LABEL
09355 x2 = XEXP (x1, 0);
09356 if (GET_MODE (x2) == SImode
09357 && GET_CODE (x2) == REG
09358 && XINT (x2, 0) == 31
09359 && (TARGET_EMBEDDED_PIC
09360 && GET_CODE (operands[1]) == SYMBOL_REF))
09361 {
09362 return 292;
09363 }
09364 goto ret0;
09365
09366 L2527: ATTRIBUTE_UNUSED_LABEL
09367 x3 = XEXP (x2, 0);
09368 if (GET_CODE (x3) == MEM)
09369 goto L2528;
09370 L2557: ATTRIBUTE_UNUSED_LABEL
09371 switch (GET_MODE (x3))
09372 {
09373 case SImode:
09374 goto L3568;
09375 case DImode:
09376 goto L3569;
09377 default:
09378 break;
09379 }
09380 goto ret0;
09381
09382 L2528: ATTRIBUTE_UNUSED_LABEL
09383 x4 = XEXP (x3, 0);
09384 if (call_insn_operand (x4, VOIDmode))
09385 {
09386 operands[1] = x4;
09387 goto L2529;
09388 }
09389 goto L2557;
09390
09391 L2529: ATTRIBUTE_UNUSED_LABEL
09392 x3 = XEXP (x2, 1);
09393 operands[2] = x3;
09394 goto L2530;
09395
09396 L2530: ATTRIBUTE_UNUSED_LABEL
09397 x1 = XVECEXP (x0, 0, 1);
09398 if (GET_CODE (x1) == CLOBBER)
09399 goto L2531;
09400 x1 = XVECEXP (x0, 0, 0);
09401 x2 = XEXP (x1, 1);
09402 x3 = XEXP (x2, 0);
09403 goto L2557;
09404
09405 L2531: ATTRIBUTE_UNUSED_LABEL
09406 x2 = XEXP (x1, 0);
09407 if (register_operand (x2, SImode))
09408 {
09409 operands[3] = x2;
09410 goto L2532;
09411 }
09412 x1 = XVECEXP (x0, 0, 0);
09413 x2 = XEXP (x1, 1);
09414 x3 = XEXP (x2, 0);
09415 goto L2557;
09416
09417 L2532: ATTRIBUTE_UNUSED_LABEL
09418 if ((TARGET_MIPS16 && !TARGET_ABICALLS && !TARGET_LONG_CALLS
09419 && GET_CODE (operands[3]) == REG && REGNO (operands[3]) == 31))
09420 {
09421 return 304;
09422 }
09423 L2542: ATTRIBUTE_UNUSED_LABEL
09424 if ((!TARGET_ABICALLS && !TARGET_LONG_CALLS))
09425 {
09426 return 305;
09427 }
09428 L2552: ATTRIBUTE_UNUSED_LABEL
09429 if ((TARGET_ABICALLS && !TARGET_LONG_CALLS))
09430 {
09431 return 306;
09432 }
09433 x1 = XVECEXP (x0, 0, 0);
09434 x2 = XEXP (x1, 1);
09435 x3 = XEXP (x2, 0);
09436 goto L2557;
09437
09438 L3568: ATTRIBUTE_UNUSED_LABEL
09439 if (GET_CODE (x3) == MEM)
09440 goto L2558;
09441 goto ret0;
09442
09443 L2558: ATTRIBUTE_UNUSED_LABEL
09444 x4 = XEXP (x3, 0);
09445 if (register_operand (x4, SImode))
09446 {
09447 operands[1] = x4;
09448 goto L2559;
09449 }
09450 goto ret0;
09451
09452 L2559: ATTRIBUTE_UNUSED_LABEL
09453 x3 = XEXP (x2, 1);
09454 operands[2] = x3;
09455 goto L2560;
09456
09457 L2560: ATTRIBUTE_UNUSED_LABEL
09458 x1 = XVECEXP (x0, 0, 1);
09459 if (GET_CODE (x1) == CLOBBER)
09460 goto L2561;
09461 goto ret0;
09462
09463 L2561: ATTRIBUTE_UNUSED_LABEL
09464 x2 = XEXP (x1, 0);
09465 if (register_operand (x2, SImode))
09466 {
09467 operands[3] = x2;
09468 goto L2562;
09469 }
09470 goto ret0;
09471
09472 L2562: ATTRIBUTE_UNUSED_LABEL
09473 if ((!TARGET_MIPS16
09474 && !(Pmode == DImode) && !TARGET_ABICALLS && TARGET_LONG_CALLS))
09475 {
09476 return 307;
09477 }
09478 L2582: ATTRIBUTE_UNUSED_LABEL
09479 if ((TARGET_MIPS16 && !(Pmode == DImode) && !TARGET_ABICALLS && TARGET_LONG_CALLS
09480 && GET_CODE (operands[3]) == REG && REGNO (operands[3]) == 31))
09481 {
09482 return 309;
09483 }
09484 L2592: ATTRIBUTE_UNUSED_LABEL
09485 if ((!(Pmode == DImode) && TARGET_ABICALLS && TARGET_LONG_CALLS))
09486 {
09487 return 310;
09488 }
09489 goto ret0;
09490
09491 L3569: ATTRIBUTE_UNUSED_LABEL
09492 if (GET_CODE (x3) == MEM)
09493 goto L2568;
09494 goto ret0;
09495
09496 L2568: ATTRIBUTE_UNUSED_LABEL
09497 x4 = XEXP (x3, 0);
09498 if (se_register_operand (x4, DImode))
09499 {
09500 operands[1] = x4;
09501 goto L2569;
09502 }
09503 goto ret0;
09504
09505 L2569: ATTRIBUTE_UNUSED_LABEL
09506 x3 = XEXP (x2, 1);
09507 operands[2] = x3;
09508 goto L2570;
09509
09510 L2570: ATTRIBUTE_UNUSED_LABEL
09511 x1 = XVECEXP (x0, 0, 1);
09512 if (GET_CODE (x1) == CLOBBER)
09513 goto L2571;
09514 goto ret0;
09515
09516 L2571: ATTRIBUTE_UNUSED_LABEL
09517 x2 = XEXP (x1, 0);
09518 if (register_operand (x2, SImode))
09519 {
09520 operands[3] = x2;
09521 goto L2572;
09522 }
09523 goto ret0;
09524
09525 L2572: ATTRIBUTE_UNUSED_LABEL
09526 if ((!TARGET_MIPS16
09527 && Pmode == DImode && !TARGET_ABICALLS && TARGET_LONG_CALLS))
09528 {
09529 return 308;
09530 }
09531 L2602: ATTRIBUTE_UNUSED_LABEL
09532 if ((Pmode == DImode && TARGET_ABICALLS && TARGET_LONG_CALLS))
09533 {
09534 return 311;
09535 }
09536 goto ret0;
09537 ret0:
09538 return -1;
09539 }
09540
09541 static int recog_7 PARAMS ((rtx, rtx, int *));
09542 static int
09543 recog_7 (x0, insn, pnum_clobbers)
09544 rtx x0 ATTRIBUTE_UNUSED;
09545 rtx insn ATTRIBUTE_UNUSED;
09546 int *pnum_clobbers ATTRIBUTE_UNUSED;
09547 {
09548 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
09549 rtx x1 ATTRIBUTE_UNUSED;
09550 rtx x2 ATTRIBUTE_UNUSED;
09551 rtx x3 ATTRIBUTE_UNUSED;
09552 rtx x4 ATTRIBUTE_UNUSED;
09553 rtx x5 ATTRIBUTE_UNUSED;
09554 rtx x6 ATTRIBUTE_UNUSED;
09555 rtx x7 ATTRIBUTE_UNUSED;
09556 int tem ATTRIBUTE_UNUSED;
09557
09558 x1 = XVECEXP (x0, 0, 0);
09559 x2 = XEXP (x1, 1);
09560 switch (GET_CODE (x2))
09561 {
09562 case MULT:
09563 goto L371;
09564 case NEG:
09565 goto L447;
09566 case MINUS:
09567 goto L470;
09568 case TRUNCATE:
09569 goto L579;
09570 case PLUS:
09571 goto L673;
09572 case DIV:
09573 goto L812;
09574 case UDIV:
09575 goto L862;
09576 case MOD:
09577 goto L958;
09578 case UMOD:
09579 goto L1026;
09580 case FFS:
09581 goto L1102;
09582 default:
09583 break;
09584 }
09585 goto ret0;
09586
09587 L371: ATTRIBUTE_UNUSED_LABEL
09588 x3 = XEXP (x2, 0);
09589 if (GET_MODE (x3) == DImode)
09590 goto L3601;
09591 goto ret0;
09592
09593 L3601: ATTRIBUTE_UNUSED_LABEL
09594 if (se_register_operand (x3, DImode))
09595 {
09596 operands[1] = x3;
09597 goto L372;
09598 }
09599 L3602: ATTRIBUTE_UNUSED_LABEL
09600 if (extend_operator (x3, DImode))
09601 {
09602 operands[3] = x3;
09603 goto L427;
09604 }
09605 goto ret0;
09606
09607 L372: ATTRIBUTE_UNUSED_LABEL
09608 x3 = XEXP (x2, 1);
09609 if (register_operand (x3, DImode))
09610 {
09611 operands[2] = x3;
09612 goto L373;
09613 }
09614 x3 = XEXP (x2, 0);
09615 goto L3602;
09616
09617 L373: ATTRIBUTE_UNUSED_LABEL
09618 x1 = XVECEXP (x0, 0, 1);
09619 if (GET_CODE (x1) == CLOBBER)
09620 goto L374;
09621 x1 = XVECEXP (x0, 0, 0);
09622 x2 = XEXP (x1, 1);
09623 x3 = XEXP (x2, 0);
09624 goto L3602;
09625
09626 L374: ATTRIBUTE_UNUSED_LABEL
09627 x2 = XEXP (x1, 0);
09628 if (scratch_operand (x2, DImode))
09629 {
09630 operands[3] = x2;
09631 goto L375;
09632 }
09633 x1 = XVECEXP (x0, 0, 0);
09634 x2 = XEXP (x1, 1);
09635 x3 = XEXP (x2, 0);
09636 goto L3602;
09637
09638 L375: ATTRIBUTE_UNUSED_LABEL
09639 x1 = XVECEXP (x0, 0, 2);
09640 if (GET_CODE (x1) == CLOBBER)
09641 goto L376;
09642 x1 = XVECEXP (x0, 0, 0);
09643 x2 = XEXP (x1, 1);
09644 x3 = XEXP (x2, 0);
09645 goto L3602;
09646
09647 L376: ATTRIBUTE_UNUSED_LABEL
09648 x2 = XEXP (x1, 0);
09649 if (scratch_operand (x2, DImode))
09650 {
09651 operands[4] = x2;
09652 goto L377;
09653 }
09654 x1 = XVECEXP (x0, 0, 0);
09655 x2 = XEXP (x1, 1);
09656 x3 = XEXP (x2, 0);
09657 goto L3602;
09658
09659 L377: ATTRIBUTE_UNUSED_LABEL
09660 if ((TARGET_64BIT && !TARGET_MIPS4000 && !TARGET_MIPS16))
09661 {
09662 return 41;
09663 }
09664 x1 = XVECEXP (x0, 0, 0);
09665 x2 = XEXP (x1, 1);
09666 x3 = XEXP (x2, 0);
09667 goto L3602;
09668
09669 L427: ATTRIBUTE_UNUSED_LABEL
09670 x4 = XEXP (x3, 0);
09671 if (register_operand (x4, SImode))
09672 {
09673 operands[1] = x4;
09674 goto L428;
09675 }
09676 goto ret0;
09677
09678 L428: ATTRIBUTE_UNUSED_LABEL
09679 x3 = XEXP (x2, 1);
09680 if (extend_operator (x3, DImode))
09681 {
09682 operands[4] = x3;
09683 goto L429;
09684 }
09685 goto ret0;
09686
09687 L429: ATTRIBUTE_UNUSED_LABEL
09688 x4 = XEXP (x3, 0);
09689 if (register_operand (x4, SImode))
09690 {
09691 operands[2] = x4;
09692 goto L430;
09693 }
09694 goto ret0;
09695
09696 L430: ATTRIBUTE_UNUSED_LABEL
09697 x1 = XVECEXP (x0, 0, 1);
09698 if (GET_CODE (x1) == CLOBBER)
09699 goto L431;
09700 goto ret0;
09701
09702 L431: ATTRIBUTE_UNUSED_LABEL
09703 x2 = XEXP (x1, 0);
09704 if (scratch_operand (x2, DImode))
09705 {
09706 operands[5] = x2;
09707 goto L432;
09708 }
09709 goto ret0;
09710
09711 L432: ATTRIBUTE_UNUSED_LABEL
09712 x1 = XVECEXP (x0, 0, 2);
09713 if (GET_CODE (x1) == CLOBBER)
09714 goto L433;
09715 goto ret0;
09716
09717 L433: ATTRIBUTE_UNUSED_LABEL
09718 x2 = XEXP (x1, 0);
09719 if (scratch_operand (x2, DImode))
09720 {
09721 operands[6] = x2;
09722 goto L434;
09723 }
09724 goto ret0;
09725
09726 L434: ATTRIBUTE_UNUSED_LABEL
09727 if ((TARGET_64BIT && GET_CODE (operands[3]) == GET_CODE (operands[4])))
09728 {
09729 return 44;
09730 }
09731 goto ret0;
09732
09733 L447: ATTRIBUTE_UNUSED_LABEL
09734 x3 = XEXP (x2, 0);
09735 if (GET_MODE (x3) == DImode
09736 && GET_CODE (x3) == MULT)
09737 goto L448;
09738 goto ret0;
09739
09740 L448: ATTRIBUTE_UNUSED_LABEL
09741 x4 = XEXP (x3, 0);
09742 if (extend_operator (x4, DImode))
09743 {
09744 operands[3] = x4;
09745 goto L449;
09746 }
09747 goto ret0;
09748
09749 L449: ATTRIBUTE_UNUSED_LABEL
09750 x5 = XEXP (x4, 0);
09751 if (register_operand (x5, SImode))
09752 {
09753 operands[1] = x5;
09754 goto L450;
09755 }
09756 goto ret0;
09757
09758 L450: ATTRIBUTE_UNUSED_LABEL
09759 x4 = XEXP (x3, 1);
09760 if (extend_operator (x4, DImode))
09761 {
09762 operands[4] = x4;
09763 goto L451;
09764 }
09765 goto ret0;
09766
09767 L451: ATTRIBUTE_UNUSED_LABEL
09768 x5 = XEXP (x4, 0);
09769 if (register_operand (x5, SImode))
09770 {
09771 operands[2] = x5;
09772 goto L452;
09773 }
09774 goto ret0;
09775
09776 L452: ATTRIBUTE_UNUSED_LABEL
09777 x1 = XVECEXP (x0, 0, 1);
09778 if (GET_CODE (x1) == CLOBBER)
09779 goto L453;
09780 goto ret0;
09781
09782 L453: ATTRIBUTE_UNUSED_LABEL
09783 x2 = XEXP (x1, 0);
09784 if (scratch_operand (x2, SImode))
09785 {
09786 operands[5] = x2;
09787 goto L454;
09788 }
09789 goto ret0;
09790
09791 L454: ATTRIBUTE_UNUSED_LABEL
09792 x1 = XVECEXP (x0, 0, 2);
09793 if (GET_CODE (x1) == CLOBBER)
09794 goto L455;
09795 goto ret0;
09796
09797 L455: ATTRIBUTE_UNUSED_LABEL
09798 x2 = XEXP (x1, 0);
09799 if (scratch_operand (x2, SImode))
09800 {
09801 operands[6] = x2;
09802 goto L456;
09803 }
09804 goto ret0;
09805
09806 L456: ATTRIBUTE_UNUSED_LABEL
09807 if ((TARGET_64BIT
09808 && ISA_HAS_MULS
09809 && GET_CODE (operands[3]) == GET_CODE (operands[4])))
09810 {
09811 return 45;
09812 }
09813 goto ret0;
09814
09815 L470: ATTRIBUTE_UNUSED_LABEL
09816 x3 = XEXP (x2, 0);
09817 if (register_operand (x3, DImode))
09818 {
09819 operands[3] = x3;
09820 goto L471;
09821 }
09822 goto ret0;
09823
09824 L471: ATTRIBUTE_UNUSED_LABEL
09825 x3 = XEXP (x2, 1);
09826 if (GET_MODE (x3) == DImode
09827 && GET_CODE (x3) == MULT)
09828 goto L472;
09829 goto ret0;
09830
09831 L472: ATTRIBUTE_UNUSED_LABEL
09832 x4 = XEXP (x3, 0);
09833 if (extend_operator (x4, DImode))
09834 {
09835 operands[4] = x4;
09836 goto L473;
09837 }
09838 goto ret0;
09839
09840 L473: ATTRIBUTE_UNUSED_LABEL
09841 x5 = XEXP (x4, 0);
09842 if (register_operand (x5, SImode))
09843 {
09844 operands[1] = x5;
09845 goto L474;
09846 }
09847 goto ret0;
09848
09849 L474: ATTRIBUTE_UNUSED_LABEL
09850 x4 = XEXP (x3, 1);
09851 if (extend_operator (x4, DImode))
09852 {
09853 operands[5] = x4;
09854 goto L475;
09855 }
09856 goto ret0;
09857
09858 L475: ATTRIBUTE_UNUSED_LABEL
09859 x5 = XEXP (x4, 0);
09860 if (register_operand (x5, SImode))
09861 {
09862 operands[2] = x5;
09863 goto L476;
09864 }
09865 goto ret0;
09866
09867 L476: ATTRIBUTE_UNUSED_LABEL
09868 x1 = XVECEXP (x0, 0, 1);
09869 if (GET_CODE (x1) == CLOBBER)
09870 goto L477;
09871 goto ret0;
09872
09873 L477: ATTRIBUTE_UNUSED_LABEL
09874 x2 = XEXP (x1, 0);
09875 if (scratch_operand (x2, SImode))
09876 {
09877 operands[6] = x2;
09878 goto L478;
09879 }
09880 goto ret0;
09881
09882 L478: ATTRIBUTE_UNUSED_LABEL
09883 x1 = XVECEXP (x0, 0, 2);
09884 if (GET_CODE (x1) == CLOBBER)
09885 goto L479;
09886 goto ret0;
09887
09888 L479: ATTRIBUTE_UNUSED_LABEL
09889 x2 = XEXP (x1, 0);
09890 if (scratch_operand (x2, SImode))
09891 {
09892 operands[7] = x2;
09893 goto L480;
09894 }
09895 goto ret0;
09896
09897 L480: ATTRIBUTE_UNUSED_LABEL
09898 if ((TARGET_64BIT
09899 && ISA_HAS_MSAC
09900 && GET_CODE (operands[4]) == GET_CODE (operands[5])))
09901 {
09902 return 46;
09903 }
09904 goto ret0;
09905
09906 L579: ATTRIBUTE_UNUSED_LABEL
09907 x3 = XEXP (x2, 0);
09908 if (GET_MODE (x3) == TImode
09909 && GET_CODE (x3) == LSHIFTRT)
09910 goto L580;
09911 goto ret0;
09912
09913 L580: ATTRIBUTE_UNUSED_LABEL
09914 x4 = XEXP (x3, 0);
09915 if (GET_MODE (x4) == TImode
09916 && GET_CODE (x4) == MULT)
09917 goto L581;
09918 goto ret0;
09919
09920 L581: ATTRIBUTE_UNUSED_LABEL
09921 x5 = XEXP (x4, 0);
09922 if (GET_MODE (x5) == TImode)
09923 goto L3603;
09924 goto ret0;
09925
09926 L3603: ATTRIBUTE_UNUSED_LABEL
09927 switch (GET_CODE (x5))
09928 {
09929 case SIGN_EXTEND:
09930 goto L582;
09931 case ZERO_EXTEND:
09932 goto L608;
09933 default:
09934 break;
09935 }
09936 goto ret0;
09937
09938 L582: ATTRIBUTE_UNUSED_LABEL
09939 x6 = XEXP (x5, 0);
09940 if (se_register_operand (x6, DImode))
09941 {
09942 operands[1] = x6;
09943 goto L583;
09944 }
09945 goto ret0;
09946
09947 L583: ATTRIBUTE_UNUSED_LABEL
09948 x5 = XEXP (x4, 1);
09949 if (GET_MODE (x5) == TImode
09950 && GET_CODE (x5) == SIGN_EXTEND)
09951 goto L584;
09952 goto ret0;
09953
09954 L584: ATTRIBUTE_UNUSED_LABEL
09955 x6 = XEXP (x5, 0);
09956 if (se_register_operand (x6, DImode))
09957 {
09958 operands[2] = x6;
09959 goto L585;
09960 }
09961 goto ret0;
09962
09963 L585: ATTRIBUTE_UNUSED_LABEL
09964 x4 = XEXP (x3, 1);
09965 if (GET_CODE (x4) == CONST_INT
09966 && XWINT (x4, 0) == 64LL)
09967 goto L586;
09968 goto ret0;
09969
09970 L586: ATTRIBUTE_UNUSED_LABEL
09971 x1 = XVECEXP (x0, 0, 1);
09972 if (GET_CODE (x1) == CLOBBER)
09973 goto L587;
09974 goto ret0;
09975
09976 L587: ATTRIBUTE_UNUSED_LABEL
09977 x2 = XEXP (x1, 0);
09978 if (scratch_operand (x2, DImode))
09979 {
09980 operands[3] = x2;
09981 goto L588;
09982 }
09983 goto ret0;
09984
09985 L588: ATTRIBUTE_UNUSED_LABEL
09986 x1 = XVECEXP (x0, 0, 2);
09987 if (GET_CODE (x1) == CLOBBER)
09988 goto L589;
09989 goto ret0;
09990
09991 L589: ATTRIBUTE_UNUSED_LABEL
09992 x2 = XEXP (x1, 0);
09993 if (scratch_operand (x2, DImode))
09994 {
09995 operands[4] = x2;
09996 goto L590;
09997 }
09998 goto ret0;
09999
10000 L590: ATTRIBUTE_UNUSED_LABEL
10001 if ((TARGET_64BIT))
10002 {
10003 return 50;
10004 }
10005 goto ret0;
10006
10007 L608: ATTRIBUTE_UNUSED_LABEL
10008 x6 = XEXP (x5, 0);
10009 if (se_register_operand (x6, DImode))
10010 {
10011 operands[1] = x6;
10012 goto L609;
10013 }
10014 goto ret0;
10015
10016 L609: ATTRIBUTE_UNUSED_LABEL
10017 x5 = XEXP (x4, 1);
10018 if (GET_MODE (x5) == TImode
10019 && GET_CODE (x5) == ZERO_EXTEND)
10020 goto L610;
10021 goto ret0;
10022
10023 L610: ATTRIBUTE_UNUSED_LABEL
10024 x6 = XEXP (x5, 0);
10025 if (se_register_operand (x6, DImode))
10026 {
10027 operands[2] = x6;
10028 goto L611;
10029 }
10030 goto ret0;
10031
10032 L611: ATTRIBUTE_UNUSED_LABEL
10033 x4 = XEXP (x3, 1);
10034 if (GET_CODE (x4) == CONST_INT
10035 && XWINT (x4, 0) == 64LL)
10036 goto L612;
10037 goto ret0;
10038
10039 L612: ATTRIBUTE_UNUSED_LABEL
10040 x1 = XVECEXP (x0, 0, 1);
10041 if (GET_CODE (x1) == CLOBBER)
10042 goto L613;
10043 goto ret0;
10044
10045 L613: ATTRIBUTE_UNUSED_LABEL
10046 x2 = XEXP (x1, 0);
10047 if (scratch_operand (x2, DImode))
10048 {
10049 operands[3] = x2;
10050 goto L614;
10051 }
10052 goto ret0;
10053
10054 L614: ATTRIBUTE_UNUSED_LABEL
10055 x1 = XVECEXP (x0, 0, 2);
10056 if (GET_CODE (x1) == CLOBBER)
10057 goto L615;
10058 goto ret0;
10059
10060 L615: ATTRIBUTE_UNUSED_LABEL
10061 x2 = XEXP (x1, 0);
10062 if (scratch_operand (x2, DImode))
10063 {
10064 operands[4] = x2;
10065 goto L616;
10066 }
10067 goto ret0;
10068
10069 L616: ATTRIBUTE_UNUSED_LABEL
10070 if ((TARGET_64BIT))
10071 {
10072 return 51;
10073 }
10074 goto ret0;
10075
10076 L673: ATTRIBUTE_UNUSED_LABEL
10077 x3 = XEXP (x2, 0);
10078 if (GET_MODE (x3) == DImode
10079 && GET_CODE (x3) == MULT)
10080 goto L674;
10081 goto ret0;
10082
10083 L674: ATTRIBUTE_UNUSED_LABEL
10084 x4 = XEXP (x3, 0);
10085 if (extend_operator (x4, DImode))
10086 {
10087 operands[3] = x4;
10088 goto L675;
10089 }
10090 goto ret0;
10091
10092 L675: ATTRIBUTE_UNUSED_LABEL
10093 x5 = XEXP (x4, 0);
10094 if (register_operand (x5, SImode))
10095 {
10096 operands[1] = x5;
10097 goto L676;
10098 }
10099 goto ret0;
10100
10101 L676: ATTRIBUTE_UNUSED_LABEL
10102 x4 = XEXP (x3, 1);
10103 if (extend_operator (x4, DImode))
10104 {
10105 operands[4] = x4;
10106 goto L677;
10107 }
10108 goto ret0;
10109
10110 L677: ATTRIBUTE_UNUSED_LABEL
10111 x5 = XEXP (x4, 0);
10112 if (register_operand (x5, SImode))
10113 {
10114 operands[2] = x5;
10115 goto L678;
10116 }
10117 goto ret0;
10118
10119 L678: ATTRIBUTE_UNUSED_LABEL
10120 x3 = XEXP (x2, 1);
10121 if (rtx_equal_p (x3, operands[0]))
10122 goto L679;
10123 goto ret0;
10124
10125 L679: ATTRIBUTE_UNUSED_LABEL
10126 x1 = XVECEXP (x0, 0, 1);
10127 if (GET_CODE (x1) == CLOBBER)
10128 goto L680;
10129 goto ret0;
10130
10131 L680: ATTRIBUTE_UNUSED_LABEL
10132 x2 = XEXP (x1, 0);
10133 if (scratch_operand (x2, SImode))
10134 {
10135 operands[5] = x2;
10136 goto L681;
10137 }
10138 goto ret0;
10139
10140 L681: ATTRIBUTE_UNUSED_LABEL
10141 x1 = XVECEXP (x0, 0, 2);
10142 if (GET_CODE (x1) == CLOBBER)
10143 goto L682;
10144 goto ret0;
10145
10146 L682: ATTRIBUTE_UNUSED_LABEL
10147 x2 = XEXP (x1, 0);
10148 if (scratch_operand (x2, SImode))
10149 {
10150 operands[6] = x2;
10151 goto L683;
10152 }
10153 goto ret0;
10154
10155 L683: ATTRIBUTE_UNUSED_LABEL
10156 if ((TARGET_MAD
10157 && TARGET_64BIT
10158 && GET_CODE (operands[3]) == GET_CODE (operands[4])))
10159 {
10160 return 54;
10161 }
10162 goto ret0;
10163
10164 L812: ATTRIBUTE_UNUSED_LABEL
10165 x3 = XEXP (x2, 0);
10166 if (se_register_operand (x3, DImode))
10167 {
10168 operands[1] = x3;
10169 goto L813;
10170 }
10171 goto ret0;
10172
10173 L813: ATTRIBUTE_UNUSED_LABEL
10174 x3 = XEXP (x2, 1);
10175 if (se_register_operand (x3, DImode))
10176 {
10177 operands[2] = x3;
10178 goto L814;
10179 }
10180 L925: ATTRIBUTE_UNUSED_LABEL
10181 if (se_nonmemory_operand (x3, DImode))
10182 {
10183 operands[2] = x3;
10184 goto L926;
10185 }
10186 goto ret0;
10187
10188 L814: ATTRIBUTE_UNUSED_LABEL
10189 x1 = XVECEXP (x0, 0, 1);
10190 if (GET_CODE (x1) == SET)
10191 goto L815;
10192 x1 = XVECEXP (x0, 0, 0);
10193 x2 = XEXP (x1, 1);
10194 x3 = XEXP (x2, 1);
10195 goto L925;
10196
10197 L815: ATTRIBUTE_UNUSED_LABEL
10198 x2 = XEXP (x1, 0);
10199 if (register_operand (x2, DImode))
10200 {
10201 operands[3] = x2;
10202 goto L816;
10203 }
10204 x1 = XVECEXP (x0, 0, 0);
10205 x2 = XEXP (x1, 1);
10206 x3 = XEXP (x2, 1);
10207 goto L925;
10208
10209 L816: ATTRIBUTE_UNUSED_LABEL
10210 x2 = XEXP (x1, 1);
10211 if (GET_MODE (x2) == DImode
10212 && GET_CODE (x2) == MOD)
10213 goto L817;
10214 x1 = XVECEXP (x0, 0, 0);
10215 x2 = XEXP (x1, 1);
10216 x3 = XEXP (x2, 1);
10217 goto L925;
10218
10219 L817: ATTRIBUTE_UNUSED_LABEL
10220 x3 = XEXP (x2, 0);
10221 if (rtx_equal_p (x3, operands[1]))
10222 goto L818;
10223 x1 = XVECEXP (x0, 0, 0);
10224 x2 = XEXP (x1, 1);
10225 x3 = XEXP (x2, 1);
10226 goto L925;
10227
10228 L818: ATTRIBUTE_UNUSED_LABEL
10229 x3 = XEXP (x2, 1);
10230 if (rtx_equal_p (x3, operands[2]))
10231 goto L819;
10232 x1 = XVECEXP (x0, 0, 0);
10233 x2 = XEXP (x1, 1);
10234 x3 = XEXP (x2, 1);
10235 goto L925;
10236
10237 L819: ATTRIBUTE_UNUSED_LABEL
10238 x1 = XVECEXP (x0, 0, 2);
10239 if (GET_CODE (x1) == CLOBBER)
10240 goto L820;
10241 x1 = XVECEXP (x0, 0, 0);
10242 x2 = XEXP (x1, 1);
10243 x3 = XEXP (x2, 1);
10244 goto L925;
10245
10246 L820: ATTRIBUTE_UNUSED_LABEL
10247 x2 = XEXP (x1, 0);
10248 if (scratch_operand (x2, DImode))
10249 {
10250 operands[4] = x2;
10251 goto L821;
10252 }
10253 x1 = XVECEXP (x0, 0, 0);
10254 x2 = XEXP (x1, 1);
10255 x3 = XEXP (x2, 1);
10256 goto L925;
10257
10258 L821: ATTRIBUTE_UNUSED_LABEL
10259 if ((TARGET_64BIT && optimize))
10260 {
10261 return 68;
10262 }
10263 x1 = XVECEXP (x0, 0, 0);
10264 x2 = XEXP (x1, 1);
10265 x3 = XEXP (x2, 1);
10266 goto L925;
10267
10268 L926: ATTRIBUTE_UNUSED_LABEL
10269 x1 = XVECEXP (x0, 0, 1);
10270 if (GET_CODE (x1) == CLOBBER)
10271 goto L927;
10272 goto ret0;
10273
10274 L927: ATTRIBUTE_UNUSED_LABEL
10275 x2 = XEXP (x1, 0);
10276 if (scratch_operand (x2, SImode))
10277 {
10278 operands[3] = x2;
10279 goto L928;
10280 }
10281 goto ret0;
10282
10283 L928: ATTRIBUTE_UNUSED_LABEL
10284 x1 = XVECEXP (x0, 0, 2);
10285 if (GET_CODE (x1) == CLOBBER)
10286 goto L929;
10287 goto ret0;
10288
10289 L929: ATTRIBUTE_UNUSED_LABEL
10290 x2 = XEXP (x1, 0);
10291 if (scratch_operand (x2, SImode))
10292 {
10293 operands[4] = x2;
10294 goto L930;
10295 }
10296 goto ret0;
10297
10298 L930: ATTRIBUTE_UNUSED_LABEL
10299 if ((TARGET_64BIT && !optimize))
10300 {
10301 return 74;
10302 }
10303 goto ret0;
10304
10305 L862: ATTRIBUTE_UNUSED_LABEL
10306 x3 = XEXP (x2, 0);
10307 if (se_register_operand (x3, DImode))
10308 {
10309 operands[1] = x3;
10310 goto L863;
10311 }
10312 goto ret0;
10313
10314 L863: ATTRIBUTE_UNUSED_LABEL
10315 x3 = XEXP (x2, 1);
10316 if (se_register_operand (x3, DImode))
10317 {
10318 operands[2] = x3;
10319 goto L864;
10320 }
10321 L993: ATTRIBUTE_UNUSED_LABEL
10322 if (se_nonmemory_operand (x3, DImode))
10323 {
10324 operands[2] = x3;
10325 goto L994;
10326 }
10327 goto ret0;
10328
10329 L864: ATTRIBUTE_UNUSED_LABEL
10330 x1 = XVECEXP (x0, 0, 1);
10331 if (GET_CODE (x1) == SET)
10332 goto L865;
10333 x1 = XVECEXP (x0, 0, 0);
10334 x2 = XEXP (x1, 1);
10335 x3 = XEXP (x2, 1);
10336 goto L993;
10337
10338 L865: ATTRIBUTE_UNUSED_LABEL
10339 x2 = XEXP (x1, 0);
10340 if (register_operand (x2, DImode))
10341 {
10342 operands[3] = x2;
10343 goto L866;
10344 }
10345 x1 = XVECEXP (x0, 0, 0);
10346 x2 = XEXP (x1, 1);
10347 x3 = XEXP (x2, 1);
10348 goto L993;
10349
10350 L866: ATTRIBUTE_UNUSED_LABEL
10351 x2 = XEXP (x1, 1);
10352 if (GET_MODE (x2) == DImode
10353 && GET_CODE (x2) == UMOD)
10354 goto L867;
10355 x1 = XVECEXP (x0, 0, 0);
10356 x2 = XEXP (x1, 1);
10357 x3 = XEXP (x2, 1);
10358 goto L993;
10359
10360 L867: ATTRIBUTE_UNUSED_LABEL
10361 x3 = XEXP (x2, 0);
10362 if (rtx_equal_p (x3, operands[1]))
10363 goto L868;
10364 x1 = XVECEXP (x0, 0, 0);
10365 x2 = XEXP (x1, 1);
10366 x3 = XEXP (x2, 1);
10367 goto L993;
10368
10369 L868: ATTRIBUTE_UNUSED_LABEL
10370 x3 = XEXP (x2, 1);
10371 if (rtx_equal_p (x3, operands[2]))
10372 goto L869;
10373 x1 = XVECEXP (x0, 0, 0);
10374 x2 = XEXP (x1, 1);
10375 x3 = XEXP (x2, 1);
10376 goto L993;
10377
10378 L869: ATTRIBUTE_UNUSED_LABEL
10379 x1 = XVECEXP (x0, 0, 2);
10380 if (GET_CODE (x1) == CLOBBER)
10381 goto L870;
10382 x1 = XVECEXP (x0, 0, 0);
10383 x2 = XEXP (x1, 1);
10384 x3 = XEXP (x2, 1);
10385 goto L993;
10386
10387 L870: ATTRIBUTE_UNUSED_LABEL
10388 x2 = XEXP (x1, 0);
10389 if (scratch_operand (x2, DImode))
10390 {
10391 operands[4] = x2;
10392 goto L871;
10393 }
10394 x1 = XVECEXP (x0, 0, 0);
10395 x2 = XEXP (x1, 1);
10396 x3 = XEXP (x2, 1);
10397 goto L993;
10398
10399 L871: ATTRIBUTE_UNUSED_LABEL
10400 if ((TARGET_64BIT && optimize))
10401 {
10402 return 70;
10403 }
10404 x1 = XVECEXP (x0, 0, 0);
10405 x2 = XEXP (x1, 1);
10406 x3 = XEXP (x2, 1);
10407 goto L993;
10408
10409 L994: ATTRIBUTE_UNUSED_LABEL
10410 x1 = XVECEXP (x0, 0, 1);
10411 if (GET_CODE (x1) == CLOBBER)
10412 goto L995;
10413 goto ret0;
10414
10415 L995: ATTRIBUTE_UNUSED_LABEL
10416 x2 = XEXP (x1, 0);
10417 if (scratch_operand (x2, SImode))
10418 {
10419 operands[3] = x2;
10420 goto L996;
10421 }
10422 goto ret0;
10423
10424 L996: ATTRIBUTE_UNUSED_LABEL
10425 x1 = XVECEXP (x0, 0, 2);
10426 if (GET_CODE (x1) == CLOBBER)
10427 goto L997;
10428 goto ret0;
10429
10430 L997: ATTRIBUTE_UNUSED_LABEL
10431 x2 = XEXP (x1, 0);
10432 if (scratch_operand (x2, SImode))
10433 {
10434 operands[4] = x2;
10435 goto L998;
10436 }
10437 goto ret0;
10438
10439 L998: ATTRIBUTE_UNUSED_LABEL
10440 if ((TARGET_64BIT && !optimize))
10441 {
10442 return 78;
10443 }
10444 goto ret0;
10445
10446 L958: ATTRIBUTE_UNUSED_LABEL
10447 x3 = XEXP (x2, 0);
10448 if (se_register_operand (x3, DImode))
10449 {
10450 operands[1] = x3;
10451 goto L959;
10452 }
10453 goto ret0;
10454
10455 L959: ATTRIBUTE_UNUSED_LABEL
10456 x3 = XEXP (x2, 1);
10457 if (se_nonmemory_operand (x3, DImode))
10458 {
10459 operands[2] = x3;
10460 goto L960;
10461 }
10462 goto ret0;
10463
10464 L960: ATTRIBUTE_UNUSED_LABEL
10465 x1 = XVECEXP (x0, 0, 1);
10466 if (GET_CODE (x1) == CLOBBER)
10467 goto L961;
10468 goto ret0;
10469
10470 L961: ATTRIBUTE_UNUSED_LABEL
10471 x2 = XEXP (x1, 0);
10472 if (scratch_operand (x2, SImode))
10473 {
10474 operands[3] = x2;
10475 goto L962;
10476 }
10477 goto ret0;
10478
10479 L962: ATTRIBUTE_UNUSED_LABEL
10480 x1 = XVECEXP (x0, 0, 2);
10481 if (GET_CODE (x1) == CLOBBER)
10482 goto L963;
10483 goto ret0;
10484
10485 L963: ATTRIBUTE_UNUSED_LABEL
10486 x2 = XEXP (x1, 0);
10487 if (scratch_operand (x2, SImode))
10488 {
10489 operands[4] = x2;
10490 goto L964;
10491 }
10492 goto ret0;
10493
10494 L964: ATTRIBUTE_UNUSED_LABEL
10495 if ((TARGET_64BIT && !optimize))
10496 {
10497 return 76;
10498 }
10499 goto ret0;
10500
10501 L1026: ATTRIBUTE_UNUSED_LABEL
10502 x3 = XEXP (x2, 0);
10503 if (se_register_operand (x3, DImode))
10504 {
10505 operands[1] = x3;
10506 goto L1027;
10507 }
10508 goto ret0;
10509
10510 L1027: ATTRIBUTE_UNUSED_LABEL
10511 x3 = XEXP (x2, 1);
10512 if (se_nonmemory_operand (x3, DImode))
10513 {
10514 operands[2] = x3;
10515 goto L1028;
10516 }
10517 goto ret0;
10518
10519 L1028: ATTRIBUTE_UNUSED_LABEL
10520 x1 = XVECEXP (x0, 0, 1);
10521 if (GET_CODE (x1) == CLOBBER)
10522 goto L1029;
10523 goto ret0;
10524
10525 L1029: ATTRIBUTE_UNUSED_LABEL
10526 x2 = XEXP (x1, 0);
10527 if (scratch_operand (x2, SImode))
10528 {
10529 operands[3] = x2;
10530 goto L1030;
10531 }
10532 goto ret0;
10533
10534 L1030: ATTRIBUTE_UNUSED_LABEL
10535 x1 = XVECEXP (x0, 0, 2);
10536 if (GET_CODE (x1) == CLOBBER)
10537 goto L1031;
10538 goto ret0;
10539
10540 L1031: ATTRIBUTE_UNUSED_LABEL
10541 x2 = XEXP (x1, 0);
10542 if (scratch_operand (x2, SImode))
10543 {
10544 operands[4] = x2;
10545 goto L1032;
10546 }
10547 goto ret0;
10548
10549 L1032: ATTRIBUTE_UNUSED_LABEL
10550 if ((TARGET_64BIT && !optimize))
10551 {
10552 return 80;
10553 }
10554 goto ret0;
10555
10556 L1102: ATTRIBUTE_UNUSED_LABEL
10557 x3 = XEXP (x2, 0);
10558 if (se_register_operand (x3, DImode))
10559 {
10560 operands[1] = x3;
10561 goto L1103;
10562 }
10563 goto ret0;
10564
10565 L1103: ATTRIBUTE_UNUSED_LABEL
10566 x1 = XVECEXP (x0, 0, 1);
10567 if (GET_CODE (x1) == CLOBBER)
10568 goto L1104;
10569 goto ret0;
10570
10571 L1104: ATTRIBUTE_UNUSED_LABEL
10572 x2 = XEXP (x1, 0);
10573 if (scratch_operand (x2, DImode))
10574 {
10575 operands[2] = x2;
10576 goto L1105;
10577 }
10578 goto ret0;
10579
10580 L1105: ATTRIBUTE_UNUSED_LABEL
10581 x1 = XVECEXP (x0, 0, 2);
10582 if (GET_CODE (x1) == CLOBBER)
10583 goto L1106;
10584 goto ret0;
10585
10586 L1106: ATTRIBUTE_UNUSED_LABEL
10587 x2 = XEXP (x1, 0);
10588 if (scratch_operand (x2, DImode))
10589 {
10590 operands[3] = x2;
10591 goto L1107;
10592 }
10593 goto ret0;
10594
10595 L1107: ATTRIBUTE_UNUSED_LABEL
10596 if ((TARGET_64BIT && !TARGET_MIPS16))
10597 {
10598 return 90;
10599 }
10600 goto ret0;
10601 ret0:
10602 return -1;
10603 }
10604
10605 static int recog_8 PARAMS ((rtx, rtx, int *));
10606 static int
10607 recog_8 (x0, insn, pnum_clobbers)
10608 rtx x0 ATTRIBUTE_UNUSED;
10609 rtx insn ATTRIBUTE_UNUSED;
10610 int *pnum_clobbers ATTRIBUTE_UNUSED;
10611 {
10612 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
10613 rtx x1 ATTRIBUTE_UNUSED;
10614 rtx x2 ATTRIBUTE_UNUSED;
10615 rtx x3 ATTRIBUTE_UNUSED;
10616 rtx x4 ATTRIBUTE_UNUSED;
10617 rtx x5 ATTRIBUTE_UNUSED;
10618 rtx x6 ATTRIBUTE_UNUSED;
10619 rtx x7 ATTRIBUTE_UNUSED;
10620 int tem ATTRIBUTE_UNUSED;
10621
10622 x1 = XVECEXP (x0, 0, 0);
10623 x2 = XEXP (x1, 0);
10624 switch (GET_MODE (x2))
10625 {
10626 case SImode:
10627 goto L3581;
10628 case DImode:
10629 goto L3582;
10630 default:
10631 break;
10632 }
10633 L2366: ATTRIBUTE_UNUSED_LABEL
10634 if (GET_CODE (x2) == PC)
10635 goto L2367;
10636 if (register_operand (x2, VOIDmode))
10637 {
10638 operands[0] = x2;
10639 goto L2606;
10640 }
10641 goto ret0;
10642
10643 L3581: ATTRIBUTE_UNUSED_LABEL
10644 if (register_operand (x2, SImode))
10645 {
10646 operands[0] = x2;
10647 goto L238;
10648 }
10649 goto L2366;
10650
10651 L238: ATTRIBUTE_UNUSED_LABEL
10652 x2 = XEXP (x1, 1);
10653 if (GET_MODE (x2) == SImode)
10654 goto L3583;
10655 x2 = XEXP (x1, 0);
10656 goto L2366;
10657
10658 L3583: ATTRIBUTE_UNUSED_LABEL
10659 switch (GET_CODE (x2))
10660 {
10661 case MULT:
10662 goto L239;
10663 case TRUNCATE:
10664 goto L495;
10665 case PLUS:
10666 goto L631;
10667 case DIV:
10668 goto L787;
10669 case UDIV:
10670 goto L837;
10671 case MOD:
10672 goto L941;
10673 case UMOD:
10674 goto L1009;
10675 case FFS:
10676 goto L1087;
10677 default:
10678 break;
10679 }
10680 x2 = XEXP (x1, 0);
10681 goto L2366;
10682
10683 L239: ATTRIBUTE_UNUSED_LABEL
10684 x3 = XEXP (x2, 0);
10685 if (register_operand (x3, SImode))
10686 {
10687 operands[1] = x3;
10688 goto L240;
10689 }
10690 x2 = XEXP (x1, 0);
10691 goto L2366;
10692
10693 L240: ATTRIBUTE_UNUSED_LABEL
10694 x3 = XEXP (x2, 1);
10695 if (register_operand (x3, SImode))
10696 {
10697 operands[2] = x3;
10698 goto L241;
10699 }
10700 x2 = XEXP (x1, 0);
10701 goto L2366;
10702
10703 L241: ATTRIBUTE_UNUSED_LABEL
10704 x1 = XVECEXP (x0, 0, 1);
10705 if (GET_CODE (x1) == CLOBBER)
10706 goto L242;
10707 x1 = XVECEXP (x0, 0, 0);
10708 x2 = XEXP (x1, 0);
10709 goto L2366;
10710
10711 L242: ATTRIBUTE_UNUSED_LABEL
10712 x2 = XEXP (x1, 0);
10713 if (scratch_operand (x2, SImode))
10714 {
10715 operands[3] = x2;
10716 goto L243;
10717 }
10718 x1 = XVECEXP (x0, 0, 0);
10719 x2 = XEXP (x1, 0);
10720 goto L2366;
10721
10722 L243: ATTRIBUTE_UNUSED_LABEL
10723 x1 = XVECEXP (x0, 0, 2);
10724 if (GET_CODE (x1) == CLOBBER)
10725 goto L244;
10726 x1 = XVECEXP (x0, 0, 0);
10727 x2 = XEXP (x1, 0);
10728 goto L2366;
10729
10730 L244: ATTRIBUTE_UNUSED_LABEL
10731 x2 = XEXP (x1, 0);
10732 if (scratch_operand (x2, SImode))
10733 {
10734 operands[4] = x2;
10735 goto L245;
10736 }
10737 x1 = XVECEXP (x0, 0, 0);
10738 x2 = XEXP (x1, 0);
10739 goto L2366;
10740
10741 L245: ATTRIBUTE_UNUSED_LABEL
10742 if ((!TARGET_MIPS4000 || TARGET_MIPS16))
10743 {
10744 return 35;
10745 }
10746 x1 = XVECEXP (x0, 0, 0);
10747 x2 = XEXP (x1, 0);
10748 goto L2366;
10749
10750 L495: ATTRIBUTE_UNUSED_LABEL
10751 x3 = XEXP (x2, 0);
10752 if (highpart_shift_operator (x3, DImode))
10753 {
10754 operands[5] = x3;
10755 goto L496;
10756 }
10757 x2 = XEXP (x1, 0);
10758 goto L2366;
10759
10760 L496: ATTRIBUTE_UNUSED_LABEL
10761 x4 = XEXP (x3, 0);
10762 if (GET_MODE (x4) == DImode
10763 && GET_CODE (x4) == MULT)
10764 goto L497;
10765 x2 = XEXP (x1, 0);
10766 goto L2366;
10767
10768 L497: ATTRIBUTE_UNUSED_LABEL
10769 x5 = XEXP (x4, 0);
10770 if (extend_operator (x5, DImode))
10771 {
10772 operands[3] = x5;
10773 goto L498;
10774 }
10775 x2 = XEXP (x1, 0);
10776 goto L2366;
10777
10778 L498: ATTRIBUTE_UNUSED_LABEL
10779 x6 = XEXP (x5, 0);
10780 if (register_operand (x6, SImode))
10781 {
10782 operands[1] = x6;
10783 goto L499;
10784 }
10785 x2 = XEXP (x1, 0);
10786 goto L2366;
10787
10788 L499: ATTRIBUTE_UNUSED_LABEL
10789 x5 = XEXP (x4, 1);
10790 if (extend_operator (x5, DImode))
10791 {
10792 operands[4] = x5;
10793 goto L500;
10794 }
10795 x2 = XEXP (x1, 0);
10796 goto L2366;
10797
10798 L500: ATTRIBUTE_UNUSED_LABEL
10799 x6 = XEXP (x5, 0);
10800 if (register_operand (x6, SImode))
10801 {
10802 operands[2] = x6;
10803 goto L501;
10804 }
10805 x2 = XEXP (x1, 0);
10806 goto L2366;
10807
10808 L501: ATTRIBUTE_UNUSED_LABEL
10809 x4 = XEXP (x3, 1);
10810 if (GET_CODE (x4) == CONST_INT
10811 && XWINT (x4, 0) == 32LL)
10812 goto L502;
10813 x2 = XEXP (x1, 0);
10814 goto L2366;
10815
10816 L502: ATTRIBUTE_UNUSED_LABEL
10817 x1 = XVECEXP (x0, 0, 1);
10818 if (GET_CODE (x1) == CLOBBER)
10819 goto L503;
10820 x1 = XVECEXP (x0, 0, 0);
10821 x2 = XEXP (x1, 0);
10822 goto L2366;
10823
10824 L503: ATTRIBUTE_UNUSED_LABEL
10825 x2 = XEXP (x1, 0);
10826 if (scratch_operand (x2, SImode))
10827 {
10828 operands[6] = x2;
10829 goto L504;
10830 }
10831 x1 = XVECEXP (x0, 0, 0);
10832 x2 = XEXP (x1, 0);
10833 goto L2366;
10834
10835 L504: ATTRIBUTE_UNUSED_LABEL
10836 x1 = XVECEXP (x0, 0, 2);
10837 if (GET_CODE (x1) == CLOBBER)
10838 goto L505;
10839 x1 = XVECEXP (x0, 0, 0);
10840 x2 = XEXP (x1, 0);
10841 goto L2366;
10842
10843 L505: ATTRIBUTE_UNUSED_LABEL
10844 x2 = XEXP (x1, 0);
10845 if (scratch_operand (x2, SImode))
10846 {
10847 operands[7] = x2;
10848 goto L506;
10849 }
10850 x1 = XVECEXP (x0, 0, 0);
10851 x2 = XEXP (x1, 0);
10852 goto L2366;
10853
10854 L506: ATTRIBUTE_UNUSED_LABEL
10855 if ((GET_CODE (operands[3]) == GET_CODE (operands[4])))
10856 {
10857 return 47;
10858 }
10859 x1 = XVECEXP (x0, 0, 0);
10860 x2 = XEXP (x1, 0);
10861 goto L2366;
10862
10863 L631: ATTRIBUTE_UNUSED_LABEL
10864 x3 = XEXP (x2, 0);
10865 if (GET_MODE (x3) == SImode
10866 && GET_CODE (x3) == MULT)
10867 goto L632;
10868 x2 = XEXP (x1, 0);
10869 goto L2366;
10870
10871 L632: ATTRIBUTE_UNUSED_LABEL
10872 x4 = XEXP (x3, 0);
10873 if (register_operand (x4, SImode))
10874 {
10875 operands[1] = x4;
10876 goto L633;
10877 }
10878 x2 = XEXP (x1, 0);
10879 goto L2366;
10880
10881 L633: ATTRIBUTE_UNUSED_LABEL
10882 x4 = XEXP (x3, 1);
10883 if (register_operand (x4, SImode))
10884 {
10885 operands[2] = x4;
10886 goto L634;
10887 }
10888 x2 = XEXP (x1, 0);
10889 goto L2366;
10890
10891 L634: ATTRIBUTE_UNUSED_LABEL
10892 x3 = XEXP (x2, 1);
10893 if (rtx_equal_p (x3, operands[0]))
10894 goto L635;
10895 x2 = XEXP (x1, 0);
10896 goto L2366;
10897
10898 L635: ATTRIBUTE_UNUSED_LABEL
10899 x1 = XVECEXP (x0, 0, 1);
10900 if (GET_CODE (x1) == CLOBBER)
10901 goto L636;
10902 x1 = XVECEXP (x0, 0, 0);
10903 x2 = XEXP (x1, 0);
10904 goto L2366;
10905
10906 L636: ATTRIBUTE_UNUSED_LABEL
10907 x2 = XEXP (x1, 0);
10908 if (scratch_operand (x2, SImode))
10909 {
10910 operands[3] = x2;
10911 goto L637;
10912 }
10913 x1 = XVECEXP (x0, 0, 0);
10914 x2 = XEXP (x1, 0);
10915 goto L2366;
10916
10917 L637: ATTRIBUTE_UNUSED_LABEL
10918 x1 = XVECEXP (x0, 0, 2);
10919 if (GET_CODE (x1) == CLOBBER)
10920 goto L638;
10921 x1 = XVECEXP (x0, 0, 0);
10922 x2 = XEXP (x1, 0);
10923 goto L2366;
10924
10925 L638: ATTRIBUTE_UNUSED_LABEL
10926 x2 = XEXP (x1, 0);
10927 if (scratch_operand (x2, SImode))
10928 {
10929 operands[4] = x2;
10930 goto L639;
10931 }
10932 x1 = XVECEXP (x0, 0, 0);
10933 x2 = XEXP (x1, 0);
10934 goto L2366;
10935
10936 L639: ATTRIBUTE_UNUSED_LABEL
10937 if ((TARGET_MAD))
10938 {
10939 return 52;
10940 }
10941 x1 = XVECEXP (x0, 0, 0);
10942 x2 = XEXP (x1, 0);
10943 goto L2366;
10944
10945 L787: ATTRIBUTE_UNUSED_LABEL
10946 x3 = XEXP (x2, 0);
10947 if (register_operand (x3, SImode))
10948 {
10949 operands[1] = x3;
10950 goto L788;
10951 }
10952 x2 = XEXP (x1, 0);
10953 goto L2366;
10954
10955 L788: ATTRIBUTE_UNUSED_LABEL
10956 x3 = XEXP (x2, 1);
10957 if (register_operand (x3, SImode))
10958 {
10959 operands[2] = x3;
10960 goto L789;
10961 }
10962 L908: ATTRIBUTE_UNUSED_LABEL
10963 if (nonmemory_operand (x3, SImode))
10964 {
10965 operands[2] = x3;
10966 goto L909;
10967 }
10968 x2 = XEXP (x1, 0);
10969 goto L2366;
10970
10971 L789: ATTRIBUTE_UNUSED_LABEL
10972 x1 = XVECEXP (x0, 0, 1);
10973 if (GET_CODE (x1) == SET)
10974 goto L790;
10975 x1 = XVECEXP (x0, 0, 0);
10976 x2 = XEXP (x1, 1);
10977 x3 = XEXP (x2, 1);
10978 goto L908;
10979
10980 L790: ATTRIBUTE_UNUSED_LABEL
10981 x2 = XEXP (x1, 0);
10982 if (register_operand (x2, SImode))
10983 {
10984 operands[3] = x2;
10985 goto L791;
10986 }
10987 x1 = XVECEXP (x0, 0, 0);
10988 x2 = XEXP (x1, 1);
10989 x3 = XEXP (x2, 1);
10990 goto L908;
10991
10992 L791: ATTRIBUTE_UNUSED_LABEL
10993 x2 = XEXP (x1, 1);
10994 if (GET_MODE (x2) == SImode
10995 && GET_CODE (x2) == MOD)
10996 goto L792;
10997 x1 = XVECEXP (x0, 0, 0);
10998 x2 = XEXP (x1, 1);
10999 x3 = XEXP (x2, 1);
11000 goto L908;
11001
11002 L792: ATTRIBUTE_UNUSED_LABEL
11003 x3 = XEXP (x2, 0);
11004 if (rtx_equal_p (x3, operands[1]))
11005 goto L793;
11006 x1 = XVECEXP (x0, 0, 0);
11007 x2 = XEXP (x1, 1);
11008 x3 = XEXP (x2, 1);
11009 goto L908;
11010
11011 L793: ATTRIBUTE_UNUSED_LABEL
11012 x3 = XEXP (x2, 1);
11013 if (rtx_equal_p (x3, operands[2]))
11014 goto L794;
11015 x1 = XVECEXP (x0, 0, 0);
11016 x2 = XEXP (x1, 1);
11017 x3 = XEXP (x2, 1);
11018 goto L908;
11019
11020 L794: ATTRIBUTE_UNUSED_LABEL
11021 x1 = XVECEXP (x0, 0, 2);
11022 if (GET_CODE (x1) == CLOBBER)
11023 goto L795;
11024 x1 = XVECEXP (x0, 0, 0);
11025 x2 = XEXP (x1, 1);
11026 x3 = XEXP (x2, 1);
11027 goto L908;
11028
11029 L795: ATTRIBUTE_UNUSED_LABEL
11030 x2 = XEXP (x1, 0);
11031 if (scratch_operand (x2, SImode))
11032 {
11033 operands[4] = x2;
11034 goto L796;
11035 }
11036 x1 = XVECEXP (x0, 0, 0);
11037 x2 = XEXP (x1, 1);
11038 x3 = XEXP (x2, 1);
11039 goto L908;
11040
11041 L796: ATTRIBUTE_UNUSED_LABEL
11042 if ((optimize))
11043 {
11044 return 67;
11045 }
11046 x1 = XVECEXP (x0, 0, 0);
11047 x2 = XEXP (x1, 1);
11048 x3 = XEXP (x2, 1);
11049 goto L908;
11050
11051 L909: ATTRIBUTE_UNUSED_LABEL
11052 x1 = XVECEXP (x0, 0, 1);
11053 if (GET_CODE (x1) == CLOBBER)
11054 goto L910;
11055 x1 = XVECEXP (x0, 0, 0);
11056 x2 = XEXP (x1, 0);
11057 goto L2366;
11058
11059 L910: ATTRIBUTE_UNUSED_LABEL
11060 x2 = XEXP (x1, 0);
11061 if (scratch_operand (x2, SImode))
11062 {
11063 operands[3] = x2;
11064 goto L911;
11065 }
11066 x1 = XVECEXP (x0, 0, 0);
11067 x2 = XEXP (x1, 0);
11068 goto L2366;
11069
11070 L911: ATTRIBUTE_UNUSED_LABEL
11071 x1 = XVECEXP (x0, 0, 2);
11072 if (GET_CODE (x1) == CLOBBER)
11073 goto L912;
11074 x1 = XVECEXP (x0, 0, 0);
11075 x2 = XEXP (x1, 0);
11076 goto L2366;
11077
11078 L912: ATTRIBUTE_UNUSED_LABEL
11079 x2 = XEXP (x1, 0);
11080 if (scratch_operand (x2, SImode))
11081 {
11082 operands[4] = x2;
11083 goto L913;
11084 }
11085 x1 = XVECEXP (x0, 0, 0);
11086 x2 = XEXP (x1, 0);
11087 goto L2366;
11088
11089 L913: ATTRIBUTE_UNUSED_LABEL
11090 if ((!optimize))
11091 {
11092 return 73;
11093 }
11094 x1 = XVECEXP (x0, 0, 0);
11095 x2 = XEXP (x1, 0);
11096 goto L2366;
11097
11098 L837: ATTRIBUTE_UNUSED_LABEL
11099 x3 = XEXP (x2, 0);
11100 if (register_operand (x3, SImode))
11101 {
11102 operands[1] = x3;
11103 goto L838;
11104 }
11105 x2 = XEXP (x1, 0);
11106 goto L2366;
11107
11108 L838: ATTRIBUTE_UNUSED_LABEL
11109 x3 = XEXP (x2, 1);
11110 if (register_operand (x3, SImode))
11111 {
11112 operands[2] = x3;
11113 goto L839;
11114 }
11115 L976: ATTRIBUTE_UNUSED_LABEL
11116 if (nonmemory_operand (x3, SImode))
11117 {
11118 operands[2] = x3;
11119 goto L977;
11120 }
11121 x2 = XEXP (x1, 0);
11122 goto L2366;
11123
11124 L839: ATTRIBUTE_UNUSED_LABEL
11125 x1 = XVECEXP (x0, 0, 1);
11126 if (GET_CODE (x1) == SET)
11127 goto L840;
11128 x1 = XVECEXP (x0, 0, 0);
11129 x2 = XEXP (x1, 1);
11130 x3 = XEXP (x2, 1);
11131 goto L976;
11132
11133 L840: ATTRIBUTE_UNUSED_LABEL
11134 x2 = XEXP (x1, 0);
11135 if (register_operand (x2, SImode))
11136 {
11137 operands[3] = x2;
11138 goto L841;
11139 }
11140 x1 = XVECEXP (x0, 0, 0);
11141 x2 = XEXP (x1, 1);
11142 x3 = XEXP (x2, 1);
11143 goto L976;
11144
11145 L841: ATTRIBUTE_UNUSED_LABEL
11146 x2 = XEXP (x1, 1);
11147 if (GET_MODE (x2) == SImode
11148 && GET_CODE (x2) == UMOD)
11149 goto L842;
11150 x1 = XVECEXP (x0, 0, 0);
11151 x2 = XEXP (x1, 1);
11152 x3 = XEXP (x2, 1);
11153 goto L976;
11154
11155 L842: ATTRIBUTE_UNUSED_LABEL
11156 x3 = XEXP (x2, 0);
11157 if (rtx_equal_p (x3, operands[1]))
11158 goto L843;
11159 x1 = XVECEXP (x0, 0, 0);
11160 x2 = XEXP (x1, 1);
11161 x3 = XEXP (x2, 1);
11162 goto L976;
11163
11164 L843: ATTRIBUTE_UNUSED_LABEL
11165 x3 = XEXP (x2, 1);
11166 if (rtx_equal_p (x3, operands[2]))
11167 goto L844;
11168 x1 = XVECEXP (x0, 0, 0);
11169 x2 = XEXP (x1, 1);
11170 x3 = XEXP (x2, 1);
11171 goto L976;
11172
11173 L844: ATTRIBUTE_UNUSED_LABEL
11174 x1 = XVECEXP (x0, 0, 2);
11175 if (GET_CODE (x1) == CLOBBER)
11176 goto L845;
11177 x1 = XVECEXP (x0, 0, 0);
11178 x2 = XEXP (x1, 1);
11179 x3 = XEXP (x2, 1);
11180 goto L976;
11181
11182 L845: ATTRIBUTE_UNUSED_LABEL
11183 x2 = XEXP (x1, 0);
11184 if (scratch_operand (x2, SImode))
11185 {
11186 operands[4] = x2;
11187 goto L846;
11188 }
11189 x1 = XVECEXP (x0, 0, 0);
11190 x2 = XEXP (x1, 1);
11191 x3 = XEXP (x2, 1);
11192 goto L976;
11193
11194 L846: ATTRIBUTE_UNUSED_LABEL
11195 if ((optimize))
11196 {
11197 return 69;
11198 }
11199 x1 = XVECEXP (x0, 0, 0);
11200 x2 = XEXP (x1, 1);
11201 x3 = XEXP (x2, 1);
11202 goto L976;
11203
11204 L977: ATTRIBUTE_UNUSED_LABEL
11205 x1 = XVECEXP (x0, 0, 1);
11206 if (GET_CODE (x1) == CLOBBER)
11207 goto L978;
11208 x1 = XVECEXP (x0, 0, 0);
11209 x2 = XEXP (x1, 0);
11210 goto L2366;
11211
11212 L978: ATTRIBUTE_UNUSED_LABEL
11213 x2 = XEXP (x1, 0);
11214 if (scratch_operand (x2, SImode))
11215 {
11216 operands[3] = x2;
11217 goto L979;
11218 }
11219 x1 = XVECEXP (x0, 0, 0);
11220 x2 = XEXP (x1, 0);
11221 goto L2366;
11222
11223 L979: ATTRIBUTE_UNUSED_LABEL
11224 x1 = XVECEXP (x0, 0, 2);
11225 if (GET_CODE (x1) == CLOBBER)
11226 goto L980;
11227 x1 = XVECEXP (x0, 0, 0);
11228 x2 = XEXP (x1, 0);
11229 goto L2366;
11230
11231 L980: ATTRIBUTE_UNUSED_LABEL
11232 x2 = XEXP (x1, 0);
11233 if (scratch_operand (x2, SImode))
11234 {
11235 operands[4] = x2;
11236 goto L981;
11237 }
11238 x1 = XVECEXP (x0, 0, 0);
11239 x2 = XEXP (x1, 0);
11240 goto L2366;
11241
11242 L981: ATTRIBUTE_UNUSED_LABEL
11243 if ((!optimize))
11244 {
11245 return 77;
11246 }
11247 x1 = XVECEXP (x0, 0, 0);
11248 x2 = XEXP (x1, 0);
11249 goto L2366;
11250
11251 L941: ATTRIBUTE_UNUSED_LABEL
11252 x3 = XEXP (x2, 0);
11253 if (register_operand (x3, SImode))
11254 {
11255 operands[1] = x3;
11256 goto L942;
11257 }
11258 x2 = XEXP (x1, 0);
11259 goto L2366;
11260
11261 L942: ATTRIBUTE_UNUSED_LABEL
11262 x3 = XEXP (x2, 1);
11263 if (nonmemory_operand (x3, SImode))
11264 {
11265 operands[2] = x3;
11266 goto L943;
11267 }
11268 x2 = XEXP (x1, 0);
11269 goto L2366;
11270
11271 L943: ATTRIBUTE_UNUSED_LABEL
11272 x1 = XVECEXP (x0, 0, 1);
11273 if (GET_CODE (x1) == CLOBBER)
11274 goto L944;
11275 x1 = XVECEXP (x0, 0, 0);
11276 x2 = XEXP (x1, 0);
11277 goto L2366;
11278
11279 L944: ATTRIBUTE_UNUSED_LABEL
11280 x2 = XEXP (x1, 0);
11281 if (scratch_operand (x2, SImode))
11282 {
11283 operands[3] = x2;
11284 goto L945;
11285 }
11286 x1 = XVECEXP (x0, 0, 0);
11287 x2 = XEXP (x1, 0);
11288 goto L2366;
11289
11290 L945: ATTRIBUTE_UNUSED_LABEL
11291 x1 = XVECEXP (x0, 0, 2);
11292 if (GET_CODE (x1) == CLOBBER)
11293 goto L946;
11294 x1 = XVECEXP (x0, 0, 0);
11295 x2 = XEXP (x1, 0);
11296 goto L2366;
11297
11298 L946: ATTRIBUTE_UNUSED_LABEL
11299 x2 = XEXP (x1, 0);
11300 if (scratch_operand (x2, SImode))
11301 {
11302 operands[4] = x2;
11303 goto L947;
11304 }
11305 x1 = XVECEXP (x0, 0, 0);
11306 x2 = XEXP (x1, 0);
11307 goto L2366;
11308
11309 L947: ATTRIBUTE_UNUSED_LABEL
11310 if ((!optimize))
11311 {
11312 return 75;
11313 }
11314 x1 = XVECEXP (x0, 0, 0);
11315 x2 = XEXP (x1, 0);
11316 goto L2366;
11317
11318 L1009: ATTRIBUTE_UNUSED_LABEL
11319 x3 = XEXP (x2, 0);
11320 if (register_operand (x3, SImode))
11321 {
11322 operands[1] = x3;
11323 goto L1010;
11324 }
11325 x2 = XEXP (x1, 0);
11326 goto L2366;
11327
11328 L1010: ATTRIBUTE_UNUSED_LABEL
11329 x3 = XEXP (x2, 1);
11330 if (nonmemory_operand (x3, SImode))
11331 {
11332 operands[2] = x3;
11333 goto L1011;
11334 }
11335 x2 = XEXP (x1, 0);
11336 goto L2366;
11337
11338 L1011: ATTRIBUTE_UNUSED_LABEL
11339 x1 = XVECEXP (x0, 0, 1);
11340 if (GET_CODE (x1) == CLOBBER)
11341 goto L1012;
11342 x1 = XVECEXP (x0, 0, 0);
11343 x2 = XEXP (x1, 0);
11344 goto L2366;
11345
11346 L1012: ATTRIBUTE_UNUSED_LABEL
11347 x2 = XEXP (x1, 0);
11348 if (scratch_operand (x2, SImode))
11349 {
11350 operands[3] = x2;
11351 goto L1013;
11352 }
11353 x1 = XVECEXP (x0, 0, 0);
11354 x2 = XEXP (x1, 0);
11355 goto L2366;
11356
11357 L1013: ATTRIBUTE_UNUSED_LABEL
11358 x1 = XVECEXP (x0, 0, 2);
11359 if (GET_CODE (x1) == CLOBBER)
11360 goto L1014;
11361 x1 = XVECEXP (x0, 0, 0);
11362 x2 = XEXP (x1, 0);
11363 goto L2366;
11364
11365 L1014: ATTRIBUTE_UNUSED_LABEL
11366 x2 = XEXP (x1, 0);
11367 if (scratch_operand (x2, SImode))
11368 {
11369 operands[4] = x2;
11370 goto L1015;
11371 }
11372 x1 = XVECEXP (x0, 0, 0);
11373 x2 = XEXP (x1, 0);
11374 goto L2366;
11375
11376 L1015: ATTRIBUTE_UNUSED_LABEL
11377 if ((!optimize))
11378 {
11379 return 79;
11380 }
11381 x1 = XVECEXP (x0, 0, 0);
11382 x2 = XEXP (x1, 0);
11383 goto L2366;
11384
11385 L1087: ATTRIBUTE_UNUSED_LABEL
11386 x3 = XEXP (x2, 0);
11387 if (register_operand (x3, SImode))
11388 {
11389 operands[1] = x3;
11390 goto L1088;
11391 }
11392 x2 = XEXP (x1, 0);
11393 goto L2366;
11394
11395 L1088: ATTRIBUTE_UNUSED_LABEL
11396 x1 = XVECEXP (x0, 0, 1);
11397 if (GET_CODE (x1) == CLOBBER)
11398 goto L1089;
11399 x1 = XVECEXP (x0, 0, 0);
11400 x2 = XEXP (x1, 0);
11401 goto L2366;
11402
11403 L1089: ATTRIBUTE_UNUSED_LABEL
11404 x2 = XEXP (x1, 0);
11405 if (scratch_operand (x2, SImode))
11406 {
11407 operands[2] = x2;
11408 goto L1090;
11409 }
11410 x1 = XVECEXP (x0, 0, 0);
11411 x2 = XEXP (x1, 0);
11412 goto L2366;
11413
11414 L1090: ATTRIBUTE_UNUSED_LABEL
11415 x1 = XVECEXP (x0, 0, 2);
11416 if (GET_CODE (x1) == CLOBBER)
11417 goto L1091;
11418 x1 = XVECEXP (x0, 0, 0);
11419 x2 = XEXP (x1, 0);
11420 goto L2366;
11421
11422 L1091: ATTRIBUTE_UNUSED_LABEL
11423 x2 = XEXP (x1, 0);
11424 if (scratch_operand (x2, SImode))
11425 {
11426 operands[3] = x2;
11427 goto L1092;
11428 }
11429 x1 = XVECEXP (x0, 0, 0);
11430 x2 = XEXP (x1, 0);
11431 goto L2366;
11432
11433 L1092: ATTRIBUTE_UNUSED_LABEL
11434 if ((!TARGET_MIPS16))
11435 {
11436 return 89;
11437 }
11438 x1 = XVECEXP (x0, 0, 0);
11439 x2 = XEXP (x1, 0);
11440 goto L2366;
11441
11442 L3582: ATTRIBUTE_UNUSED_LABEL
11443 if (register_operand (x2, DImode))
11444 {
11445 operands[0] = x2;
11446 goto L370;
11447 }
11448 goto L2366;
11449
11450 L370: ATTRIBUTE_UNUSED_LABEL
11451 x2 = XEXP (x1, 1);
11452 if (GET_MODE (x2) == DImode)
11453 goto L3591;
11454 x2 = XEXP (x1, 0);
11455 goto L2366;
11456
11457 L3591: ATTRIBUTE_UNUSED_LABEL
11458 tem = recog_7 (x0, insn, pnum_clobbers);
11459 if (tem >= 0)
11460 return tem;
11461 x2 = XEXP (x1, 0);
11462 goto L2366;
11463
11464 L2367: ATTRIBUTE_UNUSED_LABEL
11465 x2 = XEXP (x1, 1);
11466 switch (GET_MODE (x2))
11467 {
11468 case SImode:
11469 goto L3605;
11470 case DImode:
11471 goto L3606;
11472 default:
11473 break;
11474 }
11475 goto ret0;
11476
11477 L3605: ATTRIBUTE_UNUSED_LABEL
11478 if (GET_CODE (x2) == MEM)
11479 goto L2368;
11480 goto ret0;
11481
11482 L2368: ATTRIBUTE_UNUSED_LABEL
11483 x3 = XEXP (x2, 0);
11484 if (GET_MODE (x3) == SImode
11485 && GET_CODE (x3) == PLUS)
11486 goto L2369;
11487 goto ret0;
11488
11489 L2369: ATTRIBUTE_UNUSED_LABEL
11490 x4 = XEXP (x3, 0);
11491 if (GET_MODE (x4) == SImode
11492 && GET_CODE (x4) == MULT)
11493 goto L2370;
11494 goto ret0;
11495
11496 L2370: ATTRIBUTE_UNUSED_LABEL
11497 x5 = XEXP (x4, 0);
11498 if (register_operand (x5, SImode))
11499 {
11500 operands[0] = x5;
11501 goto L2371;
11502 }
11503 goto ret0;
11504
11505 L2371: ATTRIBUTE_UNUSED_LABEL
11506 x5 = XEXP (x4, 1);
11507 if (GET_CODE (x5) == CONST_INT
11508 && XWINT (x5, 0) == 4LL)
11509 goto L2372;
11510 goto ret0;
11511
11512 L2372: ATTRIBUTE_UNUSED_LABEL
11513 x4 = XEXP (x3, 1);
11514 if (GET_CODE (x4) == LABEL_REF)
11515 goto L2373;
11516 goto ret0;
11517
11518 L2373: ATTRIBUTE_UNUSED_LABEL
11519 x5 = XEXP (x4, 0);
11520 operands[1] = x5;
11521 goto L2374;
11522
11523 L2374: ATTRIBUTE_UNUSED_LABEL
11524 x1 = XVECEXP (x0, 0, 1);
11525 if (GET_CODE (x1) == CLOBBER)
11526 goto L2375;
11527 goto ret0;
11528
11529 L2375: ATTRIBUTE_UNUSED_LABEL
11530 x2 = XEXP (x1, 0);
11531 if (register_operand (x2, SImode))
11532 {
11533 operands[2] = x2;
11534 goto L2376;
11535 }
11536 goto ret0;
11537
11538 L2376: ATTRIBUTE_UNUSED_LABEL
11539 x1 = XVECEXP (x0, 0, 2);
11540 if (GET_CODE (x1) == CLOBBER)
11541 goto L2377;
11542 goto ret0;
11543
11544 L2377: ATTRIBUTE_UNUSED_LABEL
11545 x2 = XEXP (x1, 0);
11546 if (GET_MODE (x2) == SImode
11547 && GET_CODE (x2) == REG
11548 && XINT (x2, 0) == 31
11549 && (TARGET_EMBEDDED_PIC))
11550 {
11551 return 287;
11552 }
11553 goto ret0;
11554
11555 L3606: ATTRIBUTE_UNUSED_LABEL
11556 if (GET_CODE (x2) == MEM)
11557 goto L2395;
11558 goto ret0;
11559
11560 L2395: ATTRIBUTE_UNUSED_LABEL
11561 x3 = XEXP (x2, 0);
11562 if (GET_MODE (x3) == DImode
11563 && GET_CODE (x3) == PLUS)
11564 goto L2396;
11565 goto ret0;
11566
11567 L2396: ATTRIBUTE_UNUSED_LABEL
11568 x4 = XEXP (x3, 0);
11569 if (GET_MODE (x4) == DImode
11570 && GET_CODE (x4) == SIGN_EXTEND)
11571 goto L2397;
11572 goto ret0;
11573
11574 L2397: ATTRIBUTE_UNUSED_LABEL
11575 x5 = XEXP (x4, 0);
11576 if (GET_MODE (x5) == SImode
11577 && GET_CODE (x5) == MULT)
11578 goto L2398;
11579 goto ret0;
11580
11581 L2398: ATTRIBUTE_UNUSED_LABEL
11582 x6 = XEXP (x5, 0);
11583 if (register_operand (x6, SImode))
11584 {
11585 operands[0] = x6;
11586 goto L2399;
11587 }
11588 goto ret0;
11589
11590 L2399: ATTRIBUTE_UNUSED_LABEL
11591 x6 = XEXP (x5, 1);
11592 if (GET_CODE (x6) == CONST_INT
11593 && XWINT (x6, 0) == 8LL)
11594 goto L2400;
11595 goto ret0;
11596
11597 L2400: ATTRIBUTE_UNUSED_LABEL
11598 x4 = XEXP (x3, 1);
11599 if (GET_CODE (x4) == LABEL_REF)
11600 goto L2401;
11601 goto ret0;
11602
11603 L2401: ATTRIBUTE_UNUSED_LABEL
11604 x5 = XEXP (x4, 0);
11605 operands[1] = x5;
11606 goto L2402;
11607
11608 L2402: ATTRIBUTE_UNUSED_LABEL
11609 x1 = XVECEXP (x0, 0, 1);
11610 if (GET_CODE (x1) == CLOBBER)
11611 goto L2403;
11612 goto ret0;
11613
11614 L2403: ATTRIBUTE_UNUSED_LABEL
11615 x2 = XEXP (x1, 0);
11616 if (register_operand (x2, DImode))
11617 {
11618 operands[2] = x2;
11619 goto L2404;
11620 }
11621 goto ret0;
11622
11623 L2404: ATTRIBUTE_UNUSED_LABEL
11624 x1 = XVECEXP (x0, 0, 2);
11625 if (GET_CODE (x1) == CLOBBER)
11626 goto L2405;
11627 goto ret0;
11628
11629 L2405: ATTRIBUTE_UNUSED_LABEL
11630 x2 = XEXP (x1, 0);
11631 if (GET_MODE (x2) == DImode
11632 && GET_CODE (x2) == REG
11633 && XINT (x2, 0) == 31
11634 && (TARGET_EMBEDDED_PIC))
11635 {
11636 return 288;
11637 }
11638 goto ret0;
11639
11640 L2606: ATTRIBUTE_UNUSED_LABEL
11641 x2 = XEXP (x1, 1);
11642 if (GET_CODE (x2) == CALL)
11643 goto L2607;
11644 goto ret0;
11645
11646 L2607: ATTRIBUTE_UNUSED_LABEL
11647 x3 = XEXP (x2, 0);
11648 if (GET_CODE (x3) == MEM)
11649 goto L2608;
11650 goto ret0;
11651
11652 L2608: ATTRIBUTE_UNUSED_LABEL
11653 x4 = XEXP (x3, 0);
11654 if (call_insn_operand (x4, VOIDmode))
11655 {
11656 operands[1] = x4;
11657 goto L2609;
11658 }
11659 goto ret0;
11660
11661 L2609: ATTRIBUTE_UNUSED_LABEL
11662 x3 = XEXP (x2, 1);
11663 operands[2] = x3;
11664 goto L2610;
11665
11666 L2610: ATTRIBUTE_UNUSED_LABEL
11667 x1 = XVECEXP (x0, 0, 1);
11668 if (GET_CODE (x1) == SET)
11669 goto L2611;
11670 goto ret0;
11671
11672 L2611: ATTRIBUTE_UNUSED_LABEL
11673 x2 = XEXP (x1, 0);
11674 if (register_operand (x2, VOIDmode))
11675 {
11676 operands[3] = x2;
11677 goto L2612;
11678 }
11679 goto ret0;
11680
11681 L2612: ATTRIBUTE_UNUSED_LABEL
11682 x2 = XEXP (x1, 1);
11683 if (GET_CODE (x2) == CALL)
11684 goto L2613;
11685 goto ret0;
11686
11687 L2613: ATTRIBUTE_UNUSED_LABEL
11688 x3 = XEXP (x2, 0);
11689 if (GET_CODE (x3) == MEM)
11690 goto L2614;
11691 goto ret0;
11692
11693 L2614: ATTRIBUTE_UNUSED_LABEL
11694 x4 = XEXP (x3, 0);
11695 if (rtx_equal_p (x4, operands[1]))
11696 goto L2615;
11697 goto ret0;
11698
11699 L2615: ATTRIBUTE_UNUSED_LABEL
11700 x3 = XEXP (x2, 1);
11701 if (rtx_equal_p (x3, operands[2]))
11702 goto L2616;
11703 goto ret0;
11704
11705 L2616: ATTRIBUTE_UNUSED_LABEL
11706 x1 = XVECEXP (x0, 0, 2);
11707 if (GET_CODE (x1) == CLOBBER)
11708 goto L2617;
11709 goto ret0;
11710
11711 L2617: ATTRIBUTE_UNUSED_LABEL
11712 x2 = XEXP (x1, 0);
11713 if (register_operand (x2, SImode))
11714 {
11715 operands[4] = x2;
11716 goto L2618;
11717 }
11718 goto ret0;
11719
11720 L2618: ATTRIBUTE_UNUSED_LABEL
11721 if ((!TARGET_ABICALLS && !TARGET_LONG_CALLS))
11722 {
11723 return 312;
11724 }
11725 L2634: ATTRIBUTE_UNUSED_LABEL
11726 if ((TARGET_ABICALLS && !TARGET_LONG_CALLS))
11727 {
11728 return 313;
11729 }
11730 goto ret0;
11731 ret0:
11732 return -1;
11733 }
11734
11735 static int recog_9 PARAMS ((rtx, rtx, int *));
11736 static int
11737 recog_9 (x0, insn, pnum_clobbers)
11738 rtx x0 ATTRIBUTE_UNUSED;
11739 rtx insn ATTRIBUTE_UNUSED;
11740 int *pnum_clobbers ATTRIBUTE_UNUSED;
11741 {
11742 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
11743 rtx x1 ATTRIBUTE_UNUSED;
11744 rtx x2 ATTRIBUTE_UNUSED;
11745 rtx x3 ATTRIBUTE_UNUSED;
11746 rtx x4 ATTRIBUTE_UNUSED;
11747 rtx x5 ATTRIBUTE_UNUSED;
11748 rtx x6 ATTRIBUTE_UNUSED;
11749 rtx x7 ATTRIBUTE_UNUSED;
11750 int tem ATTRIBUTE_UNUSED;
11751
11752 switch (XVECLEN (x0, 0))
11753 {
11754 case 2:
11755 goto L45;
11756 case 4:
11757 goto L217;
11758 case 3:
11759 goto L236;
11760 case 5:
11761 goto L272;
11762 case 8:
11763 goto L1655;
11764 default:
11765 break;
11766 }
11767 goto ret0;
11768
11769 L45: ATTRIBUTE_UNUSED_LABEL
11770 x1 = XVECEXP (x0, 0, 0);
11771 switch (GET_CODE (x1))
11772 {
11773 case SET:
11774 goto L46;
11775 case TRAP_IF:
11776 goto L891;
11777 case USE:
11778 goto L2425;
11779 case UNSPEC:
11780 goto L3541;
11781 case CALL:
11782 goto L2461;
11783 default:
11784 break;
11785 }
11786 goto ret0;
11787
11788 L46: ATTRIBUTE_UNUSED_LABEL
11789 return recog_6 (x0, insn, pnum_clobbers);
11790
11791 L891: ATTRIBUTE_UNUSED_LABEL
11792 x2 = XEXP (x1, 0);
11793 if (GET_CODE (x2) == EQ)
11794 goto L892;
11795 goto ret0;
11796
11797 L892: ATTRIBUTE_UNUSED_LABEL
11798 x3 = XEXP (x2, 0);
11799 if (register_operand (x3, VOIDmode))
11800 {
11801 operands[0] = x3;
11802 goto L893;
11803 }
11804 goto ret0;
11805
11806 L893: ATTRIBUTE_UNUSED_LABEL
11807 x3 = XEXP (x2, 1);
11808 if (true_reg_or_0_operand (x3, VOIDmode))
11809 {
11810 operands[1] = x3;
11811 goto L894;
11812 }
11813 goto ret0;
11814
11815 L894: ATTRIBUTE_UNUSED_LABEL
11816 x2 = XEXP (x1, 1);
11817 if (immediate_operand (x2, VOIDmode))
11818 {
11819 operands[2] = x2;
11820 goto L895;
11821 }
11822 goto ret0;
11823
11824 L895: ATTRIBUTE_UNUSED_LABEL
11825 x1 = XVECEXP (x0, 0, 1);
11826 if (GET_CODE (x1) == CLOBBER)
11827 goto L896;
11828 goto ret0;
11829
11830 L896: ATTRIBUTE_UNUSED_LABEL
11831 x2 = XEXP (x1, 0);
11832 if (GET_MODE (x2) == SImode
11833 && GET_CODE (x2) == REG
11834 && XINT (x2, 0) == 24
11835 && (TARGET_MIPS16))
11836 {
11837 return 72;
11838 }
11839 goto ret0;
11840
11841 L2425: ATTRIBUTE_UNUSED_LABEL
11842 x2 = XEXP (x1, 0);
11843 if (pmode_register_operand (x2, VOIDmode))
11844 {
11845 operands[0] = x2;
11846 goto L2426;
11847 }
11848 goto ret0;
11849
11850 L2426: ATTRIBUTE_UNUSED_LABEL
11851 x1 = XVECEXP (x0, 0, 1);
11852 if (GET_CODE (x1) == RETURN)
11853 {
11854 return 291;
11855 }
11856 goto ret0;
11857
11858 L3541: ATTRIBUTE_UNUSED_LABEL
11859 if (XVECLEN (x1, 0) == 1
11860 && XINT (x1, 1) == 11)
11861 goto L2441;
11862 goto ret0;
11863
11864 L2441: ATTRIBUTE_UNUSED_LABEL
11865 x2 = XVECEXP (x1, 0, 0);
11866 switch (GET_MODE (x2))
11867 {
11868 case SImode:
11869 goto L3570;
11870 case DImode:
11871 goto L3571;
11872 default:
11873 break;
11874 }
11875 goto ret0;
11876
11877 L3570: ATTRIBUTE_UNUSED_LABEL
11878 if (register_operand (x2, SImode))
11879 {
11880 operands[0] = x2;
11881 goto L2442;
11882 }
11883 goto ret0;
11884
11885 L2442: ATTRIBUTE_UNUSED_LABEL
11886 x1 = XVECEXP (x0, 0, 1);
11887 if (GET_CODE (x1) == CLOBBER)
11888 goto L2443;
11889 goto ret0;
11890
11891 L2443: ATTRIBUTE_UNUSED_LABEL
11892 x2 = XEXP (x1, 0);
11893 if (scratch_operand (x2, SImode))
11894 {
11895 operands[1] = x2;
11896 goto L2444;
11897 }
11898 goto ret0;
11899
11900 L2444: ATTRIBUTE_UNUSED_LABEL
11901 if ((! TARGET_64BIT))
11902 {
11903 return 293;
11904 }
11905 goto ret0;
11906
11907 L3571: ATTRIBUTE_UNUSED_LABEL
11908 if (register_operand (x2, DImode))
11909 {
11910 operands[0] = x2;
11911 goto L2451;
11912 }
11913 goto ret0;
11914
11915 L2451: ATTRIBUTE_UNUSED_LABEL
11916 x1 = XVECEXP (x0, 0, 1);
11917 if (GET_CODE (x1) == CLOBBER)
11918 goto L2452;
11919 goto ret0;
11920
11921 L2452: ATTRIBUTE_UNUSED_LABEL
11922 x2 = XEXP (x1, 0);
11923 if (scratch_operand (x2, DImode))
11924 {
11925 operands[1] = x2;
11926 goto L2453;
11927 }
11928 goto ret0;
11929
11930 L2453: ATTRIBUTE_UNUSED_LABEL
11931 if ((TARGET_64BIT))
11932 {
11933 return 294;
11934 }
11935 goto ret0;
11936
11937 L2461: ATTRIBUTE_UNUSED_LABEL
11938 x2 = XEXP (x1, 0);
11939 if (GET_CODE (x2) == MEM)
11940 goto L2462;
11941 L2485: ATTRIBUTE_UNUSED_LABEL
11942 switch (GET_MODE (x2))
11943 {
11944 case SImode:
11945 goto L3572;
11946 case DImode:
11947 goto L3573;
11948 default:
11949 break;
11950 }
11951 goto ret0;
11952
11953 L2462: ATTRIBUTE_UNUSED_LABEL
11954 x3 = XEXP (x2, 0);
11955 if (call_insn_operand (x3, VOIDmode))
11956 {
11957 operands[0] = x3;
11958 goto L2463;
11959 }
11960 goto L2485;
11961
11962 L2463: ATTRIBUTE_UNUSED_LABEL
11963 x2 = XEXP (x1, 1);
11964 operands[1] = x2;
11965 goto L2464;
11966
11967 L2464: ATTRIBUTE_UNUSED_LABEL
11968 x1 = XVECEXP (x0, 0, 1);
11969 if (GET_CODE (x1) == CLOBBER)
11970 goto L2465;
11971 x1 = XVECEXP (x0, 0, 0);
11972 x2 = XEXP (x1, 0);
11973 goto L2485;
11974
11975 L2465: ATTRIBUTE_UNUSED_LABEL
11976 x2 = XEXP (x1, 0);
11977 if (register_operand (x2, SImode))
11978 {
11979 operands[2] = x2;
11980 goto L2466;
11981 }
11982 x1 = XVECEXP (x0, 0, 0);
11983 x2 = XEXP (x1, 0);
11984 goto L2485;
11985
11986 L2466: ATTRIBUTE_UNUSED_LABEL
11987 if ((TARGET_MIPS16 && !TARGET_ABICALLS && !TARGET_LONG_CALLS
11988 && GET_CODE (operands[2]) == REG && REGNO (operands[2]) == 31))
11989 {
11990 return 296;
11991 }
11992 L2474: ATTRIBUTE_UNUSED_LABEL
11993 if ((!TARGET_ABICALLS && !TARGET_LONG_CALLS))
11994 {
11995 return 297;
11996 }
11997 L2482: ATTRIBUTE_UNUSED_LABEL
11998 if ((TARGET_ABICALLS && !TARGET_LONG_CALLS))
11999 {
12000 return 298;
12001 }
12002 x1 = XVECEXP (x0, 0, 0);
12003 x2 = XEXP (x1, 0);
12004 goto L2485;
12005
12006 L3572: ATTRIBUTE_UNUSED_LABEL
12007 if (GET_CODE (x2) == MEM)
12008 goto L2486;
12009 goto ret0;
12010
12011 L2486: ATTRIBUTE_UNUSED_LABEL
12012 x3 = XEXP (x2, 0);
12013 if (register_operand (x3, SImode))
12014 {
12015 operands[0] = x3;
12016 goto L2487;
12017 }
12018 goto ret0;
12019
12020 L2487: ATTRIBUTE_UNUSED_LABEL
12021 x2 = XEXP (x1, 1);
12022 operands[1] = x2;
12023 goto L2488;
12024
12025 L2488: ATTRIBUTE_UNUSED_LABEL
12026 x1 = XVECEXP (x0, 0, 1);
12027 if (GET_CODE (x1) == CLOBBER)
12028 goto L2489;
12029 goto ret0;
12030
12031 L2489: ATTRIBUTE_UNUSED_LABEL
12032 x2 = XEXP (x1, 0);
12033 if (register_operand (x2, SImode))
12034 {
12035 operands[2] = x2;
12036 goto L2490;
12037 }
12038 goto ret0;
12039
12040 L2490: ATTRIBUTE_UNUSED_LABEL
12041 if ((!TARGET_MIPS16
12042 && !(Pmode == DImode) && !TARGET_ABICALLS && TARGET_LONG_CALLS))
12043 {
12044 return 299;
12045 }
12046 L2506: ATTRIBUTE_UNUSED_LABEL
12047 if ((TARGET_MIPS16 && !(Pmode == DImode) && !TARGET_ABICALLS && TARGET_LONG_CALLS
12048 && GET_CODE (operands[2]) == REG && REGNO (operands[2]) == 31))
12049 {
12050 return 301;
12051 }
12052 L2514: ATTRIBUTE_UNUSED_LABEL
12053 if ((!(Pmode == DImode) && TARGET_ABICALLS && TARGET_LONG_CALLS))
12054 {
12055 return 302;
12056 }
12057 goto ret0;
12058
12059 L3573: ATTRIBUTE_UNUSED_LABEL
12060 if (GET_CODE (x2) == MEM)
12061 goto L2494;
12062 goto ret0;
12063
12064 L2494: ATTRIBUTE_UNUSED_LABEL
12065 x3 = XEXP (x2, 0);
12066 if (se_register_operand (x3, DImode))
12067 {
12068 operands[0] = x3;
12069 goto L2495;
12070 }
12071 goto ret0;
12072
12073 L2495: ATTRIBUTE_UNUSED_LABEL
12074 x2 = XEXP (x1, 1);
12075 operands[1] = x2;
12076 goto L2496;
12077
12078 L2496: ATTRIBUTE_UNUSED_LABEL
12079 x1 = XVECEXP (x0, 0, 1);
12080 if (GET_CODE (x1) == CLOBBER)
12081 goto L2497;
12082 goto ret0;
12083
12084 L2497: ATTRIBUTE_UNUSED_LABEL
12085 x2 = XEXP (x1, 0);
12086 if (register_operand (x2, SImode))
12087 {
12088 operands[2] = x2;
12089 goto L2498;
12090 }
12091 goto ret0;
12092
12093 L2498: ATTRIBUTE_UNUSED_LABEL
12094 if ((!TARGET_MIPS16
12095 && Pmode == DImode && !TARGET_ABICALLS && TARGET_LONG_CALLS))
12096 {
12097 return 300;
12098 }
12099 L2522: ATTRIBUTE_UNUSED_LABEL
12100 if ((Pmode == DImode && TARGET_ABICALLS && TARGET_LONG_CALLS))
12101 {
12102 return 303;
12103 }
12104 goto ret0;
12105
12106 L217: ATTRIBUTE_UNUSED_LABEL
12107 x1 = XVECEXP (x0, 0, 0);
12108 if (GET_CODE (x1) == SET)
12109 goto L218;
12110 goto ret0;
12111
12112 L218: ATTRIBUTE_UNUSED_LABEL
12113 x2 = XEXP (x1, 0);
12114 switch (GET_MODE (x2))
12115 {
12116 case SImode:
12117 goto L3574;
12118 case DImode:
12119 goto L3575;
12120 default:
12121 break;
12122 }
12123 goto ret0;
12124
12125 L3574: ATTRIBUTE_UNUSED_LABEL
12126 if (register_operand (x2, SImode))
12127 {
12128 operands[0] = x2;
12129 goto L219;
12130 }
12131 goto ret0;
12132
12133 L219: ATTRIBUTE_UNUSED_LABEL
12134 x2 = XEXP (x1, 1);
12135 if (GET_MODE (x2) == SImode)
12136 goto L3576;
12137 goto ret0;
12138
12139 L3576: ATTRIBUTE_UNUSED_LABEL
12140 switch (GET_CODE (x2))
12141 {
12142 case MULT:
12143 goto L220;
12144 case NEG:
12145 goto L325;
12146 case TRUNCATE:
12147 goto L521;
12148 default:
12149 break;
12150 }
12151 goto ret0;
12152
12153 L220: ATTRIBUTE_UNUSED_LABEL
12154 x3 = XEXP (x2, 0);
12155 if (register_operand (x3, SImode))
12156 {
12157 operands[1] = x3;
12158 goto L221;
12159 }
12160 goto ret0;
12161
12162 L221: ATTRIBUTE_UNUSED_LABEL
12163 x3 = XEXP (x2, 1);
12164 if (register_operand (x3, SImode))
12165 {
12166 operands[2] = x3;
12167 goto L222;
12168 }
12169 goto ret0;
12170
12171 L222: ATTRIBUTE_UNUSED_LABEL
12172 x1 = XVECEXP (x0, 0, 1);
12173 if (GET_CODE (x1) == CLOBBER)
12174 goto L223;
12175 goto ret0;
12176
12177 L223: ATTRIBUTE_UNUSED_LABEL
12178 x2 = XEXP (x1, 0);
12179 if (scratch_operand (x2, SImode))
12180 {
12181 operands[3] = x2;
12182 goto L224;
12183 }
12184 goto ret0;
12185
12186 L224: ATTRIBUTE_UNUSED_LABEL
12187 x1 = XVECEXP (x0, 0, 2);
12188 if (GET_CODE (x1) == CLOBBER)
12189 goto L225;
12190 goto ret0;
12191
12192 L225: ATTRIBUTE_UNUSED_LABEL
12193 x2 = XEXP (x1, 0);
12194 if (scratch_operand (x2, SImode))
12195 {
12196 operands[4] = x2;
12197 goto L226;
12198 }
12199 goto ret0;
12200
12201 L226: ATTRIBUTE_UNUSED_LABEL
12202 x1 = XVECEXP (x0, 0, 3);
12203 if (GET_CODE (x1) == CLOBBER)
12204 goto L227;
12205 goto ret0;
12206
12207 L227: ATTRIBUTE_UNUSED_LABEL
12208 x2 = XEXP (x1, 0);
12209 if (scratch_operand (x2, SImode))
12210 {
12211 operands[5] = x2;
12212 goto L228;
12213 }
12214 goto ret0;
12215
12216 L228: ATTRIBUTE_UNUSED_LABEL
12217 if ((GENERATE_MULT3_SI
12218 || TARGET_MAD))
12219 {
12220 return 34;
12221 }
12222 L264: ATTRIBUTE_UNUSED_LABEL
12223 if ((TARGET_MIPS4000 && !TARGET_MIPS16))
12224 {
12225 return 36;
12226 }
12227 goto ret0;
12228
12229 L325: ATTRIBUTE_UNUSED_LABEL
12230 x3 = XEXP (x2, 0);
12231 if (GET_MODE (x3) == SImode
12232 && GET_CODE (x3) == MULT)
12233 goto L326;
12234 goto ret0;
12235
12236 L326: ATTRIBUTE_UNUSED_LABEL
12237 x4 = XEXP (x3, 0);
12238 if (register_operand (x4, SImode))
12239 {
12240 operands[1] = x4;
12241 goto L327;
12242 }
12243 goto ret0;
12244
12245 L327: ATTRIBUTE_UNUSED_LABEL
12246 x4 = XEXP (x3, 1);
12247 if (register_operand (x4, SImode))
12248 {
12249 operands[2] = x4;
12250 goto L328;
12251 }
12252 goto ret0;
12253
12254 L328: ATTRIBUTE_UNUSED_LABEL
12255 x1 = XVECEXP (x0, 0, 1);
12256 if (GET_CODE (x1) == CLOBBER)
12257 goto L329;
12258 goto ret0;
12259
12260 L329: ATTRIBUTE_UNUSED_LABEL
12261 x2 = XEXP (x1, 0);
12262 if (scratch_operand (x2, SImode))
12263 {
12264 operands[3] = x2;
12265 goto L330;
12266 }
12267 goto ret0;
12268
12269 L330: ATTRIBUTE_UNUSED_LABEL
12270 x1 = XVECEXP (x0, 0, 2);
12271 if (GET_CODE (x1) == CLOBBER)
12272 goto L331;
12273 goto ret0;
12274
12275 L331: ATTRIBUTE_UNUSED_LABEL
12276 x2 = XEXP (x1, 0);
12277 if (scratch_operand (x2, SImode))
12278 {
12279 operands[4] = x2;
12280 goto L332;
12281 }
12282 goto ret0;
12283
12284 L332: ATTRIBUTE_UNUSED_LABEL
12285 x1 = XVECEXP (x0, 0, 3);
12286 if (GET_CODE (x1) == CLOBBER)
12287 goto L333;
12288 goto ret0;
12289
12290 L333: ATTRIBUTE_UNUSED_LABEL
12291 x2 = XEXP (x1, 0);
12292 if (scratch_operand (x2, SImode))
12293 {
12294 operands[5] = x2;
12295 goto L334;
12296 }
12297 goto ret0;
12298
12299 L334: ATTRIBUTE_UNUSED_LABEL
12300 if ((ISA_HAS_MULS && TARGET_64BIT))
12301 {
12302 return 39;
12303 }
12304 goto ret0;
12305
12306 L521: ATTRIBUTE_UNUSED_LABEL
12307 x3 = XEXP (x2, 0);
12308 if (highpart_shift_operator (x3, DImode))
12309 {
12310 operands[5] = x3;
12311 goto L522;
12312 }
12313 goto ret0;
12314
12315 L522: ATTRIBUTE_UNUSED_LABEL
12316 x4 = XEXP (x3, 0);
12317 if (GET_MODE (x4) == DImode)
12318 goto L3579;
12319 goto ret0;
12320
12321 L3579: ATTRIBUTE_UNUSED_LABEL
12322 switch (GET_CODE (x4))
12323 {
12324 case MULT:
12325 goto L523;
12326 case NEG:
12327 goto L551;
12328 default:
12329 break;
12330 }
12331 goto ret0;
12332
12333 L523: ATTRIBUTE_UNUSED_LABEL
12334 x5 = XEXP (x4, 0);
12335 if (extend_operator (x5, DImode))
12336 {
12337 operands[3] = x5;
12338 goto L524;
12339 }
12340 goto ret0;
12341
12342 L524: ATTRIBUTE_UNUSED_LABEL
12343 x6 = XEXP (x5, 0);
12344 if (register_operand (x6, SImode))
12345 {
12346 operands[1] = x6;
12347 goto L525;
12348 }
12349 goto ret0;
12350
12351 L525: ATTRIBUTE_UNUSED_LABEL
12352 x5 = XEXP (x4, 1);
12353 if (extend_operator (x5, DImode))
12354 {
12355 operands[4] = x5;
12356 goto L526;
12357 }
12358 goto ret0;
12359
12360 L526: ATTRIBUTE_UNUSED_LABEL
12361 x6 = XEXP (x5, 0);
12362 if (register_operand (x6, SImode))
12363 {
12364 operands[2] = x6;
12365 goto L527;
12366 }
12367 goto ret0;
12368
12369 L527: ATTRIBUTE_UNUSED_LABEL
12370 x4 = XEXP (x3, 1);
12371 if (GET_CODE (x4) == CONST_INT
12372 && XWINT (x4, 0) == 32LL)
12373 goto L528;
12374 goto ret0;
12375
12376 L528: ATTRIBUTE_UNUSED_LABEL
12377 x1 = XVECEXP (x0, 0, 1);
12378 if (GET_CODE (x1) == CLOBBER)
12379 goto L529;
12380 goto ret0;
12381
12382 L529: ATTRIBUTE_UNUSED_LABEL
12383 x2 = XEXP (x1, 0);
12384 if (scratch_operand (x2, SImode))
12385 {
12386 operands[6] = x2;
12387 goto L530;
12388 }
12389 goto ret0;
12390
12391 L530: ATTRIBUTE_UNUSED_LABEL
12392 x1 = XVECEXP (x0, 0, 2);
12393 if (GET_CODE (x1) == CLOBBER)
12394 goto L531;
12395 goto ret0;
12396
12397 L531: ATTRIBUTE_UNUSED_LABEL
12398 x2 = XEXP (x1, 0);
12399 if (scratch_operand (x2, SImode))
12400 {
12401 operands[7] = x2;
12402 goto L532;
12403 }
12404 goto ret0;
12405
12406 L532: ATTRIBUTE_UNUSED_LABEL
12407 x1 = XVECEXP (x0, 0, 3);
12408 if (GET_CODE (x1) == CLOBBER)
12409 goto L533;
12410 goto ret0;
12411
12412 L533: ATTRIBUTE_UNUSED_LABEL
12413 x2 = XEXP (x1, 0);
12414 if (scratch_operand (x2, SImode))
12415 {
12416 operands[8] = x2;
12417 goto L534;
12418 }
12419 goto ret0;
12420
12421 L534: ATTRIBUTE_UNUSED_LABEL
12422 if ((ISA_HAS_MULHI
12423 && TARGET_64BIT
12424 && GET_CODE (operands[3]) == GET_CODE (operands[4])))
12425 {
12426 return 48;
12427 }
12428 goto ret0;
12429
12430 L551: ATTRIBUTE_UNUSED_LABEL
12431 x5 = XEXP (x4, 0);
12432 if (GET_MODE (x5) == DImode
12433 && GET_CODE (x5) == MULT)
12434 goto L552;
12435 goto ret0;
12436
12437 L552: ATTRIBUTE_UNUSED_LABEL
12438 x6 = XEXP (x5, 0);
12439 if (extend_operator (x6, DImode))
12440 {
12441 operands[3] = x6;
12442 goto L553;
12443 }
12444 goto ret0;
12445
12446 L553: ATTRIBUTE_UNUSED_LABEL
12447 x7 = XEXP (x6, 0);
12448 if (register_operand (x7, SImode))
12449 {
12450 operands[1] = x7;
12451 goto L554;
12452 }
12453 goto ret0;
12454
12455 L554: ATTRIBUTE_UNUSED_LABEL
12456 x6 = XEXP (x5, 1);
12457 if (extend_operator (x6, DImode))
12458 {
12459 operands[4] = x6;
12460 goto L555;
12461 }
12462 goto ret0;
12463
12464 L555: ATTRIBUTE_UNUSED_LABEL
12465 x7 = XEXP (x6, 0);
12466 if (register_operand (x7, SImode))
12467 {
12468 operands[2] = x7;
12469 goto L556;
12470 }
12471 goto ret0;
12472
12473 L556: ATTRIBUTE_UNUSED_LABEL
12474 x4 = XEXP (x3, 1);
12475 if (GET_CODE (x4) == CONST_INT
12476 && XWINT (x4, 0) == 32LL)
12477 goto L557;
12478 goto ret0;
12479
12480 L557: ATTRIBUTE_UNUSED_LABEL
12481 x1 = XVECEXP (x0, 0, 1);
12482 if (GET_CODE (x1) == CLOBBER)
12483 goto L558;
12484 goto ret0;
12485
12486 L558: ATTRIBUTE_UNUSED_LABEL
12487 x2 = XEXP (x1, 0);
12488 if (scratch_operand (x2, SImode))
12489 {
12490 operands[6] = x2;
12491 goto L559;
12492 }
12493 goto ret0;
12494
12495 L559: ATTRIBUTE_UNUSED_LABEL
12496 x1 = XVECEXP (x0, 0, 2);
12497 if (GET_CODE (x1) == CLOBBER)
12498 goto L560;
12499 goto ret0;
12500
12501 L560: ATTRIBUTE_UNUSED_LABEL
12502 x2 = XEXP (x1, 0);
12503 if (scratch_operand (x2, SImode))
12504 {
12505 operands[7] = x2;
12506 goto L561;
12507 }
12508 goto ret0;
12509
12510 L561: ATTRIBUTE_UNUSED_LABEL
12511 x1 = XVECEXP (x0, 0, 3);
12512 if (GET_CODE (x1) == CLOBBER)
12513 goto L562;
12514 goto ret0;
12515
12516 L562: ATTRIBUTE_UNUSED_LABEL
12517 x2 = XEXP (x1, 0);
12518 if (scratch_operand (x2, SImode))
12519 {
12520 operands[8] = x2;
12521 goto L563;
12522 }
12523 goto ret0;
12524
12525 L563: ATTRIBUTE_UNUSED_LABEL
12526 if ((ISA_HAS_MULHI
12527 && TARGET_64BIT
12528 && GET_CODE (operands[3]) == GET_CODE (operands[4])))
12529 {
12530 return 49;
12531 }
12532 goto ret0;
12533
12534 L3575: ATTRIBUTE_UNUSED_LABEL
12535 if (register_operand (x2, DImode))
12536 {
12537 operands[0] = x2;
12538 goto L387;
12539 }
12540 goto ret0;
12541
12542 L387: ATTRIBUTE_UNUSED_LABEL
12543 x2 = XEXP (x1, 1);
12544 if (GET_MODE (x2) == DImode
12545 && GET_CODE (x2) == MULT)
12546 goto L388;
12547 goto ret0;
12548
12549 L388: ATTRIBUTE_UNUSED_LABEL
12550 x3 = XEXP (x2, 0);
12551 if (se_register_operand (x3, DImode))
12552 {
12553 operands[1] = x3;
12554 goto L389;
12555 }
12556 goto ret0;
12557
12558 L389: ATTRIBUTE_UNUSED_LABEL
12559 x3 = XEXP (x2, 1);
12560 if (register_operand (x3, DImode))
12561 {
12562 operands[2] = x3;
12563 goto L390;
12564 }
12565 goto ret0;
12566
12567 L390: ATTRIBUTE_UNUSED_LABEL
12568 x1 = XVECEXP (x0, 0, 1);
12569 if (GET_CODE (x1) == CLOBBER)
12570 goto L391;
12571 goto ret0;
12572
12573 L391: ATTRIBUTE_UNUSED_LABEL
12574 x2 = XEXP (x1, 0);
12575 if (scratch_operand (x2, DImode))
12576 {
12577 operands[3] = x2;
12578 goto L392;
12579 }
12580 goto ret0;
12581
12582 L392: ATTRIBUTE_UNUSED_LABEL
12583 x1 = XVECEXP (x0, 0, 2);
12584 if (GET_CODE (x1) == CLOBBER)
12585 goto L393;
12586 goto ret0;
12587
12588 L393: ATTRIBUTE_UNUSED_LABEL
12589 x2 = XEXP (x1, 0);
12590 if (scratch_operand (x2, DImode))
12591 {
12592 operands[4] = x2;
12593 goto L394;
12594 }
12595 goto ret0;
12596
12597 L394: ATTRIBUTE_UNUSED_LABEL
12598 x1 = XVECEXP (x0, 0, 3);
12599 if (GET_CODE (x1) == CLOBBER)
12600 goto L395;
12601 goto ret0;
12602
12603 L395: ATTRIBUTE_UNUSED_LABEL
12604 x2 = XEXP (x1, 0);
12605 if (scratch_operand (x2, DImode))
12606 {
12607 operands[5] = x2;
12608 goto L396;
12609 }
12610 goto ret0;
12611
12612 L396: ATTRIBUTE_UNUSED_LABEL
12613 if ((TARGET_64BIT && (GENERATE_MULT3_DI || TARGET_MIPS4000 || TARGET_MIPS16)))
12614 {
12615 return 42;
12616 }
12617 goto ret0;
12618
12619 L236: ATTRIBUTE_UNUSED_LABEL
12620 x1 = XVECEXP (x0, 0, 0);
12621 if (GET_CODE (x1) == SET)
12622 goto L237;
12623 goto ret0;
12624
12625 L237: ATTRIBUTE_UNUSED_LABEL
12626 return recog_8 (x0, insn, pnum_clobbers);
12627
12628 L272: ATTRIBUTE_UNUSED_LABEL
12629 x1 = XVECEXP (x0, 0, 0);
12630 if (GET_CODE (x1) == SET)
12631 goto L273;
12632 goto ret0;
12633
12634 L273: ATTRIBUTE_UNUSED_LABEL
12635 x2 = XEXP (x1, 0);
12636 if (register_operand (x2, SImode))
12637 {
12638 operands[0] = x2;
12639 goto L274;
12640 }
12641 goto ret0;
12642
12643 L274: ATTRIBUTE_UNUSED_LABEL
12644 x2 = XEXP (x1, 1);
12645 if (GET_MODE (x2) == SImode)
12646 goto L3607;
12647 goto ret0;
12648
12649 L3607: ATTRIBUTE_UNUSED_LABEL
12650 switch (GET_CODE (x2))
12651 {
12652 case PLUS:
12653 goto L275;
12654 case MINUS:
12655 goto L300;
12656 default:
12657 break;
12658 }
12659 goto ret0;
12660
12661 L275: ATTRIBUTE_UNUSED_LABEL
12662 x3 = XEXP (x2, 0);
12663 if (GET_MODE (x3) == SImode
12664 && GET_CODE (x3) == MULT)
12665 goto L276;
12666 goto ret0;
12667
12668 L276: ATTRIBUTE_UNUSED_LABEL
12669 x4 = XEXP (x3, 0);
12670 if (register_operand (x4, SImode))
12671 {
12672 operands[1] = x4;
12673 goto L277;
12674 }
12675 goto ret0;
12676
12677 L277: ATTRIBUTE_UNUSED_LABEL
12678 x4 = XEXP (x3, 1);
12679 if (register_operand (x4, SImode))
12680 {
12681 operands[2] = x4;
12682 goto L278;
12683 }
12684 goto ret0;
12685
12686 L278: ATTRIBUTE_UNUSED_LABEL
12687 x3 = XEXP (x2, 1);
12688 if (register_operand (x3, SImode))
12689 {
12690 operands[3] = x3;
12691 goto L279;
12692 }
12693 goto ret0;
12694
12695 L279: ATTRIBUTE_UNUSED_LABEL
12696 x1 = XVECEXP (x0, 0, 1);
12697 if (GET_CODE (x1) == CLOBBER)
12698 goto L280;
12699 goto ret0;
12700
12701 L280: ATTRIBUTE_UNUSED_LABEL
12702 x2 = XEXP (x1, 0);
12703 if (scratch_operand (x2, SImode))
12704 {
12705 operands[4] = x2;
12706 goto L281;
12707 }
12708 goto ret0;
12709
12710 L281: ATTRIBUTE_UNUSED_LABEL
12711 x1 = XVECEXP (x0, 0, 2);
12712 if (GET_CODE (x1) == CLOBBER)
12713 goto L282;
12714 goto ret0;
12715
12716 L282: ATTRIBUTE_UNUSED_LABEL
12717 x2 = XEXP (x1, 0);
12718 if (scratch_operand (x2, SImode))
12719 {
12720 operands[5] = x2;
12721 goto L283;
12722 }
12723 goto ret0;
12724
12725 L283: ATTRIBUTE_UNUSED_LABEL
12726 x1 = XVECEXP (x0, 0, 3);
12727 if (GET_CODE (x1) == CLOBBER)
12728 goto L284;
12729 goto ret0;
12730
12731 L284: ATTRIBUTE_UNUSED_LABEL
12732 x2 = XEXP (x1, 0);
12733 if (scratch_operand (x2, SImode))
12734 {
12735 operands[6] = x2;
12736 goto L285;
12737 }
12738 goto ret0;
12739
12740 L285: ATTRIBUTE_UNUSED_LABEL
12741 x1 = XVECEXP (x0, 0, 4);
12742 if (GET_CODE (x1) == CLOBBER)
12743 goto L286;
12744 goto ret0;
12745
12746 L286: ATTRIBUTE_UNUSED_LABEL
12747 x2 = XEXP (x1, 0);
12748 if (scratch_operand (x2, SImode))
12749 {
12750 operands[7] = x2;
12751 goto L287;
12752 }
12753 goto ret0;
12754
12755 L287: ATTRIBUTE_UNUSED_LABEL
12756 if (((TARGET_MIPS3900
12757 || TARGET_MIPS5400
12758 || TARGET_MIPS5500
12759 || ISA_HAS_MADD_MSUB)
12760 && !TARGET_MIPS16))
12761 {
12762 return 37;
12763 }
12764 goto ret0;
12765
12766 L300: ATTRIBUTE_UNUSED_LABEL
12767 x3 = XEXP (x2, 0);
12768 if (register_operand (x3, SImode))
12769 {
12770 operands[1] = x3;
12771 goto L301;
12772 }
12773 goto ret0;
12774
12775 L301: ATTRIBUTE_UNUSED_LABEL
12776 x3 = XEXP (x2, 1);
12777 if (GET_MODE (x3) == SImode
12778 && GET_CODE (x3) == MULT)
12779 goto L302;
12780 goto ret0;
12781
12782 L302: ATTRIBUTE_UNUSED_LABEL
12783 x4 = XEXP (x3, 0);
12784 if (register_operand (x4, SImode))
12785 {
12786 operands[2] = x4;
12787 goto L303;
12788 }
12789 goto ret0;
12790
12791 L303: ATTRIBUTE_UNUSED_LABEL
12792 x4 = XEXP (x3, 1);
12793 if (register_operand (x4, SImode))
12794 {
12795 operands[3] = x4;
12796 goto L304;
12797 }
12798 goto ret0;
12799
12800 L304: ATTRIBUTE_UNUSED_LABEL
12801 x1 = XVECEXP (x0, 0, 1);
12802 if (GET_CODE (x1) == CLOBBER)
12803 goto L305;
12804 goto ret0;
12805
12806 L305: ATTRIBUTE_UNUSED_LABEL
12807 x2 = XEXP (x1, 0);
12808 if (scratch_operand (x2, SImode))
12809 {
12810 operands[4] = x2;
12811 goto L306;
12812 }
12813 goto ret0;
12814
12815 L306: ATTRIBUTE_UNUSED_LABEL
12816 x1 = XVECEXP (x0, 0, 2);
12817 if (GET_CODE (x1) == CLOBBER)
12818 goto L307;
12819 goto ret0;
12820
12821 L307: ATTRIBUTE_UNUSED_LABEL
12822 x2 = XEXP (x1, 0);
12823 if (scratch_operand (x2, SImode))
12824 {
12825 operands[5] = x2;
12826 goto L308;
12827 }
12828 goto ret0;
12829
12830 L308: ATTRIBUTE_UNUSED_LABEL
12831 x1 = XVECEXP (x0, 0, 3);
12832 if (GET_CODE (x1) == CLOBBER)
12833 goto L309;
12834 goto ret0;
12835
12836 L309: ATTRIBUTE_UNUSED_LABEL
12837 x2 = XEXP (x1, 0);
12838 if (scratch_operand (x2, SImode))
12839 {
12840 operands[6] = x2;
12841 goto L310;
12842 }
12843 goto ret0;
12844
12845 L310: ATTRIBUTE_UNUSED_LABEL
12846 x1 = XVECEXP (x0, 0, 4);
12847 if (GET_CODE (x1) == CLOBBER)
12848 goto L311;
12849 goto ret0;
12850
12851 L311: ATTRIBUTE_UNUSED_LABEL
12852 x2 = XEXP (x1, 0);
12853 if (scratch_operand (x2, SImode))
12854 {
12855 operands[7] = x2;
12856 goto L312;
12857 }
12858 goto ret0;
12859
12860 L312: ATTRIBUTE_UNUSED_LABEL
12861 if ((ISA_HAS_MADD_MSUB))
12862 {
12863 return 38;
12864 }
12865 L358: ATTRIBUTE_UNUSED_LABEL
12866 if ((ISA_HAS_MSAC && TARGET_64BIT))
12867 {
12868 return 40;
12869 }
12870 goto ret0;
12871
12872 L1655: ATTRIBUTE_UNUSED_LABEL
12873 x1 = XVECEXP (x0, 0, 0);
12874 if (GET_CODE (x1) == SET)
12875 goto L1656;
12876 goto ret0;
12877
12878 L1656: ATTRIBUTE_UNUSED_LABEL
12879 x2 = XEXP (x1, 0);
12880 if (memory_operand (x2, BLKmode))
12881 {
12882 operands[0] = x2;
12883 goto L1657;
12884 }
12885 goto ret0;
12886
12887 L1657: ATTRIBUTE_UNUSED_LABEL
12888 x2 = XEXP (x1, 1);
12889 if (memory_operand (x2, BLKmode))
12890 {
12891 operands[1] = x2;
12892 goto L1658;
12893 }
12894 goto ret0;
12895
12896 L1658: ATTRIBUTE_UNUSED_LABEL
12897 x1 = XVECEXP (x0, 0, 1);
12898 if (GET_CODE (x1) == CLOBBER)
12899 goto L1659;
12900 goto ret0;
12901
12902 L1659: ATTRIBUTE_UNUSED_LABEL
12903 x2 = XEXP (x1, 0);
12904 if (scratch_operand (x2, SImode))
12905 {
12906 operands[4] = x2;
12907 goto L1660;
12908 }
12909 goto ret0;
12910
12911 L1660: ATTRIBUTE_UNUSED_LABEL
12912 x1 = XVECEXP (x0, 0, 2);
12913 if (GET_CODE (x1) == CLOBBER)
12914 goto L1661;
12915 goto ret0;
12916
12917 L1661: ATTRIBUTE_UNUSED_LABEL
12918 x2 = XEXP (x1, 0);
12919 if (scratch_operand (x2, SImode))
12920 {
12921 operands[5] = x2;
12922 goto L1662;
12923 }
12924 goto ret0;
12925
12926 L1662: ATTRIBUTE_UNUSED_LABEL
12927 x1 = XVECEXP (x0, 0, 3);
12928 if (GET_CODE (x1) == CLOBBER)
12929 goto L1663;
12930 goto ret0;
12931
12932 L1663: ATTRIBUTE_UNUSED_LABEL
12933 x2 = XEXP (x1, 0);
12934 if (scratch_operand (x2, SImode))
12935 {
12936 operands[6] = x2;
12937 goto L1664;
12938 }
12939 goto ret0;
12940
12941 L1664: ATTRIBUTE_UNUSED_LABEL
12942 x1 = XVECEXP (x0, 0, 4);
12943 if (GET_CODE (x1) == CLOBBER)
12944 goto L1665;
12945 goto ret0;
12946
12947 L1665: ATTRIBUTE_UNUSED_LABEL
12948 x2 = XEXP (x1, 0);
12949 if (scratch_operand (x2, SImode))
12950 {
12951 operands[7] = x2;
12952 goto L1666;
12953 }
12954 goto ret0;
12955
12956 L1666: ATTRIBUTE_UNUSED_LABEL
12957 x1 = XVECEXP (x0, 0, 5);
12958 if (GET_CODE (x1) == USE)
12959 goto L1667;
12960 goto ret0;
12961
12962 L1667: ATTRIBUTE_UNUSED_LABEL
12963 x2 = XEXP (x1, 0);
12964 if (small_int (x2, SImode))
12965 {
12966 operands[2] = x2;
12967 goto L1668;
12968 }
12969 goto ret0;
12970
12971 L1668: ATTRIBUTE_UNUSED_LABEL
12972 x1 = XVECEXP (x0, 0, 6);
12973 if (GET_CODE (x1) == USE)
12974 goto L1669;
12975 goto ret0;
12976
12977 L1669: ATTRIBUTE_UNUSED_LABEL
12978 x2 = XEXP (x1, 0);
12979 if (small_int (x2, SImode))
12980 {
12981 operands[3] = x2;
12982 goto L1670;
12983 }
12984 goto ret0;
12985
12986 L1670: ATTRIBUTE_UNUSED_LABEL
12987 x1 = XVECEXP (x0, 0, 7);
12988 if (GET_CODE (x1) == USE)
12989 goto L1671;
12990 goto ret0;
12991
12992 L1671: ATTRIBUTE_UNUSED_LABEL
12993 x2 = XEXP (x1, 0);
12994 if (GET_CODE (x2) == CONST_INT)
12995 goto L3609;
12996 goto ret0;
12997
12998 L3609: ATTRIBUTE_UNUSED_LABEL
12999 if ((int) XWINT (x2, 0) == XWINT (x2, 0))
13000 switch ((int) XWINT (x2, 0))
13001 {
13002 case 0LL:
13003 goto L3614;
13004 case 1LL:
13005 goto L3616;
13006 case 2LL:
13007 goto L3618;
13008 default:
13009 break;
13010 }
13011 goto ret0;
13012
13013 L3614: ATTRIBUTE_UNUSED_LABEL
13014 return 190;
13015 L3615: ATTRIBUTE_UNUSED_LABEL
13016 if ((TARGET_MIPS16))
13017 {
13018 return 191;
13019 }
13020 goto ret0;
13021
13022 L3616: ATTRIBUTE_UNUSED_LABEL
13023 return 192;
13024 L3617: ATTRIBUTE_UNUSED_LABEL
13025 if ((TARGET_MIPS16))
13026 {
13027 return 193;
13028 }
13029 goto ret0;
13030
13031 L3618: ATTRIBUTE_UNUSED_LABEL
13032 return 194;
13033 ret0:
13034 return -1;
13035 }
13036
13037 int recog PARAMS ((rtx, rtx, int *));
13038 int
13039 recog (x0, insn, pnum_clobbers)
13040 rtx x0 ATTRIBUTE_UNUSED;
13041 rtx insn ATTRIBUTE_UNUSED;
13042 int *pnum_clobbers ATTRIBUTE_UNUSED;
13043 {
13044 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
13045 rtx x1 ATTRIBUTE_UNUSED;
13046 rtx x2 ATTRIBUTE_UNUSED;
13047 rtx x3 ATTRIBUTE_UNUSED;
13048 rtx x4 ATTRIBUTE_UNUSED;
13049 rtx x5 ATTRIBUTE_UNUSED;
13050 rtx x6 ATTRIBUTE_UNUSED;
13051 rtx x7 ATTRIBUTE_UNUSED;
13052 int tem ATTRIBUTE_UNUSED;
13053 recog_data.insn = NULL_RTX;
13054
13055 switch (GET_CODE (x0))
13056 {
13057 case TRAP_IF:
13058 goto L1;
13059 case SET:
13060 goto L9;
13061 case PARALLEL:
13062 goto L3240;
13063 case UNSPEC:
13064 goto L3244;
13065 case UNSPEC_VOLATILE:
13066 goto L3246;
13067 case RETURN:
13068 goto L3247;
13069 case PREFETCH:
13070 goto L2636;
13071 case CONST_INT:
13072 goto L3250;
13073 default:
13074 break;
13075 }
13076 goto ret0;
13077
13078 L1: ATTRIBUTE_UNUSED_LABEL
13079 x1 = XEXP (x0, 0);
13080 if (GET_CODE (x1) == CONST_INT
13081 && XWINT (x1, 0) == 1LL)
13082 goto L2;
13083 if (trap_cmp_op (x1, VOIDmode))
13084 {
13085 operands[0] = x1;
13086 goto L5;
13087 }
13088 L884: ATTRIBUTE_UNUSED_LABEL
13089 if (GET_CODE (x1) == EQ)
13090 goto L885;
13091 goto ret0;
13092
13093 L2: ATTRIBUTE_UNUSED_LABEL
13094 x1 = XEXP (x0, 1);
13095 if (GET_CODE (x1) == CONST_INT
13096 && XWINT (x1, 0) == 0LL)
13097 {
13098 return 0;
13099 }
13100 goto ret0;
13101
13102 L5: ATTRIBUTE_UNUSED_LABEL
13103 x2 = XEXP (x1, 0);
13104 if (reg_or_0_operand (x2, SImode))
13105 {
13106 operands[1] = x2;
13107 goto L6;
13108 }
13109 goto L884;
13110
13111 L6: ATTRIBUTE_UNUSED_LABEL
13112 x2 = XEXP (x1, 1);
13113 if (nonmemory_operand (x2, SImode))
13114 {
13115 operands[2] = x2;
13116 goto L7;
13117 }
13118 goto L884;
13119
13120 L7: ATTRIBUTE_UNUSED_LABEL
13121 x1 = XEXP (x0, 1);
13122 if (GET_CODE (x1) == CONST_INT
13123 && XWINT (x1, 0) == 0LL
13124 && (ISA_HAS_COND_TRAP))
13125 {
13126 return 1;
13127 }
13128 x1 = XEXP (x0, 0);
13129 goto L884;
13130
13131 L885: ATTRIBUTE_UNUSED_LABEL
13132 x2 = XEXP (x1, 0);
13133 if (register_operand (x2, VOIDmode))
13134 {
13135 operands[0] = x2;
13136 goto L886;
13137 }
13138 goto ret0;
13139
13140 L886: ATTRIBUTE_UNUSED_LABEL
13141 x2 = XEXP (x1, 1);
13142 if (true_reg_or_0_operand (x2, VOIDmode))
13143 {
13144 operands[1] = x2;
13145 goto L887;
13146 }
13147 goto ret0;
13148
13149 L887: ATTRIBUTE_UNUSED_LABEL
13150 x1 = XEXP (x0, 1);
13151 if (immediate_operand (x1, VOIDmode))
13152 {
13153 operands[2] = x1;
13154 goto L888;
13155 }
13156 goto ret0;
13157
13158 L888: ATTRIBUTE_UNUSED_LABEL
13159 if ((!TARGET_MIPS16))
13160 {
13161 return 71;
13162 }
13163 L902: ATTRIBUTE_UNUSED_LABEL
13164 if ((TARGET_MIPS16)
13165 && pnum_clobbers != NULL)
13166 {
13167 *pnum_clobbers = 1;
13168 return 72;
13169 }
13170 goto ret0;
13171
13172 L9: ATTRIBUTE_UNUSED_LABEL
13173 return recog_5 (x0, insn, pnum_clobbers);
13174
13175 L3240: ATTRIBUTE_UNUSED_LABEL
13176 return recog_9 (x0, insn, pnum_clobbers);
13177
13178 L3244: ATTRIBUTE_UNUSED_LABEL
13179 if (XVECLEN (x0, 0) == 1)
13180 goto L3619;
13181 goto ret0;
13182
13183 L3619: ATTRIBUTE_UNUSED_LABEL
13184 switch (XINT (x0, 1))
13185 {
13186 case 5LL:
13187 goto L1535;
13188 case 11LL:
13189 goto L2446;
13190 default:
13191 break;
13192 }
13193 goto ret0;
13194
13195 L1535: ATTRIBUTE_UNUSED_LABEL
13196 x1 = XVECEXP (x0, 0, 0);
13197 if (register_operand (x1, VOIDmode))
13198 {
13199 operands[0] = x1;
13200 return 168;
13201 }
13202 goto ret0;
13203
13204 L2446: ATTRIBUTE_UNUSED_LABEL
13205 x1 = XVECEXP (x0, 0, 0);
13206 switch (GET_MODE (x1))
13207 {
13208 case SImode:
13209 goto L3621;
13210 case DImode:
13211 goto L3622;
13212 default:
13213 break;
13214 }
13215 goto ret0;
13216
13217 L3621: ATTRIBUTE_UNUSED_LABEL
13218 if (register_operand (x1, SImode))
13219 {
13220 operands[0] = x1;
13221 goto L2447;
13222 }
13223 goto ret0;
13224
13225 L2447: ATTRIBUTE_UNUSED_LABEL
13226 if ((! TARGET_64BIT)
13227 && pnum_clobbers != NULL)
13228 {
13229 *pnum_clobbers = 1;
13230 return 293;
13231 }
13232 goto ret0;
13233
13234 L3622: ATTRIBUTE_UNUSED_LABEL
13235 if (register_operand (x1, DImode))
13236 {
13237 operands[0] = x1;
13238 goto L2456;
13239 }
13240 goto ret0;
13241
13242 L2456: ATTRIBUTE_UNUSED_LABEL
13243 if ((TARGET_64BIT)
13244 && pnum_clobbers != NULL)
13245 {
13246 *pnum_clobbers = 1;
13247 return 294;
13248 }
13249 goto ret0;
13250
13251 L3246: ATTRIBUTE_UNUSED_LABEL
13252 if (XVECLEN (x0, 0) == 1)
13253 goto L3623;
13254 goto ret0;
13255
13256 L3623: ATTRIBUTE_UNUSED_LABEL
13257 switch (XINT (x0, 1))
13258 {
13259 case 6LL:
13260 goto L2421;
13261 case 10LL:
13262 goto L2458;
13263 case 12LL:
13264 goto L2769;
13265 case 13LL:
13266 goto L2772;
13267 case 14LL:
13268 goto L2775;
13269 case 15LL:
13270 goto L2778;
13271 case 16LL:
13272 goto L2781;
13273 case 17LL:
13274 goto L2784;
13275 case 18LL:
13276 goto L2787;
13277 case 19LL:
13278 goto L2789;
13279 case 20LL:
13280 goto L2791;
13281 default:
13282 break;
13283 }
13284 goto ret0;
13285
13286 L2421: ATTRIBUTE_UNUSED_LABEL
13287 x1 = XVECEXP (x0, 0, 0);
13288 if (GET_CODE (x1) == CONST_INT
13289 && XWINT (x1, 0) == 0LL)
13290 {
13291 return 289;
13292 }
13293 goto ret0;
13294
13295 L2458: ATTRIBUTE_UNUSED_LABEL
13296 x1 = XVECEXP (x0, 0, 0);
13297 if (GET_CODE (x1) == CONST_INT
13298 && XWINT (x1, 0) == 0LL
13299 && (TARGET_ABICALLS && (mips_abi == ABI_32 || mips_abi == ABI_O64)))
13300 {
13301 return 295;
13302 }
13303 goto ret0;
13304
13305 L2769: ATTRIBUTE_UNUSED_LABEL
13306 x1 = XVECEXP (x0, 0, 0);
13307 if (consttable_operand (x1, QImode))
13308 {
13309 operands[0] = x1;
13310 goto L2770;
13311 }
13312 goto ret0;
13313
13314 L2770: ATTRIBUTE_UNUSED_LABEL
13315 if ((TARGET_MIPS16))
13316 {
13317 return 331;
13318 }
13319 goto ret0;
13320
13321 L2772: ATTRIBUTE_UNUSED_LABEL
13322 x1 = XVECEXP (x0, 0, 0);
13323 if (consttable_operand (x1, HImode))
13324 {
13325 operands[0] = x1;
13326 goto L2773;
13327 }
13328 goto ret0;
13329
13330 L2773: ATTRIBUTE_UNUSED_LABEL
13331 if ((TARGET_MIPS16))
13332 {
13333 return 332;
13334 }
13335 goto ret0;
13336
13337 L2775: ATTRIBUTE_UNUSED_LABEL
13338 x1 = XVECEXP (x0, 0, 0);
13339 if (consttable_operand (x1, SImode))
13340 {
13341 operands[0] = x1;
13342 goto L2776;
13343 }
13344 goto ret0;
13345
13346 L2776: ATTRIBUTE_UNUSED_LABEL
13347 if ((TARGET_MIPS16))
13348 {
13349 return 333;
13350 }
13351 goto ret0;
13352
13353 L2778: ATTRIBUTE_UNUSED_LABEL
13354 x1 = XVECEXP (x0, 0, 0);
13355 if (consttable_operand (x1, DImode))
13356 {
13357 operands[0] = x1;
13358 goto L2779;
13359 }
13360 goto ret0;
13361
13362 L2779: ATTRIBUTE_UNUSED_LABEL
13363 if ((TARGET_MIPS16))
13364 {
13365 return 334;
13366 }
13367 goto ret0;
13368
13369 L2781: ATTRIBUTE_UNUSED_LABEL
13370 x1 = XVECEXP (x0, 0, 0);
13371 if (consttable_operand (x1, SFmode))
13372 {
13373 operands[0] = x1;
13374 goto L2782;
13375 }
13376 goto ret0;
13377
13378 L2782: ATTRIBUTE_UNUSED_LABEL
13379 if ((TARGET_MIPS16))
13380 {
13381 return 335;
13382 }
13383 goto ret0;
13384
13385 L2784: ATTRIBUTE_UNUSED_LABEL
13386 x1 = XVECEXP (x0, 0, 0);
13387 if (consttable_operand (x1, DFmode))
13388 {
13389 operands[0] = x1;
13390 goto L2785;
13391 }
13392 goto ret0;
13393
13394 L2785: ATTRIBUTE_UNUSED_LABEL
13395 if ((TARGET_MIPS16))
13396 {
13397 return 336;
13398 }
13399 goto ret0;
13400
13401 L2787: ATTRIBUTE_UNUSED_LABEL
13402 x1 = XVECEXP (x0, 0, 0);
13403 if (GET_CODE (x1) == CONST_INT
13404 && XWINT (x1, 0) == 0LL
13405 && (TARGET_MIPS16))
13406 {
13407 return 337;
13408 }
13409 goto ret0;
13410
13411 L2789: ATTRIBUTE_UNUSED_LABEL
13412 x1 = XVECEXP (x0, 0, 0);
13413 if (GET_CODE (x1) == CONST_INT
13414 && XWINT (x1, 0) == 0LL
13415 && (TARGET_MIPS16))
13416 {
13417 return 338;
13418 }
13419 goto ret0;
13420
13421 L2791: ATTRIBUTE_UNUSED_LABEL
13422 x1 = XVECEXP (x0, 0, 0);
13423 if (GET_CODE (x1) == CONST_INT
13424 && XWINT (x1, 0) == 0LL
13425 && (TARGET_MIPS16))
13426 {
13427 return 339;
13428 }
13429 goto ret0;
13430
13431 L3247: ATTRIBUTE_UNUSED_LABEL
13432 if ((mips_can_use_return_insn ()))
13433 {
13434 return 290;
13435 }
13436 goto ret0;
13437
13438 L2636: ATTRIBUTE_UNUSED_LABEL
13439 x1 = XEXP (x0, 0);
13440 switch (GET_MODE (x1))
13441 {
13442 case SImode:
13443 goto L3634;
13444 case DImode:
13445 goto L3636;
13446 default:
13447 break;
13448 }
13449 goto ret0;
13450
13451 L3634: ATTRIBUTE_UNUSED_LABEL
13452 if (GET_CODE (x1) == PLUS)
13453 goto L2637;
13454 if (register_operand (x1, SImode))
13455 {
13456 operands[0] = x1;
13457 goto L2644;
13458 }
13459 goto ret0;
13460
13461 L2637: ATTRIBUTE_UNUSED_LABEL
13462 x2 = XEXP (x1, 0);
13463 if (register_operand (x2, SImode))
13464 {
13465 operands[0] = x2;
13466 goto L2638;
13467 }
13468 goto ret0;
13469
13470 L2638: ATTRIBUTE_UNUSED_LABEL
13471 x2 = XEXP (x1, 1);
13472 if (const_int_operand (x2, SImode))
13473 {
13474 operands[3] = x2;
13475 goto L2639;
13476 }
13477 goto ret0;
13478
13479 L2639: ATTRIBUTE_UNUSED_LABEL
13480 x1 = XEXP (x0, 1);
13481 if (const_int_operand (x1, SImode))
13482 {
13483 operands[1] = x1;
13484 goto L2640;
13485 }
13486 goto ret0;
13487
13488 L2640: ATTRIBUTE_UNUSED_LABEL
13489 x1 = XEXP (x0, 2);
13490 if (const_int_operand (x1, SImode))
13491 {
13492 operands[2] = x1;
13493 goto L2641;
13494 }
13495 goto ret0;
13496
13497 L2641: ATTRIBUTE_UNUSED_LABEL
13498 if ((ISA_HAS_PREFETCH && Pmode == SImode))
13499 {
13500 return 314;
13501 }
13502 goto ret0;
13503
13504 L2644: ATTRIBUTE_UNUSED_LABEL
13505 x1 = XEXP (x0, 1);
13506 if (const_int_operand (x1, SImode))
13507 {
13508 operands[1] = x1;
13509 goto L2645;
13510 }
13511 goto ret0;
13512
13513 L2645: ATTRIBUTE_UNUSED_LABEL
13514 x1 = XEXP (x0, 2);
13515 if (const_int_operand (x1, SImode))
13516 {
13517 operands[2] = x1;
13518 goto L2646;
13519 }
13520 goto ret0;
13521
13522 L2646: ATTRIBUTE_UNUSED_LABEL
13523 if ((ISA_HAS_PREFETCH && Pmode == SImode))
13524 {
13525 return 315;
13526 }
13527 goto ret0;
13528
13529 L3636: ATTRIBUTE_UNUSED_LABEL
13530 if (GET_CODE (x1) == PLUS)
13531 goto L2649;
13532 if (se_register_operand (x1, DImode))
13533 {
13534 operands[0] = x1;
13535 goto L2656;
13536 }
13537 goto ret0;
13538
13539 L2649: ATTRIBUTE_UNUSED_LABEL
13540 x2 = XEXP (x1, 0);
13541 if (se_register_operand (x2, DImode))
13542 {
13543 operands[0] = x2;
13544 goto L2650;
13545 }
13546 goto ret0;
13547
13548 L2650: ATTRIBUTE_UNUSED_LABEL
13549 x2 = XEXP (x1, 1);
13550 if (const_int_operand (x2, DImode))
13551 {
13552 operands[3] = x2;
13553 goto L2651;
13554 }
13555 goto ret0;
13556
13557 L2651: ATTRIBUTE_UNUSED_LABEL
13558 x1 = XEXP (x0, 1);
13559 if (const_int_operand (x1, DImode))
13560 {
13561 operands[1] = x1;
13562 goto L2652;
13563 }
13564 goto ret0;
13565
13566 L2652: ATTRIBUTE_UNUSED_LABEL
13567 x1 = XEXP (x0, 2);
13568 if (const_int_operand (x1, DImode))
13569 {
13570 operands[2] = x1;
13571 goto L2653;
13572 }
13573 goto ret0;
13574
13575 L2653: ATTRIBUTE_UNUSED_LABEL
13576 if ((ISA_HAS_PREFETCH && Pmode == DImode))
13577 {
13578 return 316;
13579 }
13580 goto ret0;
13581
13582 L2656: ATTRIBUTE_UNUSED_LABEL
13583 x1 = XEXP (x0, 1);
13584 if (const_int_operand (x1, DImode))
13585 {
13586 operands[1] = x1;
13587 goto L2657;
13588 }
13589 goto ret0;
13590
13591 L2657: ATTRIBUTE_UNUSED_LABEL
13592 x1 = XEXP (x0, 2);
13593 if (const_int_operand (x1, DImode))
13594 {
13595 operands[2] = x1;
13596 goto L2658;
13597 }
13598 goto ret0;
13599
13600 L2658: ATTRIBUTE_UNUSED_LABEL
13601 if ((ISA_HAS_PREFETCH && Pmode == DImode))
13602 {
13603 return 317;
13604 }
13605 goto ret0;
13606
13607 L3250: ATTRIBUTE_UNUSED_LABEL
13608 if (XWINT (x0, 0) == 0LL)
13609 {
13610 return 318;
13611 }
13612 goto ret0;
13613 ret0:
13614 return -1;
13615 }
13616
13617 static rtx split_1 PARAMS ((rtx, rtx));
13618 static rtx
13619 split_1 (x0, insn)
13620 rtx x0 ATTRIBUTE_UNUSED;
13621 rtx insn ATTRIBUTE_UNUSED;
13622 {
13623 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
13624 rtx x1 ATTRIBUTE_UNUSED;
13625 rtx x2 ATTRIBUTE_UNUSED;
13626 rtx x3 ATTRIBUTE_UNUSED;
13627 rtx x4 ATTRIBUTE_UNUSED;
13628 rtx x5 ATTRIBUTE_UNUSED;
13629 rtx x6 ATTRIBUTE_UNUSED;
13630 rtx x7 ATTRIBUTE_UNUSED;
13631 rtx tem ATTRIBUTE_UNUSED;
13632
13633 x1 = XEXP (x0, 0);
13634 switch (GET_MODE (x1))
13635 {
13636 case SImode:
13637 goto L3640;
13638 case DImode:
13639 goto L3641;
13640 case HImode:
13641 goto L3642;
13642 case QImode:
13643 goto L3643;
13644 case DFmode:
13645 goto L3644;
13646 default:
13647 break;
13648 }
13649 goto ret0;
13650
13651 L3640: ATTRIBUTE_UNUSED_LABEL
13652 if (register_operand (x1, SImode))
13653 {
13654 operands[0] = x1;
13655 goto L2802;
13656 }
13657 goto ret0;
13658
13659 L2802: ATTRIBUTE_UNUSED_LABEL
13660 x1 = XEXP (x0, 1);
13661 if (GET_MODE (x1) == SImode)
13662 goto L3645;
13663 L3049: ATTRIBUTE_UNUSED_LABEL
13664 if (GET_CODE (x1) == CONST_INT)
13665 goto L3651;
13666 goto ret0;
13667
13668 L3645: ATTRIBUTE_UNUSED_LABEL
13669 switch (GET_CODE (x1))
13670 {
13671 case PLUS:
13672 goto L2803;
13673 case MINUS:
13674 goto L2863;
13675 case MEM:
13676 goto L3054;
13677 case ASHIFT:
13678 goto L3087;
13679 case ASHIFTRT:
13680 goto L3135;
13681 case LSHIFTRT:
13682 goto L3183;
13683 default:
13684 break;
13685 }
13686 goto L3049;
13687
13688 L2803: ATTRIBUTE_UNUSED_LABEL
13689 x2 = XEXP (x1, 0);
13690 if (rtx_equal_p (x2, operands[0]))
13691 goto L2804;
13692 L2809: ATTRIBUTE_UNUSED_LABEL
13693 if (register_operand (x2, SImode))
13694 {
13695 operands[1] = x2;
13696 goto L2810;
13697 }
13698 goto L3049;
13699
13700 L2804: ATTRIBUTE_UNUSED_LABEL
13701 x2 = XEXP (x1, 1);
13702 if (const_int_operand (x2, SImode))
13703 {
13704 operands[1] = x2;
13705 goto L2805;
13706 }
13707 x2 = XEXP (x1, 0);
13708 goto L2809;
13709
13710 L2805: ATTRIBUTE_UNUSED_LABEL
13711 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13712 && GET_CODE (operands[0]) == REG
13713 && M16_REG_P (REGNO (operands[0]))
13714 && GET_CODE (operands[1]) == CONST_INT
13715 && ((INTVAL (operands[1]) > 0x7f
13716 && INTVAL (operands[1]) <= 0x7f + 0x7f)
13717 || (INTVAL (operands[1]) < - 0x80
13718 && INTVAL (operands[1]) >= - 0x80 - 0x80))))
13719 {
13720 return gen_split_344 (operands);
13721 }
13722 x1 = XEXP (x0, 1);
13723 x2 = XEXP (x1, 0);
13724 goto L2809;
13725
13726 L2810: ATTRIBUTE_UNUSED_LABEL
13727 x2 = XEXP (x1, 1);
13728 if (const_int_operand (x2, SImode))
13729 {
13730 operands[2] = x2;
13731 goto L2811;
13732 }
13733 goto L3049;
13734
13735 L2811: ATTRIBUTE_UNUSED_LABEL
13736 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13737 && GET_CODE (operands[0]) == REG
13738 && M16_REG_P (REGNO (operands[0]))
13739 && GET_CODE (operands[1]) == REG
13740 && M16_REG_P (REGNO (operands[1]))
13741 && REGNO (operands[0]) != REGNO (operands[1])
13742 && GET_CODE (operands[2]) == CONST_INT
13743 && ((INTVAL (operands[2]) > 0x7
13744 && INTVAL (operands[2]) <= 0x7 + 0x7f)
13745 || (INTVAL (operands[2]) < - 0x8
13746 && INTVAL (operands[2]) >= - 0x8 - 0x80))))
13747 {
13748 return gen_split_345 (operands);
13749 }
13750 x1 = XEXP (x0, 1);
13751 goto L3049;
13752
13753 L2863: ATTRIBUTE_UNUSED_LABEL
13754 x2 = XEXP (x1, 0);
13755 if (rtx_equal_p (x2, operands[0]))
13756 goto L2864;
13757 L2869: ATTRIBUTE_UNUSED_LABEL
13758 if (register_operand (x2, SImode))
13759 {
13760 operands[1] = x2;
13761 goto L2870;
13762 }
13763 goto L3049;
13764
13765 L2864: ATTRIBUTE_UNUSED_LABEL
13766 x2 = XEXP (x1, 1);
13767 if (const_int_operand (x2, SImode))
13768 {
13769 operands[1] = x2;
13770 goto L2865;
13771 }
13772 x2 = XEXP (x1, 0);
13773 goto L2869;
13774
13775 L2865: ATTRIBUTE_UNUSED_LABEL
13776 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13777 && GET_CODE (operands[0]) == REG
13778 && M16_REG_P (REGNO (operands[0]))
13779 && GET_CODE (operands[1]) == CONST_INT
13780 && ((INTVAL (operands[1]) > 0x80
13781 && INTVAL (operands[1]) <= 0x80 + 0x80)
13782 || (INTVAL (operands[1]) < - 0x7f
13783 && INTVAL (operands[1]) >= - 0x7f - 0x7f))))
13784 {
13785 return gen_split_354 (operands);
13786 }
13787 x1 = XEXP (x0, 1);
13788 x2 = XEXP (x1, 0);
13789 goto L2869;
13790
13791 L2870: ATTRIBUTE_UNUSED_LABEL
13792 x2 = XEXP (x1, 1);
13793 if (const_int_operand (x2, SImode))
13794 {
13795 operands[2] = x2;
13796 goto L2871;
13797 }
13798 goto L3049;
13799
13800 L2871: ATTRIBUTE_UNUSED_LABEL
13801 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13802 && GET_CODE (operands[0]) == REG
13803 && M16_REG_P (REGNO (operands[0]))
13804 && GET_CODE (operands[1]) == REG
13805 && M16_REG_P (REGNO (operands[1]))
13806 && REGNO (operands[0]) != REGNO (operands[1])
13807 && GET_CODE (operands[2]) == CONST_INT
13808 && ((INTVAL (operands[2]) > 0x8
13809 && INTVAL (operands[2]) <= 0x8 + 0x80)
13810 || (INTVAL (operands[2]) < - 0x7
13811 && INTVAL (operands[2]) >= - 0x7 - 0x7f))))
13812 {
13813 return gen_split_355 (operands);
13814 }
13815 x1 = XEXP (x0, 1);
13816 goto L3049;
13817
13818 L3054: ATTRIBUTE_UNUSED_LABEL
13819 x2 = XEXP (x1, 0);
13820 if (GET_MODE (x2) == SImode
13821 && GET_CODE (x2) == PLUS)
13822 goto L3055;
13823 goto L3049;
13824
13825 L3055: ATTRIBUTE_UNUSED_LABEL
13826 x3 = XEXP (x2, 0);
13827 if (rtx_equal_p (x3, operands[0]))
13828 goto L3056;
13829 goto L3049;
13830
13831 L3056: ATTRIBUTE_UNUSED_LABEL
13832 x3 = XEXP (x2, 1);
13833 if (const_int_operand (x3, SImode))
13834 {
13835 operands[1] = x3;
13836 goto L3057;
13837 }
13838 goto L3049;
13839
13840 L3057: ATTRIBUTE_UNUSED_LABEL
13841 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13842 && GET_CODE (operands[0]) == REG
13843 && M16_REG_P (REGNO (operands[0]))
13844 && GET_CODE (operands[1]) == CONST_INT
13845 && ((INTVAL (operands[1]) < 0
13846 && INTVAL (operands[1]) >= -0x80)
13847 || (INTVAL (operands[1]) >= 32 * 4
13848 && INTVAL (operands[1]) <= 31 * 4 + 0x7c)
13849 || (INTVAL (operands[1]) >= 0
13850 && INTVAL (operands[1]) < 32 * 4
13851 && (INTVAL (operands[1]) & 3) != 0))))
13852 {
13853 return gen_split_429 (operands);
13854 }
13855 x1 = XEXP (x0, 1);
13856 goto L3049;
13857
13858 L3087: ATTRIBUTE_UNUSED_LABEL
13859 x2 = XEXP (x1, 0);
13860 if (register_operand (x2, SImode))
13861 {
13862 operands[1] = x2;
13863 goto L3088;
13864 }
13865 goto L3049;
13866
13867 L3088: ATTRIBUTE_UNUSED_LABEL
13868 x2 = XEXP (x1, 1);
13869 if (const_int_operand (x2, SImode))
13870 {
13871 operands[2] = x2;
13872 goto L3089;
13873 }
13874 goto L3049;
13875
13876 L3089: ATTRIBUTE_UNUSED_LABEL
13877 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13878 && GET_CODE (operands[2]) == CONST_INT
13879 && INTVAL (operands[2]) > 8
13880 && INTVAL (operands[2]) <= 16))
13881 {
13882 return gen_split_445 (operands);
13883 }
13884 x1 = XEXP (x0, 1);
13885 goto L3049;
13886
13887 L3135: ATTRIBUTE_UNUSED_LABEL
13888 x2 = XEXP (x1, 0);
13889 if (register_operand (x2, SImode))
13890 {
13891 operands[1] = x2;
13892 goto L3136;
13893 }
13894 goto L3049;
13895
13896 L3136: ATTRIBUTE_UNUSED_LABEL
13897 x2 = XEXP (x1, 1);
13898 if (const_int_operand (x2, SImode))
13899 {
13900 operands[2] = x2;
13901 goto L3137;
13902 }
13903 goto L3049;
13904
13905 L3137: ATTRIBUTE_UNUSED_LABEL
13906 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13907 && GET_CODE (operands[2]) == CONST_INT
13908 && INTVAL (operands[2]) > 8
13909 && INTVAL (operands[2]) <= 16))
13910 {
13911 return gen_split_453 (operands);
13912 }
13913 x1 = XEXP (x0, 1);
13914 goto L3049;
13915
13916 L3183: ATTRIBUTE_UNUSED_LABEL
13917 x2 = XEXP (x1, 0);
13918 if (GET_MODE (x2) == SImode)
13919 goto L3653;
13920 goto L3049;
13921
13922 L3653: ATTRIBUTE_UNUSED_LABEL
13923 if (register_operand (x2, SImode))
13924 {
13925 operands[1] = x2;
13926 goto L3184;
13927 }
13928 L3654: ATTRIBUTE_UNUSED_LABEL
13929 if (memory_operand (x2, SImode))
13930 {
13931 operands[1] = x2;
13932 goto L3190;
13933 }
13934 goto L3049;
13935
13936 L3184: ATTRIBUTE_UNUSED_LABEL
13937 x2 = XEXP (x1, 1);
13938 if (const_int_operand (x2, SImode))
13939 {
13940 operands[2] = x2;
13941 goto L3185;
13942 }
13943 x2 = XEXP (x1, 0);
13944 goto L3654;
13945
13946 L3185: ATTRIBUTE_UNUSED_LABEL
13947 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13948 && GET_CODE (operands[2]) == CONST_INT
13949 && INTVAL (operands[2]) > 8
13950 && INTVAL (operands[2]) <= 16))
13951 {
13952 return gen_split_461 (operands);
13953 }
13954 x1 = XEXP (x0, 1);
13955 x2 = XEXP (x1, 0);
13956 goto L3654;
13957
13958 L3190: ATTRIBUTE_UNUSED_LABEL
13959 x2 = XEXP (x1, 1);
13960 if (immediate_operand (x2, SImode))
13961 {
13962 operands[2] = x2;
13963 goto L3191;
13964 }
13965 goto L3049;
13966
13967 L3191: ATTRIBUTE_UNUSED_LABEL
13968 if ((TARGET_MIPS16 && !TARGET_DEBUG_D_MODE))
13969 {
13970 return gen_split_462 (operands);
13971 }
13972 x1 = XEXP (x0, 1);
13973 goto L3049;
13974
13975 L3651: ATTRIBUTE_UNUSED_LABEL
13976 if (large_int (x1, SImode))
13977 {
13978 operands[1] = x1;
13979 goto L3050;
13980 }
13981 L3652: ATTRIBUTE_UNUSED_LABEL
13982 if (const_int_operand (x1, SImode))
13983 {
13984 operands[1] = x1;
13985 goto L3061;
13986 }
13987 goto ret0;
13988
13989 L3050: ATTRIBUTE_UNUSED_LABEL
13990 if ((!TARGET_DEBUG_D_MODE && !TARGET_MIPS16))
13991 {
13992 return gen_split_427 (operands);
13993 }
13994 x1 = XEXP (x0, 1);
13995 goto L3652;
13996
13997 L3061: ATTRIBUTE_UNUSED_LABEL
13998 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
13999 && GET_CODE (operands[0]) == REG
14000 && M16_REG_P (REGNO (operands[0]))
14001 && GET_CODE (operands[1]) == CONST_INT
14002 && INTVAL (operands[1]) >= 0x100
14003 && INTVAL (operands[1]) <= 0xff + 0x7f))
14004 {
14005 return gen_split_430 (operands);
14006 }
14007 L3065: ATTRIBUTE_UNUSED_LABEL
14008 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
14009 && GET_CODE (operands[0]) == REG
14010 && M16_REG_P (REGNO (operands[0]))
14011 && GET_CODE (operands[1]) == CONST_INT
14012 && INTVAL (operands[1]) < 0
14013 && INTVAL (operands[1]) > - 0x8000))
14014 {
14015 return gen_split_431 (operands);
14016 }
14017 goto ret0;
14018
14019 L3641: ATTRIBUTE_UNUSED_LABEL
14020 if (register_operand (x1, DImode))
14021 {
14022 operands[0] = x1;
14023 goto L2850;
14024 }
14025 goto ret0;
14026
14027 L2850: ATTRIBUTE_UNUSED_LABEL
14028 x1 = XEXP (x0, 1);
14029 if (GET_MODE (x1) == DImode)
14030 goto L3655;
14031 goto ret0;
14032
14033 L3655: ATTRIBUTE_UNUSED_LABEL
14034 switch (GET_CODE (x1))
14035 {
14036 case PLUS:
14037 goto L2851;
14038 case MINUS:
14039 goto L2911;
14040 case NOT:
14041 goto L3008;
14042 case AND:
14043 goto L3013;
14044 case IOR:
14045 goto L3019;
14046 case XOR:
14047 goto L3025;
14048 case MEM:
14049 goto L3043;
14050 case ASHIFT:
14051 goto L3129;
14052 case ASHIFTRT:
14053 goto L3177;
14054 case LSHIFTRT:
14055 goto L3231;
14056 case SUBREG:
14057 case REG:
14058 case ADDRESSOF:
14059 goto L3661;
14060 default:
14061 goto ret0;
14062 }
14063 L3661: ATTRIBUTE_UNUSED_LABEL
14064 if (register_operand (x1, DImode))
14065 {
14066 operands[1] = x1;
14067 goto L3039;
14068 }
14069 goto ret0;
14070
14071 L2851: ATTRIBUTE_UNUSED_LABEL
14072 x2 = XEXP (x1, 0);
14073 if (rtx_equal_p (x2, operands[0]))
14074 goto L2852;
14075 L2857: ATTRIBUTE_UNUSED_LABEL
14076 if (register_operand (x2, DImode))
14077 {
14078 operands[1] = x2;
14079 goto L2858;
14080 }
14081 goto ret0;
14082
14083 L2852: ATTRIBUTE_UNUSED_LABEL
14084 x2 = XEXP (x1, 1);
14085 if (const_int_operand (x2, DImode))
14086 {
14087 operands[1] = x2;
14088 goto L2853;
14089 }
14090 x2 = XEXP (x1, 0);
14091 goto L2857;
14092
14093 L2853: ATTRIBUTE_UNUSED_LABEL
14094 if ((TARGET_MIPS16 && TARGET_64BIT && reload_completed && !TARGET_DEBUG_D_MODE
14095 && GET_CODE (operands[0]) == REG
14096 && M16_REG_P (REGNO (operands[0]))
14097 && GET_CODE (operands[1]) == CONST_INT
14098 && ((INTVAL (operands[1]) > 0xf
14099 && INTVAL (operands[1]) <= 0xf + 0xf)
14100 || (INTVAL (operands[1]) < - 0x10
14101 && INTVAL (operands[1]) >= - 0x10 - 0x10))))
14102 {
14103 return gen_split_351 (operands);
14104 }
14105 x1 = XEXP (x0, 1);
14106 x2 = XEXP (x1, 0);
14107 goto L2857;
14108
14109 L2858: ATTRIBUTE_UNUSED_LABEL
14110 x2 = XEXP (x1, 1);
14111 if (const_int_operand (x2, DImode))
14112 {
14113 operands[2] = x2;
14114 goto L2859;
14115 }
14116 goto ret0;
14117
14118 L2859: ATTRIBUTE_UNUSED_LABEL
14119 if ((TARGET_MIPS16 && TARGET_64BIT && reload_completed && !TARGET_DEBUG_D_MODE
14120 && GET_CODE (operands[0]) == REG
14121 && M16_REG_P (REGNO (operands[0]))
14122 && GET_CODE (operands[1]) == REG
14123 && M16_REG_P (REGNO (operands[1]))
14124 && REGNO (operands[0]) != REGNO (operands[1])
14125 && GET_CODE (operands[2]) == CONST_INT
14126 && ((INTVAL (operands[2]) > 0x7
14127 && INTVAL (operands[2]) <= 0x7 + 0xf)
14128 || (INTVAL (operands[2]) < - 0x8
14129 && INTVAL (operands[2]) >= - 0x8 - 0x10))))
14130 {
14131 return gen_split_352 (operands);
14132 }
14133 goto ret0;
14134
14135 L2911: ATTRIBUTE_UNUSED_LABEL
14136 x2 = XEXP (x1, 0);
14137 if (rtx_equal_p (x2, operands[0]))
14138 goto L2912;
14139 L2917: ATTRIBUTE_UNUSED_LABEL
14140 if (register_operand (x2, DImode))
14141 {
14142 operands[1] = x2;
14143 goto L2918;
14144 }
14145 goto ret0;
14146
14147 L2912: ATTRIBUTE_UNUSED_LABEL
14148 x2 = XEXP (x1, 1);
14149 if (const_int_operand (x2, DImode))
14150 {
14151 operands[1] = x2;
14152 goto L2913;
14153 }
14154 x2 = XEXP (x1, 0);
14155 goto L2917;
14156
14157 L2913: ATTRIBUTE_UNUSED_LABEL
14158 if ((TARGET_MIPS16 && TARGET_64BIT && reload_completed && !TARGET_DEBUG_D_MODE
14159 && GET_CODE (operands[0]) == REG
14160 && M16_REG_P (REGNO (operands[0]))
14161 && GET_CODE (operands[1]) == CONST_INT
14162 && ((INTVAL (operands[1]) > 0x10
14163 && INTVAL (operands[1]) <= 0x10 + 0x10)
14164 || (INTVAL (operands[1]) < - 0xf
14165 && INTVAL (operands[1]) >= - 0xf - 0xf))))
14166 {
14167 return gen_split_361 (operands);
14168 }
14169 x1 = XEXP (x0, 1);
14170 x2 = XEXP (x1, 0);
14171 goto L2917;
14172
14173 L2918: ATTRIBUTE_UNUSED_LABEL
14174 x2 = XEXP (x1, 1);
14175 if (const_int_operand (x2, DImode))
14176 {
14177 operands[2] = x2;
14178 goto L2919;
14179 }
14180 goto ret0;
14181
14182 L2919: ATTRIBUTE_UNUSED_LABEL
14183 if ((TARGET_MIPS16 && TARGET_64BIT && reload_completed && !TARGET_DEBUG_D_MODE
14184 && GET_CODE (operands[0]) == REG
14185 && M16_REG_P (REGNO (operands[0]))
14186 && GET_CODE (operands[1]) == REG
14187 && M16_REG_P (REGNO (operands[1]))
14188 && REGNO (operands[0]) != REGNO (operands[1])
14189 && GET_CODE (operands[2]) == CONST_INT
14190 && ((INTVAL (operands[2]) > 0x8
14191 && INTVAL (operands[2]) <= 0x8 + 0x10)
14192 || (INTVAL (operands[2]) < - 0x7
14193 && INTVAL (operands[2]) >= - 0x7 - 0xf))))
14194 {
14195 return gen_split_362 (operands);
14196 }
14197 goto ret0;
14198
14199 L3008: ATTRIBUTE_UNUSED_LABEL
14200 x2 = XEXP (x1, 0);
14201 if (register_operand (x2, DImode))
14202 {
14203 operands[1] = x2;
14204 goto L3009;
14205 }
14206 goto ret0;
14207
14208 L3009: ATTRIBUTE_UNUSED_LABEL
14209 if ((reload_completed && !TARGET_64BIT
14210 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
14211 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14212 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))))
14213 {
14214 return gen_split_390 (operands);
14215 }
14216 goto ret0;
14217
14218 L3013: ATTRIBUTE_UNUSED_LABEL
14219 x2 = XEXP (x1, 0);
14220 if (GET_MODE (x2) == DImode)
14221 goto L3667;
14222 goto ret0;
14223
14224 L3667: ATTRIBUTE_UNUSED_LABEL
14225 if (GET_CODE (x2) == NOT)
14226 goto L3032;
14227 if (register_operand (x2, DImode))
14228 {
14229 operands[1] = x2;
14230 goto L3014;
14231 }
14232 goto ret0;
14233
14234 L3032: ATTRIBUTE_UNUSED_LABEL
14235 x3 = XEXP (x2, 0);
14236 if (register_operand (x3, DImode))
14237 {
14238 operands[1] = x3;
14239 goto L3033;
14240 }
14241 goto ret0;
14242
14243 L3033: ATTRIBUTE_UNUSED_LABEL
14244 x2 = XEXP (x1, 1);
14245 if (GET_MODE (x2) == DImode
14246 && GET_CODE (x2) == NOT)
14247 goto L3034;
14248 goto ret0;
14249
14250 L3034: ATTRIBUTE_UNUSED_LABEL
14251 x3 = XEXP (x2, 0);
14252 if (register_operand (x3, DImode))
14253 {
14254 operands[2] = x3;
14255 goto L3035;
14256 }
14257 goto ret0;
14258
14259 L3035: ATTRIBUTE_UNUSED_LABEL
14260 if ((reload_completed && !TARGET_MIPS16 && !TARGET_64BIT
14261 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
14262 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14263 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14264 && GET_CODE (operands[2]) == REG && GP_REG_P (REGNO (operands[2]))))
14265 {
14266 return gen_split_400 (operands);
14267 }
14268 goto ret0;
14269
14270 L3014: ATTRIBUTE_UNUSED_LABEL
14271 x2 = XEXP (x1, 1);
14272 if (register_operand (x2, DImode))
14273 {
14274 operands[2] = x2;
14275 goto L3015;
14276 }
14277 goto ret0;
14278
14279 L3015: ATTRIBUTE_UNUSED_LABEL
14280 if ((reload_completed && !TARGET_64BIT
14281 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
14282 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14283 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14284 && GET_CODE (operands[2]) == REG && GP_REG_P (REGNO (operands[2]))))
14285 {
14286 return gen_split_393 (operands);
14287 }
14288 goto ret0;
14289
14290 L3019: ATTRIBUTE_UNUSED_LABEL
14291 x2 = XEXP (x1, 0);
14292 if (register_operand (x2, DImode))
14293 {
14294 operands[1] = x2;
14295 goto L3020;
14296 }
14297 goto ret0;
14298
14299 L3020: ATTRIBUTE_UNUSED_LABEL
14300 x2 = XEXP (x1, 1);
14301 if (register_operand (x2, DImode))
14302 {
14303 operands[2] = x2;
14304 goto L3021;
14305 }
14306 goto ret0;
14307
14308 L3021: ATTRIBUTE_UNUSED_LABEL
14309 if ((reload_completed && !TARGET_64BIT
14310 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
14311 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14312 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14313 && GET_CODE (operands[2]) == REG && GP_REG_P (REGNO (operands[2]))))
14314 {
14315 return gen_split_396 (operands);
14316 }
14317 goto ret0;
14318
14319 L3025: ATTRIBUTE_UNUSED_LABEL
14320 x2 = XEXP (x1, 0);
14321 if (register_operand (x2, DImode))
14322 {
14323 operands[1] = x2;
14324 goto L3026;
14325 }
14326 goto ret0;
14327
14328 L3026: ATTRIBUTE_UNUSED_LABEL
14329 x2 = XEXP (x1, 1);
14330 if (register_operand (x2, DImode))
14331 {
14332 operands[2] = x2;
14333 goto L3027;
14334 }
14335 goto ret0;
14336
14337 L3027: ATTRIBUTE_UNUSED_LABEL
14338 if ((reload_completed && !TARGET_64BIT
14339 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
14340 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14341 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14342 && GET_CODE (operands[2]) == REG && GP_REG_P (REGNO (operands[2]))))
14343 {
14344 return gen_split_399 (operands);
14345 }
14346 goto ret0;
14347
14348 L3043: ATTRIBUTE_UNUSED_LABEL
14349 x2 = XEXP (x1, 0);
14350 if (GET_MODE (x2) == DImode
14351 && GET_CODE (x2) == PLUS)
14352 goto L3044;
14353 goto ret0;
14354
14355 L3044: ATTRIBUTE_UNUSED_LABEL
14356 x3 = XEXP (x2, 0);
14357 if (rtx_equal_p (x3, operands[0]))
14358 goto L3045;
14359 goto ret0;
14360
14361 L3045: ATTRIBUTE_UNUSED_LABEL
14362 x3 = XEXP (x2, 1);
14363 if (const_int_operand (x3, DImode))
14364 {
14365 operands[1] = x3;
14366 goto L3046;
14367 }
14368 goto ret0;
14369
14370 L3046: ATTRIBUTE_UNUSED_LABEL
14371 if ((TARGET_64BIT && TARGET_MIPS16 && reload_completed
14372 && !TARGET_DEBUG_D_MODE
14373 && GET_CODE (operands[0]) == REG
14374 && M16_REG_P (REGNO (operands[0]))
14375 && GET_CODE (operands[1]) == CONST_INT
14376 && ((INTVAL (operands[1]) < 0
14377 && INTVAL (operands[1]) >= -0x10)
14378 || (INTVAL (operands[1]) >= 32 * 8
14379 && INTVAL (operands[1]) <= 31 * 8 + 0x8)
14380 || (INTVAL (operands[1]) >= 0
14381 && INTVAL (operands[1]) < 32 * 8
14382 && (INTVAL (operands[1]) & 7) != 0))))
14383 {
14384 return gen_split_424 (operands);
14385 }
14386 goto ret0;
14387
14388 L3129: ATTRIBUTE_UNUSED_LABEL
14389 x2 = XEXP (x1, 0);
14390 if (register_operand (x2, DImode))
14391 {
14392 operands[1] = x2;
14393 goto L3130;
14394 }
14395 goto ret0;
14396
14397 L3130: ATTRIBUTE_UNUSED_LABEL
14398 x2 = XEXP (x1, 1);
14399 if (const_int_operand (x2, SImode))
14400 {
14401 operands[2] = x2;
14402 goto L3131;
14403 }
14404 goto ret0;
14405
14406 L3131: ATTRIBUTE_UNUSED_LABEL
14407 if ((TARGET_MIPS16 && TARGET_64BIT && !TARGET_DEBUG_D_MODE
14408 && reload_completed
14409 && GET_CODE (operands[2]) == CONST_INT
14410 && INTVAL (operands[2]) > 8
14411 && INTVAL (operands[2]) <= 16))
14412 {
14413 return gen_split_451 (operands);
14414 }
14415 goto ret0;
14416
14417 L3177: ATTRIBUTE_UNUSED_LABEL
14418 x2 = XEXP (x1, 0);
14419 if (register_operand (x2, DImode))
14420 {
14421 operands[1] = x2;
14422 goto L3178;
14423 }
14424 goto ret0;
14425
14426 L3178: ATTRIBUTE_UNUSED_LABEL
14427 x2 = XEXP (x1, 1);
14428 if (const_int_operand (x2, SImode))
14429 {
14430 operands[2] = x2;
14431 goto L3179;
14432 }
14433 goto ret0;
14434
14435 L3179: ATTRIBUTE_UNUSED_LABEL
14436 if ((TARGET_MIPS16 && TARGET_64BIT && !TARGET_DEBUG_D_MODE
14437 && reload_completed
14438 && GET_CODE (operands[2]) == CONST_INT
14439 && INTVAL (operands[2]) > 8
14440 && INTVAL (operands[2]) <= 16))
14441 {
14442 return gen_split_459 (operands);
14443 }
14444 goto ret0;
14445
14446 L3231: ATTRIBUTE_UNUSED_LABEL
14447 x2 = XEXP (x1, 0);
14448 if (register_operand (x2, DImode))
14449 {
14450 operands[1] = x2;
14451 goto L3232;
14452 }
14453 goto ret0;
14454
14455 L3232: ATTRIBUTE_UNUSED_LABEL
14456 x2 = XEXP (x1, 1);
14457 if (const_int_operand (x2, SImode))
14458 {
14459 operands[2] = x2;
14460 goto L3233;
14461 }
14462 goto ret0;
14463
14464 L3233: ATTRIBUTE_UNUSED_LABEL
14465 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
14466 && GET_CODE (operands[2]) == CONST_INT
14467 && INTVAL (operands[2]) > 8
14468 && INTVAL (operands[2]) <= 16))
14469 {
14470 return gen_split_468 (operands);
14471 }
14472 goto ret0;
14473
14474 L3039: ATTRIBUTE_UNUSED_LABEL
14475 if ((reload_completed && !TARGET_64BIT
14476 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
14477 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14478 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))))
14479 {
14480 return gen_split_423 (operands);
14481 }
14482 goto ret0;
14483
14484 L3642: ATTRIBUTE_UNUSED_LABEL
14485 if (register_operand (x1, HImode))
14486 {
14487 operands[0] = x1;
14488 goto L3068;
14489 }
14490 goto ret0;
14491
14492 L3068: ATTRIBUTE_UNUSED_LABEL
14493 x1 = XEXP (x0, 1);
14494 if (GET_MODE (x1) == HImode
14495 && GET_CODE (x1) == MEM)
14496 goto L3069;
14497 goto ret0;
14498
14499 L3069: ATTRIBUTE_UNUSED_LABEL
14500 x2 = XEXP (x1, 0);
14501 if (GET_MODE (x2) == SImode
14502 && GET_CODE (x2) == PLUS)
14503 goto L3070;
14504 goto ret0;
14505
14506 L3070: ATTRIBUTE_UNUSED_LABEL
14507 x3 = XEXP (x2, 0);
14508 if (rtx_equal_p (x3, operands[0]))
14509 goto L3071;
14510 goto ret0;
14511
14512 L3071: ATTRIBUTE_UNUSED_LABEL
14513 x3 = XEXP (x2, 1);
14514 if (const_int_operand (x3, SImode))
14515 {
14516 operands[1] = x3;
14517 goto L3072;
14518 }
14519 goto ret0;
14520
14521 L3072: ATTRIBUTE_UNUSED_LABEL
14522 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
14523 && GET_CODE (operands[0]) == REG
14524 && M16_REG_P (REGNO (operands[0]))
14525 && GET_CODE (operands[1]) == CONST_INT
14526 && ((INTVAL (operands[1]) < 0
14527 && INTVAL (operands[1]) >= -0x80)
14528 || (INTVAL (operands[1]) >= 32 * 2
14529 && INTVAL (operands[1]) <= 31 * 2 + 0x7e)
14530 || (INTVAL (operands[1]) >= 0
14531 && INTVAL (operands[1]) < 32 * 2
14532 && (INTVAL (operands[1]) & 1) != 0))))
14533 {
14534 return gen_split_437 (operands);
14535 }
14536 goto ret0;
14537
14538 L3643: ATTRIBUTE_UNUSED_LABEL
14539 if (register_operand (x1, QImode))
14540 {
14541 operands[0] = x1;
14542 goto L3075;
14543 }
14544 goto ret0;
14545
14546 L3075: ATTRIBUTE_UNUSED_LABEL
14547 x1 = XEXP (x0, 1);
14548 if (GET_MODE (x1) == QImode
14549 && GET_CODE (x1) == MEM)
14550 goto L3076;
14551 goto ret0;
14552
14553 L3076: ATTRIBUTE_UNUSED_LABEL
14554 x2 = XEXP (x1, 0);
14555 if (GET_MODE (x2) == SImode
14556 && GET_CODE (x2) == PLUS)
14557 goto L3077;
14558 goto ret0;
14559
14560 L3077: ATTRIBUTE_UNUSED_LABEL
14561 x3 = XEXP (x2, 0);
14562 if (rtx_equal_p (x3, operands[0]))
14563 goto L3078;
14564 goto ret0;
14565
14566 L3078: ATTRIBUTE_UNUSED_LABEL
14567 x3 = XEXP (x2, 1);
14568 if (const_int_operand (x3, SImode))
14569 {
14570 operands[1] = x3;
14571 goto L3079;
14572 }
14573 goto ret0;
14574
14575 L3079: ATTRIBUTE_UNUSED_LABEL
14576 if ((TARGET_MIPS16 && reload_completed && !TARGET_DEBUG_D_MODE
14577 && GET_CODE (operands[0]) == REG
14578 && M16_REG_P (REGNO (operands[0]))
14579 && GET_CODE (operands[1]) == CONST_INT
14580 && ((INTVAL (operands[1]) < 0
14581 && INTVAL (operands[1]) >= -0x80)
14582 || (INTVAL (operands[1]) >= 32
14583 && INTVAL (operands[1]) <= 31 + 0x7f))))
14584 {
14585 return gen_split_439 (operands);
14586 }
14587 goto ret0;
14588
14589 L3644: ATTRIBUTE_UNUSED_LABEL
14590 if (register_operand (x1, DFmode))
14591 {
14592 operands[0] = x1;
14593 goto L3082;
14594 }
14595 goto ret0;
14596
14597 L3082: ATTRIBUTE_UNUSED_LABEL
14598 x1 = XEXP (x0, 1);
14599 if (register_operand (x1, DFmode))
14600 {
14601 operands[1] = x1;
14602 goto L3083;
14603 }
14604 goto ret0;
14605
14606 L3083: ATTRIBUTE_UNUSED_LABEL
14607 if ((reload_completed && !TARGET_64BIT
14608 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
14609 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14610 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))))
14611 {
14612 return gen_split_442 (operands);
14613 }
14614 goto ret0;
14615 ret0:
14616 return 0;
14617 }
14618
14619 rtx split_insns PARAMS ((rtx, rtx));
14620 rtx
14621 split_insns (x0, insn)
14622 rtx x0 ATTRIBUTE_UNUSED;
14623 rtx insn ATTRIBUTE_UNUSED;
14624 {
14625 rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
14626 rtx x1 ATTRIBUTE_UNUSED;
14627 rtx x2 ATTRIBUTE_UNUSED;
14628 rtx x3 ATTRIBUTE_UNUSED;
14629 rtx x4 ATTRIBUTE_UNUSED;
14630 rtx x5 ATTRIBUTE_UNUSED;
14631 rtx x6 ATTRIBUTE_UNUSED;
14632 rtx x7 ATTRIBUTE_UNUSED;
14633 rtx tem ATTRIBUTE_UNUSED;
14634 recog_data.insn = NULL_RTX;
14635
14636 switch (GET_CODE (x0))
14637 {
14638 case SET:
14639 goto L2801;
14640 case PARALLEL:
14641 goto L3638;
14642 default:
14643 break;
14644 }
14645 goto ret0;
14646
14647 L2801: ATTRIBUTE_UNUSED_LABEL
14648 return split_1 (x0, insn);
14649
14650 L3638: ATTRIBUTE_UNUSED_LABEL
14651 switch (XVECLEN (x0, 0))
14652 {
14653 case 2:
14654 goto L2813;
14655 case 5:
14656 goto L2921;
14657 default:
14658 break;
14659 }
14660 goto ret0;
14661
14662 L2813: ATTRIBUTE_UNUSED_LABEL
14663 x1 = XVECEXP (x0, 0, 0);
14664 switch (GET_CODE (x1))
14665 {
14666 case SET:
14667 goto L2814;
14668 case UNSPEC:
14669 goto L3668;
14670 default:
14671 break;
14672 }
14673 goto ret0;
14674
14675 L2814: ATTRIBUTE_UNUSED_LABEL
14676 x2 = XEXP (x1, 0);
14677 if (register_operand (x2, DImode))
14678 {
14679 operands[0] = x2;
14680 goto L2815;
14681 }
14682 goto ret0;
14683
14684 L2815: ATTRIBUTE_UNUSED_LABEL
14685 x2 = XEXP (x1, 1);
14686 if (GET_MODE (x2) == DImode)
14687 goto L3669;
14688 goto ret0;
14689
14690 L3669: ATTRIBUTE_UNUSED_LABEL
14691 switch (GET_CODE (x2))
14692 {
14693 case PLUS:
14694 goto L2816;
14695 case MINUS:
14696 goto L2876;
14697 case ASHIFT:
14698 goto L3094;
14699 case ASHIFTRT:
14700 goto L3142;
14701 case LSHIFTRT:
14702 goto L3196;
14703 default:
14704 break;
14705 }
14706 goto ret0;
14707
14708 L2816: ATTRIBUTE_UNUSED_LABEL
14709 x3 = XEXP (x2, 0);
14710 if (register_operand (x3, DImode))
14711 {
14712 operands[1] = x3;
14713 goto L2817;
14714 }
14715 goto ret0;
14716
14717 L2817: ATTRIBUTE_UNUSED_LABEL
14718 x3 = XEXP (x2, 1);
14719 if (register_operand (x3, DImode))
14720 {
14721 operands[2] = x3;
14722 goto L2818;
14723 }
14724 if (small_int (x3, DImode))
14725 {
14726 operands[2] = x3;
14727 goto L2836;
14728 }
14729 goto ret0;
14730
14731 L2818: ATTRIBUTE_UNUSED_LABEL
14732 x1 = XVECEXP (x0, 0, 1);
14733 if (GET_CODE (x1) == CLOBBER)
14734 goto L2819;
14735 goto ret0;
14736
14737 L2819: ATTRIBUTE_UNUSED_LABEL
14738 x2 = XEXP (x1, 0);
14739 if (register_operand (x2, SImode))
14740 {
14741 operands[3] = x2;
14742 goto L2820;
14743 }
14744 goto ret0;
14745
14746 L2820: ATTRIBUTE_UNUSED_LABEL
14747 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
14748 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14749 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14750 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14751 && GET_CODE (operands[2]) == REG && GP_REG_P (REGNO (operands[2]))
14752 && (REGNO (operands[0]) != REGNO (operands[1])
14753 || REGNO (operands[0]) != REGNO (operands[2]))))
14754 {
14755 return gen_split_347 (operands);
14756 }
14757 L2829: ATTRIBUTE_UNUSED_LABEL
14758 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
14759 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14760 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14761 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14762 && GET_CODE (operands[2]) == REG && GP_REG_P (REGNO (operands[2]))
14763 && (REGNO (operands[0]) != REGNO (operands[1])
14764 || REGNO (operands[0]) != REGNO (operands[2]))))
14765 {
14766 return gen_split_348 (operands);
14767 }
14768 goto ret0;
14769
14770 L2836: ATTRIBUTE_UNUSED_LABEL
14771 x1 = XVECEXP (x0, 0, 1);
14772 if (GET_CODE (x1) == CLOBBER)
14773 goto L2837;
14774 goto ret0;
14775
14776 L2837: ATTRIBUTE_UNUSED_LABEL
14777 x2 = XEXP (x1, 0);
14778 if (register_operand (x2, SImode))
14779 {
14780 operands[3] = x2;
14781 goto L2838;
14782 }
14783 goto ret0;
14784
14785 L2838: ATTRIBUTE_UNUSED_LABEL
14786 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
14787 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14788 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14789 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14790 && INTVAL (operands[2]) > 0))
14791 {
14792 return gen_split_349 (operands);
14793 }
14794 L2847: ATTRIBUTE_UNUSED_LABEL
14795 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
14796 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14797 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14798 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14799 && INTVAL (operands[2]) > 0))
14800 {
14801 return gen_split_350 (operands);
14802 }
14803 goto ret0;
14804
14805 L2876: ATTRIBUTE_UNUSED_LABEL
14806 x3 = XEXP (x2, 0);
14807 if (register_operand (x3, DImode))
14808 {
14809 operands[1] = x3;
14810 goto L2877;
14811 }
14812 goto ret0;
14813
14814 L2877: ATTRIBUTE_UNUSED_LABEL
14815 x3 = XEXP (x2, 1);
14816 if (register_operand (x3, DImode))
14817 {
14818 operands[2] = x3;
14819 goto L2878;
14820 }
14821 if (small_int (x3, DImode))
14822 {
14823 operands[2] = x3;
14824 goto L2896;
14825 }
14826 goto ret0;
14827
14828 L2878: ATTRIBUTE_UNUSED_LABEL
14829 x1 = XVECEXP (x0, 0, 1);
14830 if (GET_CODE (x1) == CLOBBER)
14831 goto L2879;
14832 goto ret0;
14833
14834 L2879: ATTRIBUTE_UNUSED_LABEL
14835 x2 = XEXP (x1, 0);
14836 if (register_operand (x2, SImode))
14837 {
14838 operands[3] = x2;
14839 goto L2880;
14840 }
14841 goto ret0;
14842
14843 L2880: ATTRIBUTE_UNUSED_LABEL
14844 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
14845 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14846 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14847 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14848 && GET_CODE (operands[2]) == REG && GP_REG_P (REGNO (operands[2]))))
14849 {
14850 return gen_split_357 (operands);
14851 }
14852 L2889: ATTRIBUTE_UNUSED_LABEL
14853 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
14854 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14855 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14856 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14857 && GET_CODE (operands[2]) == REG && GP_REG_P (REGNO (operands[2]))))
14858 {
14859 return gen_split_358 (operands);
14860 }
14861 goto ret0;
14862
14863 L2896: ATTRIBUTE_UNUSED_LABEL
14864 x1 = XVECEXP (x0, 0, 1);
14865 if (GET_CODE (x1) == CLOBBER)
14866 goto L2897;
14867 goto ret0;
14868
14869 L2897: ATTRIBUTE_UNUSED_LABEL
14870 x2 = XEXP (x1, 0);
14871 if (register_operand (x2, SImode))
14872 {
14873 operands[3] = x2;
14874 goto L2898;
14875 }
14876 goto ret0;
14877
14878 L2898: ATTRIBUTE_UNUSED_LABEL
14879 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
14880 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14881 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14882 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14883 && INTVAL (operands[2]) > 0))
14884 {
14885 return gen_split_359 (operands);
14886 }
14887 L2907: ATTRIBUTE_UNUSED_LABEL
14888 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
14889 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14890 && GET_CODE (operands[0]) == REG && GP_REG_P (REGNO (operands[0]))
14891 && GET_CODE (operands[1]) == REG && GP_REG_P (REGNO (operands[1]))
14892 && INTVAL (operands[2]) > 0))
14893 {
14894 return gen_split_360 (operands);
14895 }
14896 goto ret0;
14897
14898 L3094: ATTRIBUTE_UNUSED_LABEL
14899 x3 = XEXP (x2, 0);
14900 if (register_operand (x3, DImode))
14901 {
14902 operands[1] = x3;
14903 goto L3095;
14904 }
14905 goto ret0;
14906
14907 L3095: ATTRIBUTE_UNUSED_LABEL
14908 x3 = XEXP (x2, 1);
14909 if (small_int (x3, SImode))
14910 {
14911 operands[2] = x3;
14912 goto L3096;
14913 }
14914 goto ret0;
14915
14916 L3096: ATTRIBUTE_UNUSED_LABEL
14917 x1 = XVECEXP (x0, 0, 1);
14918 if (GET_CODE (x1) == CLOBBER)
14919 goto L3097;
14920 goto ret0;
14921
14922 L3097: ATTRIBUTE_UNUSED_LABEL
14923 x2 = XEXP (x1, 0);
14924 if (register_operand (x2, SImode))
14925 {
14926 operands[3] = x2;
14927 goto L3098;
14928 }
14929 goto ret0;
14930
14931 L3098: ATTRIBUTE_UNUSED_LABEL
14932 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
14933 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14934 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
14935 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
14936 && (INTVAL (operands[2]) & 32) != 0))
14937 {
14938 return gen_split_447 (operands);
14939 }
14940 L3107: ATTRIBUTE_UNUSED_LABEL
14941 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
14942 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14943 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
14944 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
14945 && (INTVAL (operands[2]) & 32) != 0))
14946 {
14947 return gen_split_448 (operands);
14948 }
14949 L3116: ATTRIBUTE_UNUSED_LABEL
14950 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
14951 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14952 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
14953 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
14954 && (INTVAL (operands[2]) & 63) < 32
14955 && (INTVAL (operands[2]) & 63) != 0))
14956 {
14957 return gen_split_449 (operands);
14958 }
14959 L3125: ATTRIBUTE_UNUSED_LABEL
14960 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
14961 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
14962 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
14963 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
14964 && (INTVAL (operands[2]) & 63) < 32
14965 && (INTVAL (operands[2]) & 63) != 0))
14966 {
14967 return gen_split_450 (operands);
14968 }
14969 goto ret0;
14970
14971 L3142: ATTRIBUTE_UNUSED_LABEL
14972 x3 = XEXP (x2, 0);
14973 if (register_operand (x3, DImode))
14974 {
14975 operands[1] = x3;
14976 goto L3143;
14977 }
14978 goto ret0;
14979
14980 L3143: ATTRIBUTE_UNUSED_LABEL
14981 x3 = XEXP (x2, 1);
14982 if (small_int (x3, SImode))
14983 {
14984 operands[2] = x3;
14985 goto L3144;
14986 }
14987 goto ret0;
14988
14989 L3144: ATTRIBUTE_UNUSED_LABEL
14990 x1 = XVECEXP (x0, 0, 1);
14991 if (GET_CODE (x1) == CLOBBER)
14992 goto L3145;
14993 goto ret0;
14994
14995 L3145: ATTRIBUTE_UNUSED_LABEL
14996 x2 = XEXP (x1, 0);
14997 if (register_operand (x2, SImode))
14998 {
14999 operands[3] = x2;
15000 goto L3146;
15001 }
15002 goto ret0;
15003
15004 L3146: ATTRIBUTE_UNUSED_LABEL
15005 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
15006 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
15007 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
15008 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
15009 && (INTVAL (operands[2]) & 32) != 0))
15010 {
15011 return gen_split_455 (operands);
15012 }
15013 L3155: ATTRIBUTE_UNUSED_LABEL
15014 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
15015 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE
15016 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
15017 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
15018 && (INTVAL (operands[2]) & 32) != 0))
15019 {
15020 return gen_split_456 (operands);
15021 }
15022 L3164: ATTRIBUTE_UNUSED_LABEL
15023 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
15024 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
15025 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
15026 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
15027 && (INTVAL (operands[2]) & 63) < 32
15028 && (INTVAL (operands[2]) & 63) != 0))
15029 {
15030 return gen_split_457 (operands);
15031 }
15032 L3173: ATTRIBUTE_UNUSED_LABEL
15033 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
15034 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
15035 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
15036 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
15037 && (INTVAL (operands[2]) & 63) < 32
15038 && (INTVAL (operands[2]) & 63) != 0))
15039 {
15040 return gen_split_458 (operands);
15041 }
15042 goto ret0;
15043
15044 L3196: ATTRIBUTE_UNUSED_LABEL
15045 x3 = XEXP (x2, 0);
15046 if (register_operand (x3, DImode))
15047 {
15048 operands[1] = x3;
15049 goto L3197;
15050 }
15051 goto ret0;
15052
15053 L3197: ATTRIBUTE_UNUSED_LABEL
15054 x3 = XEXP (x2, 1);
15055 if (small_int (x3, SImode))
15056 {
15057 operands[2] = x3;
15058 goto L3198;
15059 }
15060 goto ret0;
15061
15062 L3198: ATTRIBUTE_UNUSED_LABEL
15063 x1 = XVECEXP (x0, 0, 1);
15064 if (GET_CODE (x1) == CLOBBER)
15065 goto L3199;
15066 goto ret0;
15067
15068 L3199: ATTRIBUTE_UNUSED_LABEL
15069 x2 = XEXP (x1, 0);
15070 if (register_operand (x2, SImode))
15071 {
15072 operands[3] = x2;
15073 goto L3200;
15074 }
15075 goto ret0;
15076
15077 L3200: ATTRIBUTE_UNUSED_LABEL
15078 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
15079 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
15080 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
15081 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
15082 && (INTVAL (operands[2]) & 32) != 0))
15083 {
15084 return gen_split_464 (operands);
15085 }
15086 L3209: ATTRIBUTE_UNUSED_LABEL
15087 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
15088 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
15089 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
15090 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
15091 && (INTVAL (operands[2]) & 32) != 0))
15092 {
15093 return gen_split_465 (operands);
15094 }
15095 L3218: ATTRIBUTE_UNUSED_LABEL
15096 if ((reload_completed && !WORDS_BIG_ENDIAN && !TARGET_64BIT
15097 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
15098 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
15099 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
15100 && (INTVAL (operands[2]) & 63) < 32
15101 && (INTVAL (operands[2]) & 63) != 0))
15102 {
15103 return gen_split_466 (operands);
15104 }
15105 L3227: ATTRIBUTE_UNUSED_LABEL
15106 if ((reload_completed && WORDS_BIG_ENDIAN && !TARGET_64BIT
15107 && !TARGET_DEBUG_D_MODE && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16
15108 && GET_CODE (operands[0]) == REG && REGNO (operands[0]) < FIRST_PSEUDO_REGISTER
15109 && GET_CODE (operands[1]) == REG && REGNO (operands[1]) < FIRST_PSEUDO_REGISTER
15110 && (INTVAL (operands[2]) & 63) < 32
15111 && (INTVAL (operands[2]) & 63) != 0))
15112 {
15113 return gen_split_467 (operands);
15114 }
15115 goto ret0;
15116
15117 L3668: ATTRIBUTE_UNUSED_LABEL
15118 if (XVECLEN (x1, 0) == 1
15119 && XINT (x1, 1) == 11)
15120 goto L3236;
15121 goto ret0;
15122
15123 L3236: ATTRIBUTE_UNUSED_LABEL
15124 x2 = XVECEXP (x1, 0, 0);
15125 if (register_operand (x2, VOIDmode))
15126 {
15127 operands[0] = x2;
15128 goto L3237;
15129 }
15130 goto ret0;
15131
15132 L3237: ATTRIBUTE_UNUSED_LABEL
15133 x1 = XVECEXP (x0, 0, 1);
15134 if (GET_CODE (x1) == CLOBBER)
15135 goto L3238;
15136 goto ret0;
15137
15138 L3238: ATTRIBUTE_UNUSED_LABEL
15139 x2 = XEXP (x1, 0);
15140 if (scratch_operand (x2, VOIDmode))
15141 {
15142 operands[1] = x2;
15143 goto L3239;
15144 }
15145 goto ret0;
15146
15147 L3239: ATTRIBUTE_UNUSED_LABEL
15148 if ((reload_completed && !TARGET_DEBUG_D_MODE))
15149 {
15150 return gen_split_517 (operands);
15151 }
15152 goto ret0;
15153
15154 L2921: ATTRIBUTE_UNUSED_LABEL
15155 x1 = XVECEXP (x0, 0, 0);
15156 if (GET_CODE (x1) == SET)
15157 goto L2922;
15158 goto ret0;
15159
15160 L2922: ATTRIBUTE_UNUSED_LABEL
15161 x2 = XEXP (x1, 0);
15162 if (register_operand (x2, SImode))
15163 {
15164 operands[0] = x2;
15165 goto L2923;
15166 }
15167 goto ret0;
15168
15169 L2923: ATTRIBUTE_UNUSED_LABEL
15170 x2 = XEXP (x1, 1);
15171 if (GET_MODE (x2) == SImode)
15172 goto L3674;
15173 goto ret0;
15174
15175 L3674: ATTRIBUTE_UNUSED_LABEL
15176 switch (GET_CODE (x2))
15177 {
15178 case PLUS:
15179 goto L2924;
15180 case MINUS:
15181 goto L2958;
15182 default:
15183 break;
15184 }
15185 goto ret0;
15186
15187 L2924: ATTRIBUTE_UNUSED_LABEL
15188 x3 = XEXP (x2, 0);
15189 if (GET_MODE (x3) == SImode
15190 && GET_CODE (x3) == MULT)
15191 goto L2925;
15192 goto ret0;
15193
15194 L2925: ATTRIBUTE_UNUSED_LABEL
15195 x4 = XEXP (x3, 0);
15196 if (register_operand (x4, SImode))
15197 {
15198 operands[1] = x4;
15199 goto L2926;
15200 }
15201 goto ret0;
15202
15203 L2926: ATTRIBUTE_UNUSED_LABEL
15204 x4 = XEXP (x3, 1);
15205 if (register_operand (x4, SImode))
15206 {
15207 operands[2] = x4;
15208 goto L2927;
15209 }
15210 goto ret0;
15211
15212 L2927: ATTRIBUTE_UNUSED_LABEL
15213 x3 = XEXP (x2, 1);
15214 if (register_operand (x3, SImode))
15215 {
15216 operands[3] = x3;
15217 goto L2928;
15218 }
15219 goto ret0;
15220
15221 L2928: ATTRIBUTE_UNUSED_LABEL
15222 x1 = XVECEXP (x0, 0, 1);
15223 if (GET_CODE (x1) == CLOBBER)
15224 goto L2929;
15225 goto ret0;
15226
15227 L2929: ATTRIBUTE_UNUSED_LABEL
15228 x2 = XEXP (x1, 0);
15229 if (scratch_operand (x2, SImode))
15230 {
15231 operands[4] = x2;
15232 goto L2930;
15233 }
15234 goto ret0;
15235
15236 L2930: ATTRIBUTE_UNUSED_LABEL
15237 x1 = XVECEXP (x0, 0, 2);
15238 if (GET_CODE (x1) == CLOBBER)
15239 goto L2931;
15240 goto ret0;
15241
15242 L2931: ATTRIBUTE_UNUSED_LABEL
15243 x2 = XEXP (x1, 0);
15244 if (scratch_operand (x2, SImode))
15245 {
15246 operands[5] = x2;
15247 goto L2932;
15248 }
15249 goto ret0;
15250
15251 L2932: ATTRIBUTE_UNUSED_LABEL
15252 x1 = XVECEXP (x0, 0, 3);
15253 if (GET_CODE (x1) == CLOBBER)
15254 goto L2933;
15255 goto ret0;
15256
15257 L2933: ATTRIBUTE_UNUSED_LABEL
15258 x2 = XEXP (x1, 0);
15259 if (scratch_operand (x2, SImode))
15260 {
15261 operands[6] = x2;
15262 goto L2934;
15263 }
15264 goto ret0;
15265
15266 L2934: ATTRIBUTE_UNUSED_LABEL
15267 x1 = XVECEXP (x0, 0, 4);
15268 if (GET_CODE (x1) == CLOBBER)
15269 goto L2935;
15270 goto ret0;
15271
15272 L2935: ATTRIBUTE_UNUSED_LABEL
15273 x2 = XEXP (x1, 0);
15274 if (scratch_operand (x2, SImode))
15275 {
15276 operands[7] = x2;
15277 goto L2936;
15278 }
15279 goto ret0;
15280
15281 L2936: ATTRIBUTE_UNUSED_LABEL
15282 if ((reload_completed && !TARGET_DEBUG_D_MODE
15283 && GP_REG_P (true_regnum (operands[0]))
15284 && GP_REG_P (true_regnum (operands[3]))))
15285 {
15286 return gen_split_366 (operands);
15287 }
15288 L2953: ATTRIBUTE_UNUSED_LABEL
15289 if ((reload_completed && !TARGET_DEBUG_D_MODE
15290 && GP_REG_P (true_regnum (operands[0]))
15291 && true_regnum (operands[3]) == LO_REGNUM))
15292 {
15293 return gen_split_367 (operands);
15294 }
15295 goto ret0;
15296
15297 L2958: ATTRIBUTE_UNUSED_LABEL
15298 x3 = XEXP (x2, 0);
15299 if (register_operand (x3, SImode))
15300 {
15301 operands[1] = x3;
15302 goto L2959;
15303 }
15304 goto ret0;
15305
15306 L2959: ATTRIBUTE_UNUSED_LABEL
15307 x3 = XEXP (x2, 1);
15308 if (GET_MODE (x3) == SImode
15309 && GET_CODE (x3) == MULT)
15310 goto L2960;
15311 goto ret0;
15312
15313 L2960: ATTRIBUTE_UNUSED_LABEL
15314 x4 = XEXP (x3, 0);
15315 if (register_operand (x4, SImode))
15316 {
15317 operands[2] = x4;
15318 goto L2961;
15319 }
15320 goto ret0;
15321
15322 L2961: ATTRIBUTE_UNUSED_LABEL
15323 x4 = XEXP (x3, 1);
15324 if (register_operand (x4, SImode))
15325 {
15326 operands[3] = x4;
15327 goto L2962;
15328 }
15329 goto ret0;
15330
15331 L2962: ATTRIBUTE_UNUSED_LABEL
15332 x1 = XVECEXP (x0, 0, 1);
15333 if (GET_CODE (x1) == CLOBBER)
15334 goto L2963;
15335 goto ret0;
15336
15337 L2963: ATTRIBUTE_UNUSED_LABEL
15338 x2 = XEXP (x1, 0);
15339 if (scratch_operand (x2, SImode))
15340 {
15341 operands[4] = x2;
15342 goto L2964;
15343 }
15344 goto ret0;
15345
15346 L2964: ATTRIBUTE_UNUSED_LABEL
15347 x1 = XVECEXP (x0, 0, 2);
15348 if (GET_CODE (x1) == CLOBBER)
15349 goto L2965;
15350 goto ret0;
15351
15352 L2965: ATTRIBUTE_UNUSED_LABEL
15353 x2 = XEXP (x1, 0);
15354 if (scratch_operand (x2, SImode))
15355 {
15356 operands[5] = x2;
15357 goto L2966;
15358 }
15359 goto ret0;
15360
15361 L2966: ATTRIBUTE_UNUSED_LABEL
15362 x1 = XVECEXP (x0, 0, 3);
15363 if (GET_CODE (x1) == CLOBBER)
15364 goto L2967;
15365 goto ret0;
15366
15367 L2967: ATTRIBUTE_UNUSED_LABEL
15368 x2 = XEXP (x1, 0);
15369 if (scratch_operand (x2, SImode))
15370 {
15371 operands[6] = x2;
15372 goto L2968;
15373 }
15374 goto ret0;
15375
15376 L2968: ATTRIBUTE_UNUSED_LABEL
15377 x1 = XVECEXP (x0, 0, 4);
15378 if (GET_CODE (x1) == CLOBBER)
15379 goto L2969;
15380 goto ret0;
15381
15382 L2969: ATTRIBUTE_UNUSED_LABEL
15383 x2 = XEXP (x1, 0);
15384 if (scratch_operand (x2, SImode))
15385 {
15386 operands[7] = x2;
15387 goto L2970;
15388 }
15389 goto ret0;
15390
15391 L2970: ATTRIBUTE_UNUSED_LABEL
15392 if ((reload_completed && !TARGET_DEBUG_D_MODE
15393 && GP_REG_P (true_regnum (operands[0]))
15394 && GP_REG_P (true_regnum (operands[1]))))
15395 {
15396 return gen_split_368 (operands);
15397 }
15398 L2987: ATTRIBUTE_UNUSED_LABEL
15399 if ((reload_completed && !TARGET_DEBUG_D_MODE
15400 && GP_REG_P (true_regnum (operands[0]))
15401 && true_regnum (operands[1]) == LO_REGNUM))
15402 {
15403 return gen_split_369 (operands);
15404 }
15405 L3004: ATTRIBUTE_UNUSED_LABEL
15406 if ((reload_completed && !TARGET_DEBUG_D_MODE
15407 && GP_REG_P (true_regnum (operands[0]))
15408 && GP_REG_P (true_regnum (operands[1]))))
15409 {
15410 return gen_split_370 (operands);
15411 }
15412 goto ret0;
15413 ret0:
15414 return 0;
15415 }
15416