Updated to libg++ 2.4
[unix-history] / gnu / usr.bin / cc / common / insn-recog.c
CommitLineData
9bf86ebb
PR
1/* Generated automatically by the program `genrecog'
2from the machine description file `md'. */
3
4#include "config.h"
5#include "rtl.h"
6#include "insn-config.h"
7#include "recog.h"
8#include "real.h"
9#include "output.h"
10#include "flags.h"
11
12
13/* `recog' contains a decision tree
14 that recognizes whether the rtx X0 is a valid instruction.
15
16 recog returns -1 if the rtx is not valid.
17 If the rtx is valid, recog returns a nonnegative number
18 which is the insn code number for the pattern that matched.
19 This is the same as the order in the machine description of
20 the entry that matched. This number can be used as an index into
21 entry that matched. This number can be used as an index into various
22 insn_* tables, such as insn_templates, insn_outfun, and insn_n_operands
23 (found in insn-output.c).
24
25 The third argument to recog is an optional pointer to an int.
26 If present, recog will accept a pattern if it matches except for
27 missing CLOBBER expressions at the end. In that case, the value
28 pointed to by the optional pointer will be set to the number of
29 CLOBBERs that need to be added (it should be initialized to zero by
30 the caller). If it is set nonzero, the caller should allocate a
31 PARALLEL of the appropriate size, copy the initial entries, and call
32 add_clobbers (found in insn-emit.c) to fill in the CLOBBERs.*/
33
34rtx recog_operand[MAX_RECOG_OPERANDS];
35
36rtx *recog_operand_loc[MAX_RECOG_OPERANDS];
37
38rtx *recog_dup_loc[MAX_DUP_OPERANDS];
39
40char recog_dup_num[MAX_DUP_OPERANDS];
41
42#define operands recog_operand
43
44int
45recog_1 (x0, insn, pnum_clobbers)
46 register rtx x0;
47 rtx insn;
48 int *pnum_clobbers;
49{
50 register rtx *ro = &recog_operand[0];
51 register rtx x1, x2, x3, x4, x5, x6;
52 int tem;
53
54 x1 = XEXP (x0, 1);
55 switch (GET_MODE (x1))
56 {
57 case SImode:
58 if (nonimmediate_operand (x1, SImode))
59 {
60 ro[0] = x1;
61 return 0;
62 }
63 break;
64 case HImode:
65 if (nonimmediate_operand (x1, HImode))
66 {
67 ro[0] = x1;
68 return 2;
69 }
70 break;
71 case QImode:
72 if (nonimmediate_operand (x1, QImode))
73 {
74 ro[0] = x1;
75 return 4;
76 }
77 break;
78 case SFmode:
79 if (pnum_clobbers != 0 && register_operand (x1, SFmode))
80 {
81 ro[0] = x1;
82 if (TARGET_80387 && ! TARGET_IEEE_FP)
83 {
84 *pnum_clobbers = 1;
85 return 6;
86 }
87 }
88 break;
89 case DFmode:
90 if (pnum_clobbers != 0 && register_operand (x1, DFmode))
91 {
92 ro[0] = x1;
93 if (TARGET_80387 && ! TARGET_IEEE_FP)
94 {
95 *pnum_clobbers = 1;
96 return 8;
97 }
98 }
99 }
100 switch (GET_CODE (x1))
101 {
102 case COMPARE:
103 goto L30;
104 case ZERO_EXTRACT:
105 goto L813;
106 }
107 L52:
108 if (VOIDmode_compare_op (x1, VOIDmode))
109 {
110 ro[2] = x1;
111 goto L82;
112 }
113 L125:
114 switch (GET_MODE (x1))
115 {
116 case CCFPEQmode:
117 switch (GET_CODE (x1))
118 {
119 case COMPARE:
120 goto L126;
121 }
122 break;
123 case SImode:
124 switch (GET_CODE (x1))
125 {
126 case AND:
127 goto L187;
128 }
129 break;
130 case HImode:
131 switch (GET_CODE (x1))
132 {
133 case AND:
134 goto L192;
135 }
136 break;
137 case QImode:
138 if (GET_CODE (x1) == AND && 1)
139 goto L197;
140 }
141 goto ret0;
142
143 L30:
144 x2 = XEXP (x1, 0);
145 switch (GET_MODE (x2))
146 {
147 case SImode:
148 if (nonimmediate_operand (x2, SImode))
149 {
150 ro[0] = x2;
151 goto L31;
152 }
153 break;
154 case HImode:
155 if (nonimmediate_operand (x2, HImode))
156 {
157 ro[0] = x2;
158 goto L36;
159 }
160 break;
161 case QImode:
162 if (nonimmediate_operand (x2, QImode))
163 {
164 ro[0] = x2;
165 goto L41;
166 }
167 }
168 goto L52;
169
170 L31:
171 x2 = XEXP (x1, 1);
172 if (general_operand (x2, SImode))
173 {
174 ro[1] = x2;
175 if (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)
176 return 10;
177 }
178 goto L52;
179
180 L36:
181 x2 = XEXP (x1, 1);
182 if (general_operand (x2, HImode))
183 {
184 ro[1] = x2;
185 if (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)
186 return 12;
187 }
188 goto L52;
189
190 L41:
191 x2 = XEXP (x1, 1);
192 if (general_operand (x2, QImode))
193 {
194 ro[1] = x2;
195 if (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)
196 return 14;
197 }
198 goto L52;
199
200 L813:
201 x2 = XEXP (x1, 0);
202 switch (GET_MODE (x2))
203 {
204 case SImode:
205 if (register_operand (x2, SImode))
206 {
207 ro[0] = x2;
208 goto L814;
209 }
210 break;
211 case QImode:
212 if (general_operand (x2, QImode))
213 {
214 ro[0] = x2;
215 goto L826;
216 }
217 }
218 goto L52;
219
220 L814:
221 x2 = XEXP (x1, 1);
222 if (GET_CODE (x2) != CONST_INT)
223 {
224 goto L52;
225 }
226 if (XWINT (x2, 0) == 1 && 1)
227 goto L815;
228 L820:
229 ro[1] = x2;
230 goto L821;
231
232 L815:
233 x2 = XEXP (x1, 2);
234 if (general_operand (x2, SImode))
235 {
236 ro[1] = x2;
237 if (GET_CODE (operands[1]) != CONST_INT)
238 return 167;
239 }
240 x2 = XEXP (x1, 1);
241 goto L820;
242
243 L821:
244 x2 = XEXP (x1, 2);
245 if (GET_CODE (x2) == CONST_INT && 1)
246 {
247 ro[2] = x2;
248 return 168;
249 }
250 goto L52;
251
252 L826:
253 x2 = XEXP (x1, 1);
254 if (GET_CODE (x2) == CONST_INT && 1)
255 {
256 ro[1] = x2;
257 goto L827;
258 }
259 goto L52;
260
261 L827:
262 x2 = XEXP (x1, 2);
263 if (GET_CODE (x2) == CONST_INT && 1)
264 {
265 ro[2] = x2;
266 if (GET_CODE (operands[0]) != MEM || ! MEM_VOLATILE_P (operands[0]))
267 return 169;
268 }
269 goto L52;
270
271 L82:
272 x2 = XEXP (x1, 0);
273 switch (GET_MODE (x2))
274 {
275 case DFmode:
276 switch (GET_CODE (x2))
277 {
278 case FLOAT:
279 goto L83;
280 case FLOAT_EXTEND:
281 goto L113;
282 case SUBREG:
283 case REG:
284 case MEM:
285 if (nonimmediate_operand (x2, DFmode))
286 {
287 ro[0] = x2;
288 goto L54;
289 }
290 }
291 L67:
292 if (register_operand (x2, DFmode))
293 {
294 ro[0] = x2;
295 goto L68;
296 }
297 break;
298 case SFmode:
299 if (GET_CODE (x2) == FLOAT && 1)
300 goto L169;
301 if (nonimmediate_operand (x2, SFmode))
302 {
303 ro[0] = x2;
304 goto L140;
305 }
306 L153:
307 if (register_operand (x2, SFmode))
308 {
309 ro[0] = x2;
310 goto L154;
311 }
312 }
313 goto L125;
314
315 L83:
316 x3 = XEXP (x2, 0);
317 if (nonimmediate_operand (x3, SImode))
318 {
319 ro[0] = x3;
320 goto L84;
321 }
322 goto L125;
323
324 L84:
325 x2 = XEXP (x1, 1);
326 if (pnum_clobbers != 0 && register_operand (x2, DFmode))
327 {
328 ro[1] = x2;
329 if (TARGET_80387)
330 {
331 *pnum_clobbers = 1;
332 return 18;
333 }
334 }
335 goto L125;
336
337 L113:
338 x3 = XEXP (x2, 0);
339 if (nonimmediate_operand (x3, SFmode))
340 {
341 ro[0] = x3;
342 goto L114;
343 }
344 goto L125;
345
346 L114:
347 x2 = XEXP (x1, 1);
348 if (pnum_clobbers != 0 && register_operand (x2, DFmode))
349 {
350 ro[1] = x2;
351 if (TARGET_80387)
352 {
353 *pnum_clobbers = 1;
354 return 20;
355 }
356 }
357 goto L125;
358
359 L54:
360 x2 = XEXP (x1, 1);
361 if (pnum_clobbers != 0 && nonimmediate_operand (x2, DFmode))
362 {
363 ro[1] = x2;
364 if (TARGET_80387
365 && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM))
366 {
367 *pnum_clobbers = 1;
368 return 16;
369 }
370 }
371 x2 = XEXP (x1, 0);
372 goto L67;
373
374 L68:
375 x2 = XEXP (x1, 1);
376 if (GET_MODE (x2) != DFmode)
377 {
378 goto L125;
379 }
380 switch (GET_CODE (x2))
381 {
382 case FLOAT:
383 goto L69;
384 case FLOAT_EXTEND:
385 goto L99;
386 }
387 goto L125;
388
389 L69:
390 x3 = XEXP (x2, 0);
391 if (pnum_clobbers != 0 && nonimmediate_operand (x3, SImode))
392 {
393 ro[1] = x3;
394 if (TARGET_80387)
395 {
396 *pnum_clobbers = 1;
397 return 17;
398 }
399 }
400 goto L125;
401
402 L99:
403 x3 = XEXP (x2, 0);
404 if (pnum_clobbers != 0 && nonimmediate_operand (x3, SFmode))
405 {
406 ro[1] = x3;
407 if (TARGET_80387)
408 {
409 *pnum_clobbers = 1;
410 return 19;
411 }
412 }
413 goto L125;
414
415 L169:
416 x3 = XEXP (x2, 0);
417 if (nonimmediate_operand (x3, SImode))
418 {
419 ro[0] = x3;
420 goto L170;
421 }
422 goto L125;
423
424 L170:
425 x2 = XEXP (x1, 1);
426 if (pnum_clobbers != 0 && register_operand (x2, SFmode))
427 {
428 ro[1] = x2;
429 if (TARGET_80387)
430 {
431 *pnum_clobbers = 1;
432 return 24;
433 }
434 }
435 goto L125;
436
437 L140:
438 x2 = XEXP (x1, 1);
439 if (pnum_clobbers != 0 && nonimmediate_operand (x2, SFmode))
440 {
441 ro[1] = x2;
442 if (TARGET_80387
443 && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM))
444 {
445 *pnum_clobbers = 1;
446 return 22;
447 }
448 }
449 x2 = XEXP (x1, 0);
450 goto L153;
451
452 L154:
453 x2 = XEXP (x1, 1);
454 if (GET_MODE (x2) == SFmode && GET_CODE (x2) == FLOAT && 1)
455 goto L155;
456 goto L125;
457
458 L155:
459 x3 = XEXP (x2, 0);
460 if (pnum_clobbers != 0 && nonimmediate_operand (x3, SImode))
461 {
462 ro[1] = x3;
463 if (TARGET_80387)
464 {
465 *pnum_clobbers = 1;
466 return 23;
467 }
468 }
469 goto L125;
470
471 L126:
472 x2 = XEXP (x1, 0);
473 switch (GET_MODE (x2))
474 {
475 case DFmode:
476 if (register_operand (x2, DFmode))
477 {
478 ro[0] = x2;
479 goto L127;
480 }
481 break;
482 case SFmode:
483 if (register_operand (x2, SFmode))
484 {
485 ro[0] = x2;
486 goto L183;
487 }
488 }
489 goto ret0;
490
491 L127:
492 x2 = XEXP (x1, 1);
493 if (pnum_clobbers != 0 && register_operand (x2, DFmode))
494 {
495 ro[1] = x2;
496 if (TARGET_80387)
497 {
498 *pnum_clobbers = 1;
499 return 21;
500 }
501 }
502 goto ret0;
503
504 L183:
505 x2 = XEXP (x1, 1);
506 if (pnum_clobbers != 0 && register_operand (x2, SFmode))
507 {
508 ro[1] = x2;
509 if (TARGET_80387)
510 {
511 *pnum_clobbers = 1;
512 return 25;
513 }
514 }
515 goto ret0;
516
517 L187:
518 x2 = XEXP (x1, 0);
519 if (general_operand (x2, SImode))
520 {
521 ro[0] = x2;
522 goto L188;
523 }
524 goto ret0;
525
526 L188:
527 x2 = XEXP (x1, 1);
528 if (general_operand (x2, SImode))
529 {
530 ro[1] = x2;
531 return 32;
532 }
533 goto ret0;
534
535 L192:
536 x2 = XEXP (x1, 0);
537 if (general_operand (x2, HImode))
538 {
539 ro[0] = x2;
540 goto L193;
541 }
542 goto ret0;
543
544 L193:
545 x2 = XEXP (x1, 1);
546 if (general_operand (x2, HImode))
547 {
548 ro[1] = x2;
549 return 33;
550 }
551 goto ret0;
552
553 L197:
554 x2 = XEXP (x1, 0);
555 if (general_operand (x2, QImode))
556 {
557 ro[0] = x2;
558 goto L198;
559 }
560 goto ret0;
561
562 L198:
563 x2 = XEXP (x1, 1);
564 if (general_operand (x2, QImode))
565 {
566 ro[1] = x2;
567 return 34;
568 }
569 goto ret0;
570 ret0: return -1;
571}
572
573int
574recog_2 (x0, insn, pnum_clobbers)
575 register rtx x0;
576 rtx insn;
577 int *pnum_clobbers;
578{
579 register rtx *ro = &recog_operand[0];
580 register rtx x1, x2, x3, x4, x5, x6;
581 int tem;
582
583 x1 = XEXP (x0, 1);
584 x2 = XEXP (x1, 0);
585 switch (GET_CODE (x2))
586 {
587 case EQ:
588 goto L882;
589 case NE:
590 goto L891;
591 case GT:
592 goto L900;
593 case GTU:
594 goto L909;
595 case LT:
596 goto L918;
597 case LTU:
598 goto L927;
599 case GE:
600 goto L936;
601 case GEU:
602 goto L945;
603 case LE:
604 goto L954;
605 case LEU:
606 goto L963;
607 }
608 goto ret0;
609
610 L882:
611 x3 = XEXP (x2, 0);
612 if (GET_CODE (x3) == CC0 && 1)
613 goto L883;
614 goto ret0;
615
616 L883:
617 x3 = XEXP (x2, 1);
618 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
619 goto L884;
620 goto ret0;
621
622 L884:
623 x2 = XEXP (x1, 1);
624 switch (GET_CODE (x2))
625 {
626 case LABEL_REF:
627 goto L885;
628 case PC:
629 goto L975;
630 }
631 goto ret0;
632
633 L885:
634 x3 = XEXP (x2, 0);
635 ro[0] = x3;
636 goto L886;
637
638 L886:
639 x2 = XEXP (x1, 2);
640 if (GET_CODE (x2) == PC && 1)
641 return 191;
642 goto ret0;
643
644 L975:
645 x2 = XEXP (x1, 2);
646 if (GET_CODE (x2) == LABEL_REF && 1)
647 goto L976;
648 goto ret0;
649
650 L976:
651 x3 = XEXP (x2, 0);
652 ro[0] = x3;
653 return 210;
654
655 L891:
656 x3 = XEXP (x2, 0);
657 if (GET_CODE (x3) == CC0 && 1)
658 goto L892;
659 goto ret0;
660
661 L892:
662 x3 = XEXP (x2, 1);
663 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
664 goto L893;
665 goto ret0;
666
667 L893:
668 x2 = XEXP (x1, 1);
669 switch (GET_CODE (x2))
670 {
671 case LABEL_REF:
672 goto L894;
673 case PC:
674 goto L984;
675 }
676 goto ret0;
677
678 L894:
679 x3 = XEXP (x2, 0);
680 ro[0] = x3;
681 goto L895;
682
683 L895:
684 x2 = XEXP (x1, 2);
685 if (GET_CODE (x2) == PC && 1)
686 return 193;
687 goto ret0;
688
689 L984:
690 x2 = XEXP (x1, 2);
691 if (GET_CODE (x2) == LABEL_REF && 1)
692 goto L985;
693 goto ret0;
694
695 L985:
696 x3 = XEXP (x2, 0);
697 ro[0] = x3;
698 return 211;
699
700 L900:
701 x3 = XEXP (x2, 0);
702 if (GET_CODE (x3) == CC0 && 1)
703 goto L901;
704 goto ret0;
705
706 L901:
707 x3 = XEXP (x2, 1);
708 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
709 goto L902;
710 goto ret0;
711
712 L902:
713 x2 = XEXP (x1, 1);
714 switch (GET_CODE (x2))
715 {
716 case LABEL_REF:
717 goto L903;
718 case PC:
719 goto L993;
720 }
721 goto ret0;
722
723 L903:
724 x3 = XEXP (x2, 0);
725 ro[0] = x3;
726 goto L904;
727
728 L904:
729 x2 = XEXP (x1, 2);
730 if (GET_CODE (x2) == PC && 1)
731 return 195;
732 goto ret0;
733
734 L993:
735 x2 = XEXP (x1, 2);
736 if (GET_CODE (x2) == LABEL_REF && 1)
737 goto L994;
738 goto ret0;
739
740 L994:
741 x3 = XEXP (x2, 0);
742 ro[0] = x3;
743 return 212;
744
745 L909:
746 x3 = XEXP (x2, 0);
747 if (GET_CODE (x3) == CC0 && 1)
748 goto L910;
749 goto ret0;
750
751 L910:
752 x3 = XEXP (x2, 1);
753 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
754 goto L911;
755 goto ret0;
756
757 L911:
758 x2 = XEXP (x1, 1);
759 switch (GET_CODE (x2))
760 {
761 case LABEL_REF:
762 goto L912;
763 case PC:
764 goto L1002;
765 }
766 goto ret0;
767
768 L912:
769 x3 = XEXP (x2, 0);
770 ro[0] = x3;
771 goto L913;
772
773 L913:
774 x2 = XEXP (x1, 2);
775 if (GET_CODE (x2) == PC && 1)
776 return 197;
777 goto ret0;
778
779 L1002:
780 x2 = XEXP (x1, 2);
781 if (GET_CODE (x2) == LABEL_REF && 1)
782 goto L1003;
783 goto ret0;
784
785 L1003:
786 x3 = XEXP (x2, 0);
787 ro[0] = x3;
788 return 213;
789
790 L918:
791 x3 = XEXP (x2, 0);
792 if (GET_CODE (x3) == CC0 && 1)
793 goto L919;
794 goto ret0;
795
796 L919:
797 x3 = XEXP (x2, 1);
798 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
799 goto L920;
800 goto ret0;
801
802 L920:
803 x2 = XEXP (x1, 1);
804 switch (GET_CODE (x2))
805 {
806 case LABEL_REF:
807 goto L921;
808 case PC:
809 goto L1011;
810 }
811 goto ret0;
812
813 L921:
814 x3 = XEXP (x2, 0);
815 ro[0] = x3;
816 goto L922;
817
818 L922:
819 x2 = XEXP (x1, 2);
820 if (GET_CODE (x2) == PC && 1)
821 return 199;
822 goto ret0;
823
824 L1011:
825 x2 = XEXP (x1, 2);
826 if (GET_CODE (x2) == LABEL_REF && 1)
827 goto L1012;
828 goto ret0;
829
830 L1012:
831 x3 = XEXP (x2, 0);
832 ro[0] = x3;
833 return 214;
834
835 L927:
836 x3 = XEXP (x2, 0);
837 if (GET_CODE (x3) == CC0 && 1)
838 goto L928;
839 goto ret0;
840
841 L928:
842 x3 = XEXP (x2, 1);
843 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
844 goto L929;
845 goto ret0;
846
847 L929:
848 x2 = XEXP (x1, 1);
849 switch (GET_CODE (x2))
850 {
851 case LABEL_REF:
852 goto L930;
853 case PC:
854 goto L1020;
855 }
856 goto ret0;
857
858 L930:
859 x3 = XEXP (x2, 0);
860 ro[0] = x3;
861 goto L931;
862
863 L931:
864 x2 = XEXP (x1, 2);
865 if (GET_CODE (x2) == PC && 1)
866 return 201;
867 goto ret0;
868
869 L1020:
870 x2 = XEXP (x1, 2);
871 if (GET_CODE (x2) == LABEL_REF && 1)
872 goto L1021;
873 goto ret0;
874
875 L1021:
876 x3 = XEXP (x2, 0);
877 ro[0] = x3;
878 return 215;
879
880 L936:
881 x3 = XEXP (x2, 0);
882 if (GET_CODE (x3) == CC0 && 1)
883 goto L937;
884 goto ret0;
885
886 L937:
887 x3 = XEXP (x2, 1);
888 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
889 goto L938;
890 goto ret0;
891
892 L938:
893 x2 = XEXP (x1, 1);
894 switch (GET_CODE (x2))
895 {
896 case LABEL_REF:
897 goto L939;
898 case PC:
899 goto L1029;
900 }
901 goto ret0;
902
903 L939:
904 x3 = XEXP (x2, 0);
905 ro[0] = x3;
906 goto L940;
907
908 L940:
909 x2 = XEXP (x1, 2);
910 if (GET_CODE (x2) == PC && 1)
911 return 203;
912 goto ret0;
913
914 L1029:
915 x2 = XEXP (x1, 2);
916 if (GET_CODE (x2) == LABEL_REF && 1)
917 goto L1030;
918 goto ret0;
919
920 L1030:
921 x3 = XEXP (x2, 0);
922 ro[0] = x3;
923 return 216;
924
925 L945:
926 x3 = XEXP (x2, 0);
927 if (GET_CODE (x3) == CC0 && 1)
928 goto L946;
929 goto ret0;
930
931 L946:
932 x3 = XEXP (x2, 1);
933 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
934 goto L947;
935 goto ret0;
936
937 L947:
938 x2 = XEXP (x1, 1);
939 switch (GET_CODE (x2))
940 {
941 case LABEL_REF:
942 goto L948;
943 case PC:
944 goto L1038;
945 }
946 goto ret0;
947
948 L948:
949 x3 = XEXP (x2, 0);
950 ro[0] = x3;
951 goto L949;
952
953 L949:
954 x2 = XEXP (x1, 2);
955 if (GET_CODE (x2) == PC && 1)
956 return 205;
957 goto ret0;
958
959 L1038:
960 x2 = XEXP (x1, 2);
961 if (GET_CODE (x2) == LABEL_REF && 1)
962 goto L1039;
963 goto ret0;
964
965 L1039:
966 x3 = XEXP (x2, 0);
967 ro[0] = x3;
968 return 217;
969
970 L954:
971 x3 = XEXP (x2, 0);
972 if (GET_CODE (x3) == CC0 && 1)
973 goto L955;
974 goto ret0;
975
976 L955:
977 x3 = XEXP (x2, 1);
978 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
979 goto L956;
980 goto ret0;
981
982 L956:
983 x2 = XEXP (x1, 1);
984 switch (GET_CODE (x2))
985 {
986 case LABEL_REF:
987 goto L957;
988 case PC:
989 goto L1047;
990 }
991 goto ret0;
992
993 L957:
994 x3 = XEXP (x2, 0);
995 ro[0] = x3;
996 goto L958;
997
998 L958:
999 x2 = XEXP (x1, 2);
1000 if (GET_CODE (x2) == PC && 1)
1001 return 207;
1002 goto ret0;
1003
1004 L1047:
1005 x2 = XEXP (x1, 2);
1006 if (GET_CODE (x2) == LABEL_REF && 1)
1007 goto L1048;
1008 goto ret0;
1009
1010 L1048:
1011 x3 = XEXP (x2, 0);
1012 ro[0] = x3;
1013 return 218;
1014
1015 L963:
1016 x3 = XEXP (x2, 0);
1017 if (GET_CODE (x3) == CC0 && 1)
1018 goto L964;
1019 goto ret0;
1020
1021 L964:
1022 x3 = XEXP (x2, 1);
1023 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
1024 goto L965;
1025 goto ret0;
1026
1027 L965:
1028 x2 = XEXP (x1, 1);
1029 switch (GET_CODE (x2))
1030 {
1031 case LABEL_REF:
1032 goto L966;
1033 case PC:
1034 goto L1056;
1035 }
1036 goto ret0;
1037
1038 L966:
1039 x3 = XEXP (x2, 0);
1040 ro[0] = x3;
1041 goto L967;
1042
1043 L967:
1044 x2 = XEXP (x1, 2);
1045 if (GET_CODE (x2) == PC && 1)
1046 return 209;
1047 goto ret0;
1048
1049 L1056:
1050 x2 = XEXP (x1, 2);
1051 if (GET_CODE (x2) == LABEL_REF && 1)
1052 goto L1057;
1053 goto ret0;
1054
1055 L1057:
1056 x3 = XEXP (x2, 0);
1057 ro[0] = x3;
1058 return 219;
1059 ret0: return -1;
1060}
1061
1062int
1063recog_3 (x0, insn, pnum_clobbers)
1064 register rtx x0;
1065 rtx insn;
1066 int *pnum_clobbers;
1067{
1068 register rtx *ro = &recog_operand[0];
1069 register rtx x1, x2, x3, x4, x5, x6;
1070 int tem;
1071
1072 x1 = XEXP (x0, 0);
1073 switch (GET_MODE (x1))
1074 {
1075 case SImode:
1076 switch (GET_CODE (x1))
1077 {
1078 case MEM:
1079 if (push_operand (x1, SImode))
1080 {
1081 ro[0] = x1;
1082 goto L201;
1083 }
1084 break;
1085 case ZERO_EXTRACT:
1086 goto L792;
1087 }
1088 L208:
1089 if (general_operand (x1, SImode))
1090 {
1091 ro[0] = x1;
1092 goto L257;
1093 }
1094 L431:
1095 if (register_operand (x1, SImode))
1096 {
1097 ro[0] = x1;
1098 goto L432;
1099 }
1100 L439:
1101 if (general_operand (x1, SImode))
1102 {
1103 ro[0] = x1;
1104 goto L440;
1105 }
1106 break;
1107 case HImode:
1108 if (GET_CODE (x1) == MEM && push_operand (x1, HImode))
1109 {
1110 ro[0] = x1;
1111 goto L212;
1112 }
1113 L214:
1114 if (general_operand (x1, HImode))
1115 {
1116 ro[0] = x1;
1117 goto L261;
1118 }
1119 break;
1120 case QImode:
1121 if (GET_CODE (x1) == MEM && push_operand (x1, QImode))
1122 {
1123 ro[0] = x1;
1124 goto L222;
1125 }
1126 L224:
1127 if (general_operand (x1, QImode))
1128 {
1129 ro[0] = x1;
1130 goto L427;
1131 }
1132 L829:
1133 if (register_operand (x1, QImode))
1134 {
1135 ro[0] = x1;
1136 goto L830;
1137 }
1138 break;
1139 case SFmode:
1140 if (GET_CODE (x1) == MEM && push_operand (x1, SFmode))
1141 {
1142 ro[0] = x1;
1143 goto L232;
1144 }
1145 L234:
1146 if (general_operand (x1, SFmode))
1147 {
1148 ro[0] = x1;
1149 goto L235;
1150 }
1151 L399:
1152 if (register_operand (x1, SFmode))
1153 {
1154 ro[0] = x1;
1155 goto L400;
1156 }
1157 break;
1158 case DFmode:
1159 if (GET_CODE (x1) == MEM && push_operand (x1, DFmode))
1160 {
1161 ro[0] = x1;
1162 goto L238;
1163 }
1164 L247:
1165 if (general_operand (x1, DFmode))
1166 {
1167 ro[0] = x1;
1168 goto L289;
1169 }
1170 L395:
1171 if (register_operand (x1, DFmode))
1172 {
1173 ro[0] = x1;
1174 goto L396;
1175 }
1176 break;
1177 case DImode:
1178 if (GET_CODE (x1) == MEM && push_operand (x1, DImode))
1179 {
1180 ro[0] = x1;
1181 goto L251;
1182 }
1183 L253:
1184 if (general_operand (x1, DImode))
1185 {
1186 ro[0] = x1;
1187 goto L412;
1188 }
1189 L268:
1190 if (register_operand (x1, DImode))
1191 {
1192 ro[0] = x1;
1193 goto L269;
1194 }
1195 }
1196 switch (GET_CODE (x1))
1197 {
1198 case CC0:
1199 goto L2;
1200 case STRICT_LOW_PART:
1201 goto L218;
1202 case PC:
1203 goto L1081;
1204 }
1205 L1147:
1206 ro[0] = x1;
1207 goto L1148;
1208 L1227:
1209 switch (GET_MODE (x1))
1210 {
1211 case SImode:
1212 if (general_operand (x1, SImode))
1213 {
1214 ro[0] = x1;
1215 goto L1228;
1216 }
1217 break;
1218 case HImode:
1219 if (general_operand (x1, HImode))
1220 {
1221 ro[0] = x1;
1222 goto L1234;
1223 }
1224 break;
1225 case DFmode:
1226 if (register_operand (x1, DFmode))
1227 {
1228 ro[0] = x1;
1229 goto L1240;
1230 }
1231 break;
1232 case SFmode:
1233 if (register_operand (x1, SFmode))
1234 {
1235 ro[0] = x1;
1236 goto L1269;
1237 }
1238 }
1239 goto ret0;
1240
1241 L201:
1242 x1 = XEXP (x0, 1);
1243 if (general_operand (x1, SImode))
1244 goto L205;
1245 x1 = XEXP (x0, 0);
1246 goto L208;
1247
1248 L205:
1249 ro[1] = x1;
1250 if (! TARGET_486)
1251 return 35;
1252 L206:
1253 ro[1] = x1;
1254 if (TARGET_486)
1255 return 36;
1256 x1 = XEXP (x0, 0);
1257 goto L208;
1258
1259 L792:
1260 x2 = XEXP (x1, 0);
1261 if (GET_MODE (x2) == SImode && general_operand (x2, SImode))
1262 {
1263 ro[0] = x2;
1264 goto L793;
1265 }
1266 goto L1147;
1267
1268 L793:
1269 x2 = XEXP (x1, 1);
1270 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 1 && 1)
1271 goto L794;
1272 goto L1147;
1273
1274 L794:
1275 x2 = XEXP (x1, 2);
1276 if (general_operand (x2, SImode))
1277 {
1278 ro[2] = x2;
1279 goto L795;
1280 }
1281 goto L1147;
1282
1283 L795:
1284 x1 = XEXP (x0, 1);
1285 if (GET_CODE (x1) == CONST_INT && 1)
1286 {
1287 ro[3] = x1;
1288 if (! TARGET_486 && GET_CODE (operands[2]) != CONST_INT)
1289 return 164;
1290 }
1291 x1 = XEXP (x0, 0);
1292 goto L1147;
1293
1294 L257:
1295 x1 = XEXP (x0, 1);
1296 switch (GET_MODE (x1))
1297 {
1298 case SImode:
1299 switch (GET_CODE (x1))
1300 {
1301 case ZERO_EXTEND:
1302 goto L258;
1303 case SIGN_EXTEND:
1304 goto L278;
1305 case PLUS:
1306 goto L418;
1307 }
1308 }
1309 if (general_operand (x1, SImode))
1310 {
1311 ro[1] = x1;
1312 return 38;
1313 }
1314 x1 = XEXP (x0, 0);
1315 goto L431;
1316
1317 L258:
1318 x2 = XEXP (x1, 0);
1319 switch (GET_MODE (x2))
1320 {
1321 case HImode:
1322 if (nonimmediate_operand (x2, HImode))
1323 {
1324 ro[1] = x2;
1325 return 52;
1326 }
1327 break;
1328 case QImode:
1329 if (nonimmediate_operand (x2, QImode))
1330 {
1331 ro[1] = x2;
1332 return 54;
1333 }
1334 }
1335 x1 = XEXP (x0, 0);
1336 goto L431;
1337
1338 L278:
1339 x2 = XEXP (x1, 0);
1340 switch (GET_MODE (x2))
1341 {
1342 case HImode:
1343 if (nonimmediate_operand (x2, HImode))
1344 {
1345 ro[1] = x2;
1346 return 57;
1347 }
1348 break;
1349 case QImode:
1350 if (nonimmediate_operand (x2, QImode))
1351 {
1352 ro[1] = x2;
1353 return 59;
1354 }
1355 }
1356 x1 = XEXP (x0, 0);
1357 goto L431;
1358
1359 L418:
1360 x2 = XEXP (x1, 0);
1361 if (general_operand (x2, SImode))
1362 {
1363 ro[1] = x2;
1364 goto L419;
1365 }
1366 x1 = XEXP (x0, 0);
1367 goto L431;
1368
1369 L419:
1370 x2 = XEXP (x1, 1);
1371 if (general_operand (x2, SImode))
1372 {
1373 ro[2] = x2;
1374 return 82;
1375 }
1376 x1 = XEXP (x0, 0);
1377 goto L431;
1378
1379 L432:
1380 x1 = XEXP (x0, 1);
1381 if (address_operand (x1, QImode))
1382 {
1383 ro[1] = x1;
1384 return 85;
1385 }
1386 x1 = XEXP (x0, 0);
1387 goto L439;
1388
1389 L440:
1390 x1 = XEXP (x0, 1);
1391 if (GET_MODE (x1) != SImode)
1392 {
1393 x1 = XEXP (x0, 0);
1394 goto L1147;
1395 }
1396 switch (GET_CODE (x1))
1397 {
1398 case MINUS:
1399 goto L441;
1400 case MULT:
1401 goto L468;
1402 case AND:
1403 goto L541;
1404 case IOR:
1405 goto L556;
1406 case XOR:
1407 goto L799;
1408 case NEG:
1409 goto L590;
1410 case NOT:
1411 goto L667;
1412 case ASHIFT:
1413 goto L692;
1414 case ASHIFTRT:
1415 goto L720;
1416 case LSHIFTRT:
1417 goto L748;
1418 case ROTATE:
1419 goto L763;
1420 case ROTATERT:
1421 goto L778;
1422 }
1423 x1 = XEXP (x0, 0);
1424 goto L1147;
1425
1426 L441:
1427 x2 = XEXP (x1, 0);
1428 if (general_operand (x2, SImode))
1429 {
1430 ro[1] = x2;
1431 goto L442;
1432 }
1433 x1 = XEXP (x0, 0);
1434 goto L1147;
1435
1436 L442:
1437 x2 = XEXP (x1, 1);
1438 if (general_operand (x2, SImode))
1439 {
1440 ro[2] = x2;
1441 return 89;
1442 }
1443 x1 = XEXP (x0, 0);
1444 goto L1147;
1445
1446 L468:
1447 x2 = XEXP (x1, 0);
1448 if (general_operand (x2, SImode))
1449 {
1450 ro[1] = x2;
1451 goto L469;
1452 }
1453 x1 = XEXP (x0, 0);
1454 goto L1147;
1455
1456 L469:
1457 x2 = XEXP (x1, 1);
1458 if (general_operand (x2, SImode))
1459 goto L475;
1460 x1 = XEXP (x0, 0);
1461 goto L1147;
1462
1463 L475:
1464 ro[2] = x2;
1465 if (GET_CODE (operands[2]) == CONST_INT && INTVAL (operands[2]) == 0x80)
1466 return 96;
1467 L476:
1468 ro[2] = x2;
1469 return 97;
1470
1471 L541:
1472 x2 = XEXP (x1, 0);
1473 if (general_operand (x2, SImode))
1474 {
1475 ro[1] = x2;
1476 goto L542;
1477 }
1478 x1 = XEXP (x0, 0);
1479 goto L1147;
1480
1481 L542:
1482 x2 = XEXP (x1, 1);
1483 if (general_operand (x2, SImode))
1484 {
1485 ro[2] = x2;
1486 return 109;
1487 }
1488 x1 = XEXP (x0, 0);
1489 goto L1147;
1490
1491 L556:
1492 x2 = XEXP (x1, 0);
1493 if (general_operand (x2, SImode))
1494 {
1495 ro[1] = x2;
1496 goto L557;
1497 }
1498 x1 = XEXP (x0, 0);
1499 goto L1147;
1500
1501 L557:
1502 x2 = XEXP (x1, 1);
1503 if (general_operand (x2, SImode))
1504 {
1505 ro[2] = x2;
1506 return 112;
1507 }
1508 x1 = XEXP (x0, 0);
1509 goto L1147;
1510
1511 L799:
1512 x2 = XEXP (x1, 0);
1513 if (GET_MODE (x2) == SImode && GET_CODE (x2) == ASHIFT && 1)
1514 goto L800;
1515 if (general_operand (x2, SImode))
1516 {
1517 ro[1] = x2;
1518 goto L807;
1519 }
1520 x1 = XEXP (x0, 0);
1521 goto L1147;
1522
1523 L800:
1524 x3 = XEXP (x2, 0);
1525 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 1 && 1)
1526 goto L801;
1527 x1 = XEXP (x0, 0);
1528 goto L1147;
1529
1530 L801:
1531 x3 = XEXP (x2, 1);
1532 if (general_operand (x3, SImode))
1533 {
1534 ro[1] = x3;
1535 goto L802;
1536 }
1537 x1 = XEXP (x0, 0);
1538 goto L1147;
1539
1540 L802:
1541 x2 = XEXP (x1, 1);
1542 if (general_operand (x2, SImode))
1543 {
1544 ro[2] = x2;
1545 if (! TARGET_486 && GET_CODE (operands[1]) != CONST_INT)
1546 return 165;
1547 }
1548 x1 = XEXP (x0, 0);
1549 goto L1147;
1550
1551 L807:
1552 x2 = XEXP (x1, 1);
1553 if (GET_MODE (x2) == SImode && GET_CODE (x2) == ASHIFT && 1)
1554 goto L808;
1555 if (general_operand (x2, SImode))
1556 {
1557 ro[2] = x2;
1558 return 115;
1559 }
1560 x1 = XEXP (x0, 0);
1561 goto L1147;
1562
1563 L808:
1564 x3 = XEXP (x2, 0);
1565 if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 1 && 1)
1566 goto L809;
1567 x1 = XEXP (x0, 0);
1568 goto L1147;
1569
1570 L809:
1571 x3 = XEXP (x2, 1);
1572 if (general_operand (x3, SImode))
1573 {
1574 ro[2] = x3;
1575 if (! TARGET_486 && GET_CODE (operands[2]) != CONST_INT)
1576 return 166;
1577 }
1578 x1 = XEXP (x0, 0);
1579 goto L1147;
1580
1581 L590:
1582 x2 = XEXP (x1, 0);
1583 if (general_operand (x2, SImode))
1584 {
1585 ro[1] = x2;
1586 return 119;
1587 }
1588 x1 = XEXP (x0, 0);
1589 goto L1147;
1590
1591 L667:
1592 x2 = XEXP (x1, 0);
1593 if (general_operand (x2, SImode))
1594 {
1595 ro[1] = x2;
1596 return 137;
1597 }
1598 x1 = XEXP (x0, 0);
1599 goto L1147;
1600
1601 L692:
1602 x2 = XEXP (x1, 0);
1603 if (general_operand (x2, SImode))
1604 {
1605 ro[1] = x2;
1606 goto L693;
1607 }
1608 x1 = XEXP (x0, 0);
1609 goto L1147;
1610
1611 L693:
1612 x2 = XEXP (x1, 1);
1613 if (nonmemory_operand (x2, SImode))
1614 {
1615 ro[2] = x2;
1616 return 143;
1617 }
1618 x1 = XEXP (x0, 0);
1619 goto L1147;
1620
1621 L720:
1622 x2 = XEXP (x1, 0);
1623 if (general_operand (x2, SImode))
1624 {
1625 ro[1] = x2;
1626 goto L721;
1627 }
1628 x1 = XEXP (x0, 0);
1629 goto L1147;
1630
1631 L721:
1632 x2 = XEXP (x1, 1);
1633 if (nonmemory_operand (x2, SImode))
1634 {
1635 ro[2] = x2;
1636 return 149;
1637 }
1638 x1 = XEXP (x0, 0);
1639 goto L1147;
1640
1641 L748:
1642 x2 = XEXP (x1, 0);
1643 if (general_operand (x2, SImode))
1644 {
1645 ro[1] = x2;
1646 goto L749;
1647 }
1648 x1 = XEXP (x0, 0);
1649 goto L1147;
1650
1651 L749:
1652 x2 = XEXP (x1, 1);
1653 if (nonmemory_operand (x2, SImode))
1654 {
1655 ro[2] = x2;
1656 return 155;
1657 }
1658 x1 = XEXP (x0, 0);
1659 goto L1147;
1660
1661 L763:
1662 x2 = XEXP (x1, 0);
1663 if (general_operand (x2, SImode))
1664 {
1665 ro[1] = x2;
1666 goto L764;
1667 }
1668 x1 = XEXP (x0, 0);
1669 goto L1147;
1670
1671 L764:
1672 x2 = XEXP (x1, 1);
1673 if (nonmemory_operand (x2, SImode))
1674 {
1675 ro[2] = x2;
1676 return 158;
1677 }
1678 x1 = XEXP (x0, 0);
1679 goto L1147;
1680
1681 L778:
1682 x2 = XEXP (x1, 0);
1683 if (general_operand (x2, SImode))
1684 {
1685 ro[1] = x2;
1686 goto L779;
1687 }
1688 x1 = XEXP (x0, 0);
1689 goto L1147;
1690
1691 L779:
1692 x2 = XEXP (x1, 1);
1693 if (nonmemory_operand (x2, SImode))
1694 {
1695 ro[2] = x2;
1696 return 161;
1697 }
1698 x1 = XEXP (x0, 0);
1699 goto L1147;
1700
1701 L212:
1702 x1 = XEXP (x0, 1);
1703 if (general_operand (x1, HImode))
1704 {
1705 ro[1] = x1;
1706 return 39;
1707 }
1708 x1 = XEXP (x0, 0);
1709 goto L214;
1710
1711 L261:
1712 x1 = XEXP (x0, 1);
1713 switch (GET_MODE (x1))
1714 {
1715 case HImode:
1716 switch (GET_CODE (x1))
1717 {
1718 case ZERO_EXTEND:
1719 goto L262;
1720 case SIGN_EXTEND:
1721 goto L282;
1722 case PLUS:
1723 goto L423;
1724 case MINUS:
1725 goto L446;
1726 case AND:
1727 goto L546;
1728 case IOR:
1729 goto L561;
1730 case XOR:
1731 goto L576;
1732 case NEG:
1733 goto L594;
1734 case NOT:
1735 goto L671;
1736 case ASHIFT:
1737 goto L697;
1738 case ASHIFTRT:
1739 goto L725;
1740 case LSHIFTRT:
1741 goto L753;
1742 case ROTATE:
1743 goto L768;
1744 case ROTATERT:
1745 goto L783;
1746 }
1747 break;
1748 case SImode:
1749 if (GET_CODE (x1) == MULT && 1)
1750 goto L480;
1751 }
1752 if (general_operand (x1, HImode))
1753 {
1754 ro[1] = x1;
1755 return 40;
1756 }
1757 x1 = XEXP (x0, 0);
1758 goto L1147;
1759
1760 L262:
1761 x2 = XEXP (x1, 0);
1762 if (nonimmediate_operand (x2, QImode))
1763 {
1764 ro[1] = x2;
1765 return 53;
1766 }
1767 x1 = XEXP (x0, 0);
1768 goto L1147;
1769
1770 L282:
1771 x2 = XEXP (x1, 0);
1772 if (nonimmediate_operand (x2, QImode))
1773 {
1774 ro[1] = x2;
1775 return 58;
1776 }
1777 x1 = XEXP (x0, 0);
1778 goto L1147;
1779
1780 L423:
1781 x2 = XEXP (x1, 0);
1782 if (general_operand (x2, HImode))
1783 {
1784 ro[1] = x2;
1785 goto L424;
1786 }
1787 x1 = XEXP (x0, 0);
1788 goto L1147;
1789
1790 L424:
1791 x2 = XEXP (x1, 1);
1792 if (general_operand (x2, HImode))
1793 {
1794 ro[2] = x2;
1795 return 83;
1796 }
1797 x1 = XEXP (x0, 0);
1798 goto L1147;
1799
1800 L446:
1801 x2 = XEXP (x1, 0);
1802 if (general_operand (x2, HImode))
1803 {
1804 ro[1] = x2;
1805 goto L447;
1806 }
1807 x1 = XEXP (x0, 0);
1808 goto L1147;
1809
1810 L447:
1811 x2 = XEXP (x1, 1);
1812 if (general_operand (x2, HImode))
1813 {
1814 ro[2] = x2;
1815 return 90;
1816 }
1817 x1 = XEXP (x0, 0);
1818 goto L1147;
1819
1820 L546:
1821 x2 = XEXP (x1, 0);
1822 if (general_operand (x2, HImode))
1823 {
1824 ro[1] = x2;
1825 goto L547;
1826 }
1827 x1 = XEXP (x0, 0);
1828 goto L1147;
1829
1830 L547:
1831 x2 = XEXP (x1, 1);
1832 if (general_operand (x2, HImode))
1833 {
1834 ro[2] = x2;
1835 return 110;
1836 }
1837 x1 = XEXP (x0, 0);
1838 goto L1147;
1839
1840 L561:
1841 x2 = XEXP (x1, 0);
1842 if (general_operand (x2, HImode))
1843 {
1844 ro[1] = x2;
1845 goto L562;
1846 }
1847 x1 = XEXP (x0, 0);
1848 goto L1147;
1849
1850 L562:
1851 x2 = XEXP (x1, 1);
1852 if (general_operand (x2, HImode))
1853 {
1854 ro[2] = x2;
1855 return 113;
1856 }
1857 x1 = XEXP (x0, 0);
1858 goto L1147;
1859
1860 L576:
1861 x2 = XEXP (x1, 0);
1862 if (general_operand (x2, HImode))
1863 {
1864 ro[1] = x2;
1865 goto L577;
1866 }
1867 x1 = XEXP (x0, 0);
1868 goto L1147;
1869
1870 L577:
1871 x2 = XEXP (x1, 1);
1872 if (general_operand (x2, HImode))
1873 {
1874 ro[2] = x2;
1875 return 116;
1876 }
1877 x1 = XEXP (x0, 0);
1878 goto L1147;
1879
1880 L594:
1881 x2 = XEXP (x1, 0);
1882 if (general_operand (x2, HImode))
1883 {
1884 ro[1] = x2;
1885 return 120;
1886 }
1887 x1 = XEXP (x0, 0);
1888 goto L1147;
1889
1890 L671:
1891 x2 = XEXP (x1, 0);
1892 if (general_operand (x2, HImode))
1893 {
1894 ro[1] = x2;
1895 return 138;
1896 }
1897 x1 = XEXP (x0, 0);
1898 goto L1147;
1899
1900 L697:
1901 x2 = XEXP (x1, 0);
1902 if (general_operand (x2, HImode))
1903 {
1904 ro[1] = x2;
1905 goto L698;
1906 }
1907 x1 = XEXP (x0, 0);
1908 goto L1147;
1909
1910 L698:
1911 x2 = XEXP (x1, 1);
1912 if (nonmemory_operand (x2, HImode))
1913 {
1914 ro[2] = x2;
1915 return 144;
1916 }
1917 x1 = XEXP (x0, 0);
1918 goto L1147;
1919
1920 L725:
1921 x2 = XEXP (x1, 0);
1922 if (general_operand (x2, HImode))
1923 {
1924 ro[1] = x2;
1925 goto L726;
1926 }
1927 x1 = XEXP (x0, 0);
1928 goto L1147;
1929
1930 L726:
1931 x2 = XEXP (x1, 1);
1932 if (nonmemory_operand (x2, HImode))
1933 {
1934 ro[2] = x2;
1935 return 150;
1936 }
1937 x1 = XEXP (x0, 0);
1938 goto L1147;
1939
1940 L753:
1941 x2 = XEXP (x1, 0);
1942 if (general_operand (x2, HImode))
1943 {
1944 ro[1] = x2;
1945 goto L754;
1946 }
1947 x1 = XEXP (x0, 0);
1948 goto L1147;
1949
1950 L754:
1951 x2 = XEXP (x1, 1);
1952 if (nonmemory_operand (x2, HImode))
1953 {
1954 ro[2] = x2;
1955 return 156;
1956 }
1957 x1 = XEXP (x0, 0);
1958 goto L1147;
1959
1960 L768:
1961 x2 = XEXP (x1, 0);
1962 if (general_operand (x2, HImode))
1963 {
1964 ro[1] = x2;
1965 goto L769;
1966 }
1967 x1 = XEXP (x0, 0);
1968 goto L1147;
1969
1970 L769:
1971 x2 = XEXP (x1, 1);
1972 if (nonmemory_operand (x2, HImode))
1973 {
1974 ro[2] = x2;
1975 return 159;
1976 }
1977 x1 = XEXP (x0, 0);
1978 goto L1147;
1979
1980 L783:
1981 x2 = XEXP (x1, 0);
1982 if (general_operand (x2, HImode))
1983 {
1984 ro[1] = x2;
1985 goto L784;
1986 }
1987 x1 = XEXP (x0, 0);
1988 goto L1147;
1989
1990 L784:
1991 x2 = XEXP (x1, 1);
1992 if (nonmemory_operand (x2, HImode))
1993 {
1994 ro[2] = x2;
1995 return 162;
1996 }
1997 x1 = XEXP (x0, 0);
1998 goto L1147;
1999
2000 L480:
2001 x2 = XEXP (x1, 0);
2002 if (GET_MODE (x2) == HImode && GET_CODE (x2) == ZERO_EXTEND && 1)
2003 goto L481;
2004 if (general_operand (x2, HImode))
2005 {
2006 ro[1] = x2;
2007 goto L457;
2008 }
2009 x1 = XEXP (x0, 0);
2010 goto L1147;
2011
2012 L481:
2013 x3 = XEXP (x2, 0);
2014 if (nonimmediate_operand (x3, QImode))
2015 {
2016 ro[1] = x3;
2017 goto L482;
2018 }
2019 x1 = XEXP (x0, 0);
2020 goto L1147;
2021
2022 L482:
2023 x2 = XEXP (x1, 1);
2024 if (GET_MODE (x2) == HImode && GET_CODE (x2) == ZERO_EXTEND && 1)
2025 goto L483;
2026 x1 = XEXP (x0, 0);
2027 goto L1147;
2028
2029 L483:
2030 x3 = XEXP (x2, 0);
2031 if (nonimmediate_operand (x3, QImode))
2032 {
2033 ro[2] = x3;
2034 return 98;
2035 }
2036 x1 = XEXP (x0, 0);
2037 goto L1147;
2038
2039 L457:
2040 x2 = XEXP (x1, 1);
2041 if (general_operand (x2, HImode))
2042 goto L463;
2043 x1 = XEXP (x0, 0);
2044 goto L1147;
2045
2046 L463:
2047 ro[2] = x2;
2048 if (GET_CODE (operands[2]) == CONST_INT && INTVAL (operands[2]) == 0x80)
2049 return 94;
2050 L464:
2051 ro[2] = x2;
2052 return 95;
2053
2054 L222:
2055 x1 = XEXP (x0, 1);
2056 if (general_operand (x1, QImode))
2057 {
2058 ro[1] = x1;
2059 return 42;
2060 }
2061 x1 = XEXP (x0, 0);
2062 goto L224;
2063
2064 L427:
2065 x1 = XEXP (x0, 1);
2066 switch (GET_MODE (x1))
2067 {
2068 case QImode:
2069 switch (GET_CODE (x1))
2070 {
2071 case PLUS:
2072 goto L428;
2073 case MINUS:
2074 goto L451;
2075 case DIV:
2076 goto L487;
2077 case UDIV:
2078 goto L492;
2079 case AND:
2080 goto L551;
2081 case IOR:
2082 goto L566;
2083 case XOR:
2084 goto L581;
2085 case NEG:
2086 goto L598;
2087 case NOT:
2088 goto L675;
2089 case ASHIFT:
2090 goto L702;
2091 case ASHIFTRT:
2092 goto L730;
2093 case LSHIFTRT:
2094 goto L758;
2095 case ROTATE:
2096 goto L773;
2097 case ROTATERT:
2098 goto L788;
2099 }
2100 }
2101 if (general_operand (x1, QImode))
2102 {
2103 ro[1] = x1;
2104 return 43;
2105 }
2106 x1 = XEXP (x0, 0);
2107 goto L829;
2108
2109 L428:
2110 x2 = XEXP (x1, 0);
2111 if (general_operand (x2, QImode))
2112 {
2113 ro[1] = x2;
2114 goto L429;
2115 }
2116 x1 = XEXP (x0, 0);
2117 goto L829;
2118
2119 L429:
2120 x2 = XEXP (x1, 1);
2121 if (general_operand (x2, QImode))
2122 {
2123 ro[2] = x2;
2124 return 84;
2125 }
2126 x1 = XEXP (x0, 0);
2127 goto L829;
2128
2129 L451:
2130 x2 = XEXP (x1, 0);
2131 if (general_operand (x2, QImode))
2132 {
2133 ro[1] = x2;
2134 goto L452;
2135 }
2136 x1 = XEXP (x0, 0);
2137 goto L829;
2138
2139 L452:
2140 x2 = XEXP (x1, 1);
2141 if (general_operand (x2, QImode))
2142 {
2143 ro[2] = x2;
2144 return 91;
2145 }
2146 x1 = XEXP (x0, 0);
2147 goto L829;
2148
2149 L487:
2150 x2 = XEXP (x1, 0);
2151 if (general_operand (x2, HImode))
2152 {
2153 ro[1] = x2;
2154 goto L488;
2155 }
2156 x1 = XEXP (x0, 0);
2157 goto L829;
2158
2159 L488:
2160 x2 = XEXP (x1, 1);
2161 if (general_operand (x2, QImode))
2162 {
2163 ro[2] = x2;
2164 return 101;
2165 }
2166 x1 = XEXP (x0, 0);
2167 goto L829;
2168
2169 L492:
2170 x2 = XEXP (x1, 0);
2171 if (general_operand (x2, HImode))
2172 {
2173 ro[1] = x2;
2174 goto L493;
2175 }
2176 x1 = XEXP (x0, 0);
2177 goto L829;
2178
2179 L493:
2180 x2 = XEXP (x1, 1);
2181 if (general_operand (x2, QImode))
2182 {
2183 ro[2] = x2;
2184 return 102;
2185 }
2186 x1 = XEXP (x0, 0);
2187 goto L829;
2188
2189 L551:
2190 x2 = XEXP (x1, 0);
2191 if (general_operand (x2, QImode))
2192 {
2193 ro[1] = x2;
2194 goto L552;
2195 }
2196 x1 = XEXP (x0, 0);
2197 goto L829;
2198
2199 L552:
2200 x2 = XEXP (x1, 1);
2201 if (general_operand (x2, QImode))
2202 {
2203 ro[2] = x2;
2204 return 111;
2205 }
2206 x1 = XEXP (x0, 0);
2207 goto L829;
2208
2209 L566:
2210 x2 = XEXP (x1, 0);
2211 if (general_operand (x2, QImode))
2212 {
2213 ro[1] = x2;
2214 goto L567;
2215 }
2216 x1 = XEXP (x0, 0);
2217 goto L829;
2218
2219 L567:
2220 x2 = XEXP (x1, 1);
2221 if (general_operand (x2, QImode))
2222 {
2223 ro[2] = x2;
2224 return 114;
2225 }
2226 x1 = XEXP (x0, 0);
2227 goto L829;
2228
2229 L581:
2230 x2 = XEXP (x1, 0);
2231 if (general_operand (x2, QImode))
2232 {
2233 ro[1] = x2;
2234 goto L582;
2235 }
2236 x1 = XEXP (x0, 0);
2237 goto L829;
2238
2239 L582:
2240 x2 = XEXP (x1, 1);
2241 if (general_operand (x2, QImode))
2242 {
2243 ro[2] = x2;
2244 return 117;
2245 }
2246 x1 = XEXP (x0, 0);
2247 goto L829;
2248
2249 L598:
2250 x2 = XEXP (x1, 0);
2251 if (general_operand (x2, QImode))
2252 {
2253 ro[1] = x2;
2254 return 121;
2255 }
2256 x1 = XEXP (x0, 0);
2257 goto L829;
2258
2259 L675:
2260 x2 = XEXP (x1, 0);
2261 if (general_operand (x2, QImode))
2262 {
2263 ro[1] = x2;
2264 return 139;
2265 }
2266 x1 = XEXP (x0, 0);
2267 goto L829;
2268
2269 L702:
2270 x2 = XEXP (x1, 0);
2271 if (general_operand (x2, QImode))
2272 {
2273 ro[1] = x2;
2274 goto L703;
2275 }
2276 x1 = XEXP (x0, 0);
2277 goto L829;
2278
2279 L703:
2280 x2 = XEXP (x1, 1);
2281 if (nonmemory_operand (x2, QImode))
2282 {
2283 ro[2] = x2;
2284 return 145;
2285 }
2286 x1 = XEXP (x0, 0);
2287 goto L829;
2288
2289 L730:
2290 x2 = XEXP (x1, 0);
2291 if (general_operand (x2, QImode))
2292 {
2293 ro[1] = x2;
2294 goto L731;
2295 }
2296 x1 = XEXP (x0, 0);
2297 goto L829;
2298
2299 L731:
2300 x2 = XEXP (x1, 1);
2301 if (nonmemory_operand (x2, QImode))
2302 {
2303 ro[2] = x2;
2304 return 151;
2305 }
2306 x1 = XEXP (x0, 0);
2307 goto L829;
2308
2309 L758:
2310 x2 = XEXP (x1, 0);
2311 if (general_operand (x2, QImode))
2312 {
2313 ro[1] = x2;
2314 goto L759;
2315 }
2316 x1 = XEXP (x0, 0);
2317 goto L829;
2318
2319 L759:
2320 x2 = XEXP (x1, 1);
2321 if (nonmemory_operand (x2, QImode))
2322 {
2323 ro[2] = x2;
2324 return 157;
2325 }
2326 x1 = XEXP (x0, 0);
2327 goto L829;
2328
2329 L773:
2330 x2 = XEXP (x1, 0);
2331 if (general_operand (x2, QImode))
2332 {
2333 ro[1] = x2;
2334 goto L774;
2335 }
2336 x1 = XEXP (x0, 0);
2337 goto L829;
2338
2339 L774:
2340 x2 = XEXP (x1, 1);
2341 if (nonmemory_operand (x2, QImode))
2342 {
2343 ro[2] = x2;
2344 return 160;
2345 }
2346 x1 = XEXP (x0, 0);
2347 goto L829;
2348
2349 L788:
2350 x2 = XEXP (x1, 0);
2351 if (general_operand (x2, QImode))
2352 {
2353 ro[1] = x2;
2354 goto L789;
2355 }
2356 x1 = XEXP (x0, 0);
2357 goto L829;
2358
2359 L789:
2360 x2 = XEXP (x1, 1);
2361 if (nonmemory_operand (x2, QImode))
2362 {
2363 ro[2] = x2;
2364 return 163;
2365 }
2366 x1 = XEXP (x0, 0);
2367 goto L829;
2368
2369 L830:
2370 x1 = XEXP (x0, 1);
2371 if (GET_MODE (x1) != QImode)
2372 {
2373 x1 = XEXP (x0, 0);
2374 goto L1147;
2375 }
2376 switch (GET_CODE (x1))
2377 {
2378 case EQ:
2379 goto L831;
2380 case NE:
2381 goto L836;
2382 case GT:
2383 goto L841;
2384 case GTU:
2385 goto L846;
2386 case LT:
2387 goto L851;
2388 case LTU:
2389 goto L856;
2390 case GE:
2391 goto L861;
2392 case GEU:
2393 goto L866;
2394 case LE:
2395 goto L871;
2396 case LEU:
2397 goto L876;
2398 }
2399 x1 = XEXP (x0, 0);
2400 goto L1147;
2401
2402 L831:
2403 x2 = XEXP (x1, 0);
2404 if (GET_CODE (x2) == CC0 && 1)
2405 goto L832;
2406 x1 = XEXP (x0, 0);
2407 goto L1147;
2408
2409 L832:
2410 x2 = XEXP (x1, 1);
2411 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2412 return 171;
2413 x1 = XEXP (x0, 0);
2414 goto L1147;
2415
2416 L836:
2417 x2 = XEXP (x1, 0);
2418 if (GET_CODE (x2) == CC0 && 1)
2419 goto L837;
2420 x1 = XEXP (x0, 0);
2421 goto L1147;
2422
2423 L837:
2424 x2 = XEXP (x1, 1);
2425 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2426 return 173;
2427 x1 = XEXP (x0, 0);
2428 goto L1147;
2429
2430 L841:
2431 x2 = XEXP (x1, 0);
2432 if (GET_CODE (x2) == CC0 && 1)
2433 goto L842;
2434 x1 = XEXP (x0, 0);
2435 goto L1147;
2436
2437 L842:
2438 x2 = XEXP (x1, 1);
2439 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2440 return 175;
2441 x1 = XEXP (x0, 0);
2442 goto L1147;
2443
2444 L846:
2445 x2 = XEXP (x1, 0);
2446 if (GET_CODE (x2) == CC0 && 1)
2447 goto L847;
2448 x1 = XEXP (x0, 0);
2449 goto L1147;
2450
2451 L847:
2452 x2 = XEXP (x1, 1);
2453 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2454 return 177;
2455 x1 = XEXP (x0, 0);
2456 goto L1147;
2457
2458 L851:
2459 x2 = XEXP (x1, 0);
2460 if (GET_CODE (x2) == CC0 && 1)
2461 goto L852;
2462 x1 = XEXP (x0, 0);
2463 goto L1147;
2464
2465 L852:
2466 x2 = XEXP (x1, 1);
2467 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2468 return 179;
2469 x1 = XEXP (x0, 0);
2470 goto L1147;
2471
2472 L856:
2473 x2 = XEXP (x1, 0);
2474 if (GET_CODE (x2) == CC0 && 1)
2475 goto L857;
2476 x1 = XEXP (x0, 0);
2477 goto L1147;
2478
2479 L857:
2480 x2 = XEXP (x1, 1);
2481 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2482 return 181;
2483 x1 = XEXP (x0, 0);
2484 goto L1147;
2485
2486 L861:
2487 x2 = XEXP (x1, 0);
2488 if (GET_CODE (x2) == CC0 && 1)
2489 goto L862;
2490 x1 = XEXP (x0, 0);
2491 goto L1147;
2492
2493 L862:
2494 x2 = XEXP (x1, 1);
2495 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2496 return 183;
2497 x1 = XEXP (x0, 0);
2498 goto L1147;
2499
2500 L866:
2501 x2 = XEXP (x1, 0);
2502 if (GET_CODE (x2) == CC0 && 1)
2503 goto L867;
2504 x1 = XEXP (x0, 0);
2505 goto L1147;
2506
2507 L867:
2508 x2 = XEXP (x1, 1);
2509 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2510 return 185;
2511 x1 = XEXP (x0, 0);
2512 goto L1147;
2513
2514 L871:
2515 x2 = XEXP (x1, 0);
2516 if (GET_CODE (x2) == CC0 && 1)
2517 goto L872;
2518 x1 = XEXP (x0, 0);
2519 goto L1147;
2520
2521 L872:
2522 x2 = XEXP (x1, 1);
2523 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2524 return 187;
2525 x1 = XEXP (x0, 0);
2526 goto L1147;
2527
2528 L876:
2529 x2 = XEXP (x1, 0);
2530 if (GET_CODE (x2) == CC0 && 1)
2531 goto L877;
2532 x1 = XEXP (x0, 0);
2533 goto L1147;
2534
2535 L877:
2536 x2 = XEXP (x1, 1);
2537 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
2538 return 189;
2539 x1 = XEXP (x0, 0);
2540 goto L1147;
2541
2542 L232:
2543 x1 = XEXP (x0, 1);
2544 if (general_operand (x1, SFmode))
2545 {
2546 ro[1] = x1;
2547 return 45;
2548 }
2549 x1 = XEXP (x0, 0);
2550 goto L234;
2551
2552 L235:
2553 x1 = XEXP (x0, 1);
2554 if (general_operand (x1, SFmode))
2555 {
2556 ro[1] = x1;
2557 return 46;
2558 }
2559 x1 = XEXP (x0, 0);
2560 goto L399;
2561
2562 L400:
2563 x1 = XEXP (x0, 1);
2564 if (GET_MODE (x1) != SFmode)
2565 {
2566 x1 = XEXP (x0, 0);
2567 goto L1147;
2568 }
2569 switch (GET_CODE (x1))
2570 {
2571 case FLOAT:
2572 goto L401;
2573 case NEG:
2574 goto L602;
2575 case ABS:
2576 goto L615;
2577 case SQRT:
2578 goto L628;
2579 case UNSPEC:
2580 if (XINT (x1, 1) == 1 && XVECLEN (x1, 0) == 1 && 1)
2581 goto L645;
2582 if (XINT (x1, 1) == 2 && XVECLEN (x1, 0) == 1 && 1)
2583 goto L658;
2584 }
2585 x1 = XEXP (x0, 0);
2586 goto L1147;
2587
2588 L401:
2589 x2 = XEXP (x1, 0);
2590 switch (GET_MODE (x2))
2591 {
2592 case DImode:
2593 if (nonimmediate_operand (x2, DImode))
2594 {
2595 ro[1] = x2;
2596 if (TARGET_80387)
2597 return 78;
2598 }
2599 break;
2600 case SImode:
2601 if (nonimmediate_operand (x2, SImode))
2602 {
2603 ro[1] = x2;
2604 if (TARGET_80387)
2605 return 80;
2606 }
2607 }
2608 x1 = XEXP (x0, 0);
2609 goto L1147;
2610
2611 L602:
2612 x2 = XEXP (x1, 0);
2613 if (general_operand (x2, SFmode))
2614 {
2615 ro[1] = x2;
2616 if (TARGET_80387)
2617 return 122;
2618 }
2619 x1 = XEXP (x0, 0);
2620 goto L1147;
2621
2622 L615:
2623 x2 = XEXP (x1, 0);
2624 if (general_operand (x2, SFmode))
2625 {
2626 ro[1] = x2;
2627 if (TARGET_80387)
2628 return 125;
2629 }
2630 x1 = XEXP (x0, 0);
2631 goto L1147;
2632
2633 L628:
2634 x2 = XEXP (x1, 0);
2635 if (general_operand (x2, SFmode))
2636 {
2637 ro[1] = x2;
2638 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2639 return 128;
2640 }
2641 x1 = XEXP (x0, 0);
2642 goto L1147;
2643
2644 L645:
2645 x2 = XVECEXP (x1, 0, 0);
2646 if (register_operand (x2, SFmode))
2647 {
2648 ro[1] = x2;
2649 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2650 return 132;
2651 }
2652 x1 = XEXP (x0, 0);
2653 goto L1147;
2654
2655 L658:
2656 x2 = XVECEXP (x1, 0, 0);
2657 if (register_operand (x2, SFmode))
2658 {
2659 ro[1] = x2;
2660 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2661 return 135;
2662 }
2663 x1 = XEXP (x0, 0);
2664 goto L1147;
2665
2666 L238:
2667 x1 = XEXP (x0, 1);
2668 if (general_operand (x1, DFmode))
2669 {
2670 ro[1] = x1;
2671 return 47;
2672 }
2673 x1 = XEXP (x0, 0);
2674 goto L247;
2675
2676 L289:
2677 x1 = XEXP (x0, 1);
2678 if (GET_MODE (x1) == DFmode && GET_CODE (x1) == FLOAT_EXTEND && 1)
2679 goto L290;
2680 if (general_operand (x1, DFmode))
2681 {
2682 ro[1] = x1;
2683 return 49;
2684 }
2685 x1 = XEXP (x0, 0);
2686 goto L395;
2687
2688 L290:
2689 x2 = XEXP (x1, 0);
2690 if (general_operand (x2, SFmode))
2691 {
2692 ro[1] = x2;
2693 if (TARGET_80387)
2694 return 60;
2695 }
2696 x1 = XEXP (x0, 0);
2697 goto L395;
2698
2699 L396:
2700 x1 = XEXP (x0, 1);
2701 if (GET_MODE (x1) != DFmode)
2702 {
2703 x1 = XEXP (x0, 0);
2704 goto L1147;
2705 }
2706 switch (GET_CODE (x1))
2707 {
2708 case FLOAT:
2709 goto L397;
2710 case NEG:
2711 goto L610;
2712 case ABS:
2713 goto L623;
2714 case SQRT:
2715 goto L636;
2716 case UNSPEC:
2717 if (XINT (x1, 1) == 1 && XVECLEN (x1, 0) == 1 && 1)
2718 goto L649;
2719 if (XINT (x1, 1) == 2 && XVECLEN (x1, 0) == 1 && 1)
2720 goto L662;
2721 }
2722 x1 = XEXP (x0, 0);
2723 goto L1147;
2724
2725 L397:
2726 x2 = XEXP (x1, 0);
2727 switch (GET_MODE (x2))
2728 {
2729 case DImode:
2730 if (nonimmediate_operand (x2, DImode))
2731 {
2732 ro[1] = x2;
2733 if (TARGET_80387)
2734 return 77;
2735 }
2736 break;
2737 case SImode:
2738 if (nonimmediate_operand (x2, SImode))
2739 {
2740 ro[1] = x2;
2741 if (TARGET_80387)
2742 return 79;
2743 }
2744 }
2745 x1 = XEXP (x0, 0);
2746 goto L1147;
2747
2748 L610:
2749 x2 = XEXP (x1, 0);
2750 if (GET_MODE (x2) == DFmode && GET_CODE (x2) == FLOAT_EXTEND && 1)
2751 goto L611;
2752 if (general_operand (x2, DFmode))
2753 {
2754 ro[1] = x2;
2755 if (TARGET_80387)
2756 return 123;
2757 }
2758 x1 = XEXP (x0, 0);
2759 goto L1147;
2760
2761 L611:
2762 x3 = XEXP (x2, 0);
2763 if (general_operand (x3, SFmode))
2764 {
2765 ro[1] = x3;
2766 if (TARGET_80387)
2767 return 124;
2768 }
2769 x1 = XEXP (x0, 0);
2770 goto L1147;
2771
2772 L623:
2773 x2 = XEXP (x1, 0);
2774 if (GET_MODE (x2) == DFmode && GET_CODE (x2) == FLOAT_EXTEND && 1)
2775 goto L624;
2776 if (general_operand (x2, DFmode))
2777 {
2778 ro[1] = x2;
2779 if (TARGET_80387)
2780 return 126;
2781 }
2782 x1 = XEXP (x0, 0);
2783 goto L1147;
2784
2785 L624:
2786 x3 = XEXP (x2, 0);
2787 if (general_operand (x3, SFmode))
2788 {
2789 ro[1] = x3;
2790 if (TARGET_80387)
2791 return 127;
2792 }
2793 x1 = XEXP (x0, 0);
2794 goto L1147;
2795
2796 L636:
2797 x2 = XEXP (x1, 0);
2798 if (GET_MODE (x2) == DFmode && GET_CODE (x2) == FLOAT_EXTEND && 1)
2799 goto L637;
2800 if (general_operand (x2, DFmode))
2801 {
2802 ro[1] = x2;
2803 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2804 return 129;
2805 }
2806 x1 = XEXP (x0, 0);
2807 goto L1147;
2808
2809 L637:
2810 x3 = XEXP (x2, 0);
2811 if (general_operand (x3, SFmode))
2812 {
2813 ro[1] = x3;
2814 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2815 return 130;
2816 }
2817 x1 = XEXP (x0, 0);
2818 goto L1147;
2819
2820 L649:
2821 x2 = XVECEXP (x1, 0, 0);
2822 if (GET_MODE (x2) != DFmode)
2823 {
2824 x1 = XEXP (x0, 0);
2825 goto L1147;
2826 }
2827 if (GET_CODE (x2) == FLOAT_EXTEND && 1)
2828 goto L650;
2829 if (register_operand (x2, DFmode))
2830 {
2831 ro[1] = x2;
2832 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2833 return 131;
2834 }
2835 x1 = XEXP (x0, 0);
2836 goto L1147;
2837
2838 L650:
2839 x3 = XEXP (x2, 0);
2840 if (register_operand (x3, SFmode))
2841 {
2842 ro[1] = x3;
2843 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2844 return 133;
2845 }
2846 x1 = XEXP (x0, 0);
2847 goto L1147;
2848
2849 L662:
2850 x2 = XVECEXP (x1, 0, 0);
2851 if (GET_MODE (x2) != DFmode)
2852 {
2853 x1 = XEXP (x0, 0);
2854 goto L1147;
2855 }
2856 if (GET_CODE (x2) == FLOAT_EXTEND && 1)
2857 goto L663;
2858 if (register_operand (x2, DFmode))
2859 {
2860 ro[1] = x2;
2861 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2862 return 134;
2863 }
2864 x1 = XEXP (x0, 0);
2865 goto L1147;
2866
2867 L663:
2868 x3 = XEXP (x2, 0);
2869 if (register_operand (x3, SFmode))
2870 {
2871 ro[1] = x3;
2872 if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
2873 return 136;
2874 }
2875 x1 = XEXP (x0, 0);
2876 goto L1147;
2877
2878 L251:
2879 x1 = XEXP (x0, 1);
2880 if (general_operand (x1, DImode))
2881 {
2882 ro[1] = x1;
2883 return 50;
2884 }
2885 x1 = XEXP (x0, 0);
2886 goto L253;
2887
2888 L412:
2889 x1 = XEXP (x0, 1);
2890 switch (GET_MODE (x1))
2891 {
2892 case DImode:
2893 switch (GET_CODE (x1))
2894 {
2895 case PLUS:
2896 goto L413;
2897 case MINUS:
2898 goto L436;
2899 case NEG:
2900 goto L586;
2901 }
2902 }
2903 if (general_operand (x1, DImode))
2904 {
2905 ro[1] = x1;
2906 return 51;
2907 }
2908 x1 = XEXP (x0, 0);
2909 goto L268;
2910
2911 L413:
2912 x2 = XEXP (x1, 0);
2913 if (general_operand (x2, DImode))
2914 {
2915 ro[1] = x2;
2916 goto L414;
2917 }
2918 x1 = XEXP (x0, 0);
2919 goto L268;
2920
2921 L414:
2922 x2 = XEXP (x1, 1);
2923 if (general_operand (x2, DImode))
2924 {
2925 ro[2] = x2;
2926 return 81;
2927 }
2928 x1 = XEXP (x0, 0);
2929 goto L268;
2930
2931 L436:
2932 x2 = XEXP (x1, 0);
2933 if (general_operand (x2, DImode))
2934 {
2935 ro[1] = x2;
2936 goto L437;
2937 }
2938 x1 = XEXP (x0, 0);
2939 goto L268;
2940
2941 L437:
2942 x2 = XEXP (x1, 1);
2943 if (general_operand (x2, DImode))
2944 {
2945 ro[2] = x2;
2946 return 88;
2947 }
2948 x1 = XEXP (x0, 0);
2949 goto L268;
2950
2951 L586:
2952 x2 = XEXP (x1, 0);
2953 if (general_operand (x2, DImode))
2954 {
2955 ro[1] = x2;
2956 return 118;
2957 }
2958 x1 = XEXP (x0, 0);
2959 goto L268;
2960
2961 L269:
2962 x1 = XEXP (x0, 1);
2963 if (GET_MODE (x1) != DImode)
2964 {
2965 x1 = XEXP (x0, 0);
2966 goto L1147;
2967 }
2968 switch (GET_CODE (x1))
2969 {
2970 case ZERO_EXTEND:
2971 goto L270;
2972 case SIGN_EXTEND:
2973 goto L274;
2974 case ASHIFT:
2975 goto L679;
2976 case ASHIFTRT:
2977 goto L707;
2978 case LSHIFTRT:
2979 goto L735;
2980 }
2981 x1 = XEXP (x0, 0);
2982 goto L1147;
2983
2984 L270:
2985 x2 = XEXP (x1, 0);
2986 if (register_operand (x2, SImode))
2987 {
2988 ro[1] = x2;
2989 return 55;
2990 }
2991 x1 = XEXP (x0, 0);
2992 goto L1147;
2993
2994 L274:
2995 x2 = XEXP (x1, 0);
2996 if (register_operand (x2, SImode))
2997 {
2998 ro[1] = x2;
2999 return 56;
3000 }
3001 x1 = XEXP (x0, 0);
3002 goto L1147;
3003
3004 L679:
3005 x2 = XEXP (x1, 0);
3006 if (register_operand (x2, DImode))
3007 {
3008 ro[1] = x2;
3009 goto L680;
3010 }
3011 x1 = XEXP (x0, 0);
3012 goto L1147;
3013
3014 L680:
3015 x2 = XEXP (x1, 1);
3016 if (GET_CODE (x2) == CONST_INT && 1)
3017 {
3018 ro[2] = x2;
3019 return 141;
3020 }
3021 x1 = XEXP (x0, 0);
3022 goto L1147;
3023
3024 L707:
3025 x2 = XEXP (x1, 0);
3026 if (register_operand (x2, DImode))
3027 {
3028 ro[1] = x2;
3029 goto L708;
3030 }
3031 x1 = XEXP (x0, 0);
3032 goto L1147;
3033
3034 L708:
3035 x2 = XEXP (x1, 1);
3036 if (GET_CODE (x2) == CONST_INT && 1)
3037 {
3038 ro[2] = x2;
3039 return 147;
3040 }
3041 x1 = XEXP (x0, 0);
3042 goto L1147;
3043
3044 L735:
3045 x2 = XEXP (x1, 0);
3046 if (register_operand (x2, DImode))
3047 {
3048 ro[1] = x2;
3049 goto L736;
3050 }
3051 x1 = XEXP (x0, 0);
3052 goto L1147;
3053
3054 L736:
3055 x2 = XEXP (x1, 1);
3056 if (GET_CODE (x2) == CONST_INT && 1)
3057 {
3058 ro[2] = x2;
3059 return 153;
3060 }
3061 x1 = XEXP (x0, 0);
3062 goto L1147;
3063 L2:
3064 tem = recog_1 (x0, insn, pnum_clobbers);
3065 if (tem >= 0) return tem;
3066 x1 = XEXP (x0, 0);
3067 goto L1147;
3068
3069 L218:
3070 x2 = XEXP (x1, 0);
3071 switch (GET_MODE (x2))
3072 {
3073 case HImode:
3074 if (general_operand (x2, HImode))
3075 {
3076 ro[0] = x2;
3077 goto L219;
3078 }
3079 break;
3080 case QImode:
3081 if (general_operand (x2, QImode))
3082 {
3083 ro[0] = x2;
3084 goto L229;
3085 }
3086 }
3087 goto L1147;
3088
3089 L219:
3090 x1 = XEXP (x0, 1);
3091 if (general_operand (x1, HImode))
3092 {
3093 ro[1] = x1;
3094 return 41;
3095 }
3096 x1 = XEXP (x0, 0);
3097 goto L1147;
3098
3099 L229:
3100 x1 = XEXP (x0, 1);
3101 if (general_operand (x1, QImode))
3102 {
3103 ro[1] = x1;
3104 return 44;
3105 }
3106 x1 = XEXP (x0, 0);
3107 goto L1147;
3108
3109 L1081:
3110 x1 = XEXP (x0, 1);
3111 switch (GET_CODE (x1))
3112 {
3113 case MINUS:
3114 if (GET_MODE (x1) == SImode && 1)
3115 goto L1082;
3116 break;
3117 case IF_THEN_ELSE:
3118 goto L881;
3119 case LABEL_REF:
3120 goto L1061;
3121 }
3122 L1064:
3123 if (general_operand (x1, SImode))
3124 {
3125 ro[0] = x1;
3126 return 221;
3127 }
3128 x1 = XEXP (x0, 0);
3129 goto L1147;
3130
3131 L1082:
3132 x2 = XEXP (x1, 0);
3133 if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 3 && 1)
3134 goto L1083;
3135 x1 = XEXP (x0, 0);
3136 goto L1147;
3137
3138 L1083:
3139 x2 = XEXP (x1, 1);
3140 if (GET_MODE (x2) == SImode && GET_CODE (x2) == MEM && 1)
3141 goto L1084;
3142 x1 = XEXP (x0, 0);
3143 goto L1147;
3144
3145 L1084:
3146 x3 = XEXP (x2, 0);
3147 if (GET_MODE (x3) == SImode && GET_CODE (x3) == PLUS && 1)
3148 goto L1085;
3149 x1 = XEXP (x0, 0);
3150 goto L1147;
3151
3152 L1085:
3153 x4 = XEXP (x3, 0);
3154 if (GET_MODE (x4) == SImode && GET_CODE (x4) == MULT && 1)
3155 goto L1086;
3156 x1 = XEXP (x0, 0);
3157 goto L1147;
3158
3159 L1086:
3160 x5 = XEXP (x4, 0);
3161 if (register_operand (x5, SImode))
3162 {
3163 ro[0] = x5;
3164 goto L1087;
3165 }
3166 x1 = XEXP (x0, 0);
3167 goto L1147;
3168
3169 L1087:
3170 x5 = XEXP (x4, 1);
3171 if (GET_CODE (x5) == CONST_INT && XWINT (x5, 0) == 4 && 1)
3172 goto L1088;
3173 x1 = XEXP (x0, 0);
3174 goto L1147;
3175
3176 L1088:
3177 x4 = XEXP (x3, 1);
3178 if (GET_CODE (x4) == LABEL_REF && 1)
3179 goto L1089;
3180 x1 = XEXP (x0, 0);
3181 goto L1147;
3182
3183 L1089:
3184 x5 = XEXP (x4, 0);
3185 if (pnum_clobbers != 0 && 1)
3186 {
3187 ro[1] = x5;
3188 *pnum_clobbers = 1;
3189 return 223;
3190 }
3191 x1 = XEXP (x0, 0);
3192 goto L1147;
3193 L881:
3194 tem = recog_2 (x0, insn, pnum_clobbers);
3195 if (tem >= 0) return tem;
3196 x1 = XEXP (x0, 0);
3197 goto L1147;
3198
3199 L1061:
3200 x2 = XEXP (x1, 0);
3201 ro[0] = x2;
3202 return 220;
3203
3204 L1148:
3205 x1 = XEXP (x0, 1);
3206 if (GET_CODE (x1) == CALL && 1)
3207 goto L1149;
3208 x1 = XEXP (x0, 0);
3209 goto L1227;
3210
3211 L1149:
3212 x2 = XEXP (x1, 0);
3213 if (call_insn_operand (x2, QImode))
3214 {
3215 ro[1] = x2;
3216 goto L1150;
3217 }
3218 L1154:
3219 if (GET_MODE (x2) == QImode && GET_CODE (x2) == MEM && 1)
3220 goto L1155;
3221 x1 = XEXP (x0, 0);
3222 goto L1227;
3223
3224 L1150:
3225 x2 = XEXP (x1, 1);
3226 if (general_operand (x2, SImode))
3227 {
3228 ro[2] = x2;
3229 return 235;
3230 }
3231 x2 = XEXP (x1, 0);
3232 goto L1154;
3233
3234 L1155:
3235 x3 = XEXP (x2, 0);
3236 if (symbolic_operand (x3, SImode))
3237 {
3238 ro[1] = x3;
3239 goto L1156;
3240 }
3241 x1 = XEXP (x0, 0);
3242 goto L1227;
3243
3244 L1156:
3245 x2 = XEXP (x1, 1);
3246 if (general_operand (x2, SImode))
3247 {
3248 ro[2] = x2;
3249 if (!HALF_PIC_P ())
3250 return 236;
3251 }
3252 x1 = XEXP (x0, 0);
3253 goto L1227;
3254
3255 L1228:
3256 x1 = XEXP (x0, 1);
3257 if (GET_MODE (x1) == SImode && GET_CODE (x1) == PLUS && 1)
3258 goto L1229;
3259 goto ret0;
3260
3261 L1229:
3262 x2 = XEXP (x1, 0);
3263 if (GET_MODE (x2) == SImode && GET_CODE (x2) == FFS && 1)
3264 goto L1230;
3265 goto ret0;
3266
3267 L1230:
3268 x3 = XEXP (x2, 0);
3269 if (general_operand (x3, SImode))
3270 {
3271 ro[1] = x3;
3272 goto L1231;
3273 }
3274 goto ret0;
3275
3276 L1231:
3277 x2 = XEXP (x1, 1);
3278 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == -1 && 1)
3279 return 250;
3280 goto ret0;
3281
3282 L1234:
3283 x1 = XEXP (x0, 1);
3284 if (GET_MODE (x1) == HImode && GET_CODE (x1) == PLUS && 1)
3285 goto L1235;
3286 goto ret0;
3287
3288 L1235:
3289 x2 = XEXP (x1, 0);
3290 if (GET_MODE (x2) == HImode && GET_CODE (x2) == FFS && 1)
3291 goto L1236;
3292 goto ret0;
3293
3294 L1236:
3295 x3 = XEXP (x2, 0);
3296 if (general_operand (x3, SImode))
3297 {
3298 ro[1] = x3;
3299 goto L1237;
3300 }
3301 goto ret0;
3302
3303 L1237:
3304 x2 = XEXP (x1, 1);
3305 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == -1 && 1)
3306 return 252;
3307 goto ret0;
3308
3309 L1240:
3310 x1 = XEXP (x0, 1);
3311 if (binary_387_op (x1, DFmode))
3312 {
3313 ro[3] = x1;
3314 goto L1246;
3315 }
3316 goto ret0;
3317
3318 L1246:
3319 x2 = XEXP (x1, 0);
3320 switch (GET_MODE (x2))
3321 {
3322 case DFmode:
3323 switch (GET_CODE (x2))
3324 {
3325 case FLOAT:
3326 goto L1247;
3327 case FLOAT_EXTEND:
3328 goto L1253;
3329 case SUBREG:
3330 case REG:
3331 case MEM:
3332 if (nonimmediate_operand (x2, DFmode))
3333 {
3334 ro[1] = x2;
3335 goto L1242;
3336 }
3337 }
3338 }
3339 L1258:
3340 if (general_operand (x2, DFmode))
3341 {
3342 ro[1] = x2;
3343 goto L1259;
3344 }
3345 goto ret0;
3346
3347 L1247:
3348 x3 = XEXP (x2, 0);
3349 if (general_operand (x3, SImode))
3350 {
3351 ro[1] = x3;
3352 goto L1248;
3353 }
3354 goto ret0;
3355
3356 L1248:
3357 x2 = XEXP (x1, 1);
3358 if (general_operand (x2, DFmode))
3359 {
3360 ro[2] = x2;
3361 if (TARGET_80387)
3362 return 254;
3363 }
3364 goto ret0;
3365
3366 L1253:
3367 x3 = XEXP (x2, 0);
3368 if (general_operand (x3, SFmode))
3369 {
3370 ro[1] = x3;
3371 goto L1254;
3372 }
3373 goto ret0;
3374
3375 L1254:
3376 x2 = XEXP (x1, 1);
3377 if (general_operand (x2, DFmode))
3378 {
3379 ro[2] = x2;
3380 if (TARGET_80387)
3381 return 255;
3382 }
3383 goto ret0;
3384
3385 L1242:
3386 x2 = XEXP (x1, 1);
3387 if (nonimmediate_operand (x2, DFmode))
3388 {
3389 ro[2] = x2;
3390 if (TARGET_80387)
3391 return 253;
3392 }
3393 x2 = XEXP (x1, 0);
3394 goto L1258;
3395
3396 L1259:
3397 x2 = XEXP (x1, 1);
3398 if (GET_MODE (x2) != DFmode)
3399 goto ret0;
3400 switch (GET_CODE (x2))
3401 {
3402 case FLOAT:
3403 goto L1260;
3404 case FLOAT_EXTEND:
3405 goto L1266;
3406 }
3407 goto ret0;
3408
3409 L1260:
3410 x3 = XEXP (x2, 0);
3411 if (general_operand (x3, SImode))
3412 {
3413 ro[2] = x3;
3414 if (TARGET_80387)
3415 return 256;
3416 }
3417 goto ret0;
3418
3419 L1266:
3420 x3 = XEXP (x2, 0);
3421 if (general_operand (x3, SFmode))
3422 {
3423 ro[2] = x3;
3424 if (TARGET_80387)
3425 return 257;
3426 }
3427 goto ret0;
3428
3429 L1269:
3430 x1 = XEXP (x0, 1);
3431 if (binary_387_op (x1, SFmode))
3432 {
3433 ro[3] = x1;
3434 goto L1275;
3435 }
3436 goto ret0;
3437
3438 L1275:
3439 x2 = XEXP (x1, 0);
3440 switch (GET_MODE (x2))
3441 {
3442 case SFmode:
3443 if (GET_CODE (x2) == FLOAT && 1)
3444 goto L1276;
3445 if (nonimmediate_operand (x2, SFmode))
3446 {
3447 ro[1] = x2;
3448 goto L1271;
3449 }
3450 }
3451 L1281:
3452 if (general_operand (x2, SFmode))
3453 {
3454 ro[1] = x2;
3455 goto L1282;
3456 }
3457 goto ret0;
3458
3459 L1276:
3460 x3 = XEXP (x2, 0);
3461 if (general_operand (x3, SImode))
3462 {
3463 ro[1] = x3;
3464 goto L1277;
3465 }
3466 goto ret0;
3467
3468 L1277:
3469 x2 = XEXP (x1, 1);
3470 if (general_operand (x2, SFmode))
3471 {
3472 ro[2] = x2;
3473 if (TARGET_80387)
3474 return 259;
3475 }
3476 goto ret0;
3477
3478 L1271:
3479 x2 = XEXP (x1, 1);
3480 if (nonimmediate_operand (x2, SFmode))
3481 {
3482 ro[2] = x2;
3483 if (TARGET_80387)
3484 return 258;
3485 }
3486 x2 = XEXP (x1, 0);
3487 goto L1281;
3488
3489 L1282:
3490 x2 = XEXP (x1, 1);
3491 if (GET_MODE (x2) == SFmode && GET_CODE (x2) == FLOAT && 1)
3492 goto L1283;
3493 goto ret0;
3494
3495 L1283:
3496 x3 = XEXP (x2, 0);
3497 if (general_operand (x3, SImode))
3498 {
3499 ro[2] = x3;
3500 if (TARGET_80387)
3501 return 260;
3502 }
3503 goto ret0;
3504 ret0: return -1;
3505}
3506
3507int
3508recog_4 (x0, insn, pnum_clobbers)
3509 register rtx x0;
3510 rtx insn;
3511 int *pnum_clobbers;
3512{
3513 register rtx *ro = &recog_operand[0];
3514 register rtx x1, x2, x3, x4, x5, x6;
3515 int tem;
3516
3517 x1 = XVECEXP (x0, 0, 0);
3518 x2 = XEXP (x1, 1);
3519 switch (GET_MODE (x2))
3520 {
3521 case SFmode:
3522 if (register_operand (x2, SFmode))
3523 {
3524 ro[0] = x2;
3525 goto L13;
3526 }
3527 break;
3528 case DFmode:
3529 if (register_operand (x2, DFmode))
3530 {
3531 ro[0] = x2;
3532 goto L22;
3533 }
3534 }
3535 L45:
3536 if (VOIDmode_compare_op (x2, VOIDmode))
3537 {
3538 ro[2] = x2;
3539 goto L74;
3540 }
3541 L118:
3542 if (GET_MODE (x2) == CCFPEQmode && GET_CODE (x2) == COMPARE && 1)
3543 goto L119;
3544 goto ret0;
3545
3546 L13:
3547 x1 = XVECEXP (x0, 0, 1);
3548 if (GET_CODE (x1) == CLOBBER && 1)
3549 goto L14;
3550 x1 = XVECEXP (x0, 0, 0);
3551 x2 = XEXP (x1, 1);
3552 goto L45;
3553
3554 L14:
3555 x2 = XEXP (x1, 0);
3556 if (scratch_operand (x2, HImode))
3557 {
3558 ro[1] = x2;
3559 if (TARGET_80387 && ! TARGET_IEEE_FP)
3560 return 6;
3561 }
3562 x1 = XVECEXP (x0, 0, 0);
3563 x2 = XEXP (x1, 1);
3564 goto L45;
3565
3566 L22:
3567 x1 = XVECEXP (x0, 0, 1);
3568 if (GET_CODE (x1) == CLOBBER && 1)
3569 goto L23;
3570 x1 = XVECEXP (x0, 0, 0);
3571 x2 = XEXP (x1, 1);
3572 goto L45;
3573
3574 L23:
3575 x2 = XEXP (x1, 0);
3576 if (scratch_operand (x2, HImode))
3577 {
3578 ro[1] = x2;
3579 if (TARGET_80387 && ! TARGET_IEEE_FP)
3580 return 8;
3581 }
3582 x1 = XVECEXP (x0, 0, 0);
3583 x2 = XEXP (x1, 1);
3584 goto L45;
3585
3586 L74:
3587 x3 = XEXP (x2, 0);
3588 switch (GET_MODE (x3))
3589 {
3590 case DFmode:
3591 switch (GET_CODE (x3))
3592 {
3593 case FLOAT:
3594 goto L75;
3595 case FLOAT_EXTEND:
3596 goto L105;
3597 case SUBREG:
3598 case REG:
3599 case MEM:
3600 if (nonimmediate_operand (x3, DFmode))
3601 {
3602 ro[0] = x3;
3603 goto L47;
3604 }
3605 }
3606 L59:
3607 if (register_operand (x3, DFmode))
3608 {
3609 ro[0] = x3;
3610 goto L60;
3611 }
3612 break;
3613 case SFmode:
3614 if (GET_CODE (x3) == FLOAT && 1)
3615 goto L161;
3616 if (nonimmediate_operand (x3, SFmode))
3617 {
3618 ro[0] = x3;
3619 goto L133;
3620 }
3621 L145:
3622 if (register_operand (x3, SFmode))
3623 {
3624 ro[0] = x3;
3625 goto L146;
3626 }
3627 }
3628 goto L118;
3629
3630 L75:
3631 x4 = XEXP (x3, 0);
3632 if (nonimmediate_operand (x4, SImode))
3633 {
3634 ro[0] = x4;
3635 goto L76;
3636 }
3637 goto L118;
3638
3639 L76:
3640 x3 = XEXP (x2, 1);
3641 if (register_operand (x3, DFmode))
3642 {
3643 ro[1] = x3;
3644 goto L77;
3645 }
3646 goto L118;
3647
3648 L77:
3649 x1 = XVECEXP (x0, 0, 1);
3650 if (GET_CODE (x1) == CLOBBER && 1)
3651 goto L78;
3652 x1 = XVECEXP (x0, 0, 0);
3653 x2 = XEXP (x1, 1);
3654 goto L118;
3655
3656 L78:
3657 x2 = XEXP (x1, 0);
3658 if (scratch_operand (x2, HImode))
3659 {
3660 ro[3] = x2;
3661 if (TARGET_80387)
3662 return 18;
3663 }
3664 x1 = XVECEXP (x0, 0, 0);
3665 x2 = XEXP (x1, 1);
3666 goto L118;
3667
3668 L105:
3669 x4 = XEXP (x3, 0);
3670 if (nonimmediate_operand (x4, SFmode))
3671 {
3672 ro[0] = x4;
3673 goto L106;
3674 }
3675 goto L118;
3676
3677 L106:
3678 x3 = XEXP (x2, 1);
3679 if (register_operand (x3, DFmode))
3680 {
3681 ro[1] = x3;
3682 goto L107;
3683 }
3684 goto L118;
3685
3686 L107:
3687 x1 = XVECEXP (x0, 0, 1);
3688 if (GET_CODE (x1) == CLOBBER && 1)
3689 goto L108;
3690 x1 = XVECEXP (x0, 0, 0);
3691 x2 = XEXP (x1, 1);
3692 goto L118;
3693
3694 L108:
3695 x2 = XEXP (x1, 0);
3696 if (scratch_operand (x2, HImode))
3697 {
3698 ro[3] = x2;
3699 if (TARGET_80387)
3700 return 20;
3701 }
3702 x1 = XVECEXP (x0, 0, 0);
3703 x2 = XEXP (x1, 1);
3704 goto L118;
3705
3706 L47:
3707 x3 = XEXP (x2, 1);
3708 if (nonimmediate_operand (x3, DFmode))
3709 {
3710 ro[1] = x3;
3711 goto L48;
3712 }
3713 x3 = XEXP (x2, 0);
3714 goto L59;
3715
3716 L48:
3717 x1 = XVECEXP (x0, 0, 1);
3718 if (GET_CODE (x1) == CLOBBER && 1)
3719 goto L49;
3720 x1 = XVECEXP (x0, 0, 0);
3721 x2 = XEXP (x1, 1);
3722 x3 = XEXP (x2, 0);
3723 goto L59;
3724
3725 L49:
3726 x2 = XEXP (x1, 0);
3727 if (scratch_operand (x2, HImode))
3728 {
3729 ro[3] = x2;
3730 if (TARGET_80387
3731 && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM))
3732 return 16;
3733 }
3734 x1 = XVECEXP (x0, 0, 0);
3735 x2 = XEXP (x1, 1);
3736 x3 = XEXP (x2, 0);
3737 goto L59;
3738
3739 L60:
3740 x3 = XEXP (x2, 1);
3741 if (GET_MODE (x3) != DFmode)
3742 {
3743 goto L118;
3744 }
3745 switch (GET_CODE (x3))
3746 {
3747 case FLOAT:
3748 goto L61;
3749 case FLOAT_EXTEND:
3750 goto L91;
3751 }
3752 goto L118;
3753
3754 L61:
3755 x4 = XEXP (x3, 0);
3756 if (nonimmediate_operand (x4, SImode))
3757 {
3758 ro[1] = x4;
3759 goto L62;
3760 }
3761 goto L118;
3762
3763 L62:
3764 x1 = XVECEXP (x0, 0, 1);
3765 if (GET_CODE (x1) == CLOBBER && 1)
3766 goto L63;
3767 x1 = XVECEXP (x0, 0, 0);
3768 x2 = XEXP (x1, 1);
3769 goto L118;
3770
3771 L63:
3772 x2 = XEXP (x1, 0);
3773 if (scratch_operand (x2, HImode))
3774 {
3775 ro[3] = x2;
3776 if (TARGET_80387)
3777 return 17;
3778 }
3779 x1 = XVECEXP (x0, 0, 0);
3780 x2 = XEXP (x1, 1);
3781 goto L118;
3782
3783 L91:
3784 x4 = XEXP (x3, 0);
3785 if (nonimmediate_operand (x4, SFmode))
3786 {
3787 ro[1] = x4;
3788 goto L92;
3789 }
3790 goto L118;
3791
3792 L92:
3793 x1 = XVECEXP (x0, 0, 1);
3794 if (GET_CODE (x1) == CLOBBER && 1)
3795 goto L93;
3796 x1 = XVECEXP (x0, 0, 0);
3797 x2 = XEXP (x1, 1);
3798 goto L118;
3799
3800 L93:
3801 x2 = XEXP (x1, 0);
3802 if (scratch_operand (x2, HImode))
3803 {
3804 ro[3] = x2;
3805 if (TARGET_80387)
3806 return 19;
3807 }
3808 x1 = XVECEXP (x0, 0, 0);
3809 x2 = XEXP (x1, 1);
3810 goto L118;
3811
3812 L161:
3813 x4 = XEXP (x3, 0);
3814 if (nonimmediate_operand (x4, SImode))
3815 {
3816 ro[0] = x4;
3817 goto L162;
3818 }
3819 goto L118;
3820
3821 L162:
3822 x3 = XEXP (x2, 1);
3823 if (register_operand (x3, SFmode))
3824 {
3825 ro[1] = x3;
3826 goto L163;
3827 }
3828 goto L118;
3829
3830 L163:
3831 x1 = XVECEXP (x0, 0, 1);
3832 if (GET_CODE (x1) == CLOBBER && 1)
3833 goto L164;
3834 x1 = XVECEXP (x0, 0, 0);
3835 x2 = XEXP (x1, 1);
3836 goto L118;
3837
3838 L164:
3839 x2 = XEXP (x1, 0);
3840 if (scratch_operand (x2, HImode))
3841 {
3842 ro[3] = x2;
3843 if (TARGET_80387)
3844 return 24;
3845 }
3846 x1 = XVECEXP (x0, 0, 0);
3847 x2 = XEXP (x1, 1);
3848 goto L118;
3849
3850 L133:
3851 x3 = XEXP (x2, 1);
3852 if (nonimmediate_operand (x3, SFmode))
3853 {
3854 ro[1] = x3;
3855 goto L134;
3856 }
3857 x3 = XEXP (x2, 0);
3858 goto L145;
3859
3860 L134:
3861 x1 = XVECEXP (x0, 0, 1);
3862 if (GET_CODE (x1) == CLOBBER && 1)
3863 goto L135;
3864 x1 = XVECEXP (x0, 0, 0);
3865 x2 = XEXP (x1, 1);
3866 x3 = XEXP (x2, 0);
3867 goto L145;
3868
3869 L135:
3870 x2 = XEXP (x1, 0);
3871 if (scratch_operand (x2, HImode))
3872 {
3873 ro[3] = x2;
3874 if (TARGET_80387
3875 && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM))
3876 return 22;
3877 }
3878 x1 = XVECEXP (x0, 0, 0);
3879 x2 = XEXP (x1, 1);
3880 x3 = XEXP (x2, 0);
3881 goto L145;
3882
3883 L146:
3884 x3 = XEXP (x2, 1);
3885 if (GET_MODE (x3) == SFmode && GET_CODE (x3) == FLOAT && 1)
3886 goto L147;
3887 goto L118;
3888
3889 L147:
3890 x4 = XEXP (x3, 0);
3891 if (nonimmediate_operand (x4, SImode))
3892 {
3893 ro[1] = x4;
3894 goto L148;
3895 }
3896 goto L118;
3897
3898 L148:
3899 x1 = XVECEXP (x0, 0, 1);
3900 if (GET_CODE (x1) == CLOBBER && 1)
3901 goto L149;
3902 x1 = XVECEXP (x0, 0, 0);
3903 x2 = XEXP (x1, 1);
3904 goto L118;
3905
3906 L149:
3907 x2 = XEXP (x1, 0);
3908 if (scratch_operand (x2, HImode))
3909 {
3910 ro[3] = x2;
3911 if (TARGET_80387)
3912 return 23;
3913 }
3914 x1 = XVECEXP (x0, 0, 0);
3915 x2 = XEXP (x1, 1);
3916 goto L118;
3917
3918 L119:
3919 x3 = XEXP (x2, 0);
3920 switch (GET_MODE (x3))
3921 {
3922 case DFmode:
3923 if (register_operand (x3, DFmode))
3924 {
3925 ro[0] = x3;
3926 goto L120;
3927 }
3928 break;
3929 case SFmode:
3930 if (register_operand (x3, SFmode))
3931 {
3932 ro[0] = x3;
3933 goto L176;
3934 }
3935 }
3936 goto ret0;
3937
3938 L120:
3939 x3 = XEXP (x2, 1);
3940 if (register_operand (x3, DFmode))
3941 {
3942 ro[1] = x3;
3943 goto L121;
3944 }
3945 goto ret0;
3946
3947 L121:
3948 x1 = XVECEXP (x0, 0, 1);
3949 if (GET_CODE (x1) == CLOBBER && 1)
3950 goto L122;
3951 goto ret0;
3952
3953 L122:
3954 x2 = XEXP (x1, 0);
3955 if (scratch_operand (x2, HImode))
3956 {
3957 ro[2] = x2;
3958 if (TARGET_80387)
3959 return 21;
3960 }
3961 goto ret0;
3962
3963 L176:
3964 x3 = XEXP (x2, 1);
3965 if (register_operand (x3, SFmode))
3966 {
3967 ro[1] = x3;
3968 goto L177;
3969 }
3970 goto ret0;
3971
3972 L177:
3973 x1 = XVECEXP (x0, 0, 1);
3974 if (GET_CODE (x1) == CLOBBER && 1)
3975 goto L178;
3976 goto ret0;
3977
3978 L178:
3979 x2 = XEXP (x1, 0);
3980 if (scratch_operand (x2, HImode))
3981 {
3982 ro[2] = x2;
3983 if (TARGET_80387)
3984 return 25;
3985 }
3986 goto ret0;
3987 ret0: return -1;
3988}
3989
3990int
3991recog_5 (x0, insn, pnum_clobbers)
3992 register rtx x0;
3993 rtx insn;
3994 int *pnum_clobbers;
3995{
3996 register rtx *ro = &recog_operand[0];
3997 register rtx x1, x2, x3, x4, x5, x6;
3998 int tem;
3999
4000 x1 = XVECEXP (x0, 0, 0);
4001 x2 = XEXP (x1, 0);
4002 switch (GET_MODE (x2))
4003 {
4004 case DFmode:
4005 if (register_operand (x2, DFmode))
4006 {
4007 ro[0] = x2;
4008 goto L242;
4009 }
4010 break;
4011 case SFmode:
4012 if (nonimmediate_operand (x2, SFmode))
4013 {
4014 ro[0] = x2;
4015 goto L294;
4016 }
4017 break;
4018 case SImode:
4019 if (register_operand (x2, SImode))
4020 {
4021 ro[0] = x2;
4022 goto L497;
4023 }
4024 break;
4025 case HImode:
4026 if (register_operand (x2, HImode))
4027 {
4028 ro[0] = x2;
4029 goto L508;
4030 }
4031 break;
4032 case DImode:
4033 if (register_operand (x2, DImode))
4034 {
4035 ro[0] = x2;
4036 goto L684;
4037 }
4038 }
4039 switch (GET_CODE (x2))
4040 {
4041 case CC0:
4042 goto L12;
4043 case PC:
4044 goto L1068;
4045 }
4046 L1125:
4047 ro[0] = x2;
4048 goto L1126;
4049 L1286:
4050 if (register_operand (x2, SImode))
4051 {
4052 ro[0] = x2;
4053 goto L1287;
4054 }
4055 goto ret0;
4056
4057 L242:
4058 x2 = XEXP (x1, 1);
4059 if (register_operand (x2, DFmode))
4060 {
4061 ro[1] = x2;
4062 goto L243;
4063 }
4064 x2 = XEXP (x1, 0);
4065 goto L1125;
4066
4067 L243:
4068 x1 = XVECEXP (x0, 0, 1);
4069 if (GET_CODE (x1) == SET && 1)
4070 goto L244;
4071 x1 = XVECEXP (x0, 0, 0);
4072 x2 = XEXP (x1, 0);
4073 goto L1125;
4074
4075 L244:
4076 x2 = XEXP (x1, 0);
4077 if (rtx_equal_p (x2, ro[1]) && 1)
4078 goto L245;
4079 x1 = XVECEXP (x0, 0, 0);
4080 x2 = XEXP (x1, 0);
4081 goto L1125;
4082
4083 L245:
4084 x2 = XEXP (x1, 1);
4085 if (rtx_equal_p (x2, ro[0]) && 1)
4086 return 48;
4087 x1 = XVECEXP (x0, 0, 0);
4088 x2 = XEXP (x1, 0);
4089 goto L1125;
4090
4091 L294:
4092 x2 = XEXP (x1, 1);
4093 if (GET_MODE (x2) == SFmode && GET_CODE (x2) == FLOAT_TRUNCATE && 1)
4094 goto L295;
4095 x2 = XEXP (x1, 0);
4096 goto L1125;
4097
4098 L295:
4099 x3 = XEXP (x2, 0);
4100 if (register_operand (x3, DFmode))
4101 {
4102 ro[1] = x3;
4103 goto L296;
4104 }
4105 x2 = XEXP (x1, 0);
4106 goto L1125;
4107
4108 L296:
4109 x1 = XVECEXP (x0, 0, 1);
4110 if (GET_CODE (x1) == CLOBBER && 1)
4111 goto L297;
4112 x1 = XVECEXP (x0, 0, 0);
4113 x2 = XEXP (x1, 0);
4114 goto L1125;
4115
4116 L297:
4117 x2 = XEXP (x1, 0);
4118 if (memory_operand (x2, SFmode))
4119 {
4120 ro[2] = x2;
4121 if (TARGET_80387)
4122 return 62;
4123 }
4124 x1 = XVECEXP (x0, 0, 0);
4125 x2 = XEXP (x1, 0);
4126 goto L1125;
4127
4128 L497:
4129 x2 = XEXP (x1, 1);
4130 if (GET_MODE (x2) != SImode)
4131 {
4132 x2 = XEXP (x1, 0);
4133 goto L1125;
4134 }
4135 switch (GET_CODE (x2))
4136 {
4137 case DIV:
4138 goto L498;
4139 case UDIV:
4140 goto L520;
4141 }
4142 x2 = XEXP (x1, 0);
4143 goto L1125;
4144
4145 L498:
4146 x3 = XEXP (x2, 0);
4147 if (register_operand (x3, SImode))
4148 {
4149 ro[1] = x3;
4150 goto L499;
4151 }
4152 x2 = XEXP (x1, 0);
4153 goto L1125;
4154
4155 L499:
4156 x3 = XEXP (x2, 1);
4157 if (general_operand (x3, SImode))
4158 {
4159 ro[2] = x3;
4160 goto L500;
4161 }
4162 x2 = XEXP (x1, 0);
4163 goto L1125;
4164
4165 L500:
4166 x1 = XVECEXP (x0, 0, 1);
4167 if (GET_CODE (x1) == SET && 1)
4168 goto L501;
4169 x1 = XVECEXP (x0, 0, 0);
4170 x2 = XEXP (x1, 0);
4171 goto L1125;
4172
4173 L501:
4174 x2 = XEXP (x1, 0);
4175 if (register_operand (x2, SImode))
4176 {
4177 ro[3] = x2;
4178 goto L502;
4179 }
4180 x1 = XVECEXP (x0, 0, 0);
4181 x2 = XEXP (x1, 0);
4182 goto L1125;
4183
4184 L502:
4185 x2 = XEXP (x1, 1);
4186 if (GET_MODE (x2) == SImode && GET_CODE (x2) == MOD && 1)
4187 goto L503;
4188 x1 = XVECEXP (x0, 0, 0);
4189 x2 = XEXP (x1, 0);
4190 goto L1125;
4191
4192 L503:
4193 x3 = XEXP (x2, 0);
4194 if (rtx_equal_p (x3, ro[1]) && 1)
4195 goto L504;
4196 x1 = XVECEXP (x0, 0, 0);
4197 x2 = XEXP (x1, 0);
4198 goto L1125;
4199
4200 L504:
4201 x3 = XEXP (x2, 1);
4202 if (rtx_equal_p (x3, ro[2]) && 1)
4203 return 105;
4204 x1 = XVECEXP (x0, 0, 0);
4205 x2 = XEXP (x1, 0);
4206 goto L1125;
4207
4208 L520:
4209 x3 = XEXP (x2, 0);
4210 if (register_operand (x3, SImode))
4211 {
4212 ro[1] = x3;
4213 goto L521;
4214 }
4215 x2 = XEXP (x1, 0);
4216 goto L1125;
4217
4218 L521:
4219 x3 = XEXP (x2, 1);
4220 if (general_operand (x3, SImode))
4221 {
4222 ro[2] = x3;
4223 goto L522;
4224 }
4225 x2 = XEXP (x1, 0);
4226 goto L1125;
4227
4228 L522:
4229 x1 = XVECEXP (x0, 0, 1);
4230 if (GET_CODE (x1) == SET && 1)
4231 goto L523;
4232 x1 = XVECEXP (x0, 0, 0);
4233 x2 = XEXP (x1, 0);
4234 goto L1125;
4235
4236 L523:
4237 x2 = XEXP (x1, 0);
4238 if (register_operand (x2, SImode))
4239 {
4240 ro[3] = x2;
4241 goto L524;
4242 }
4243 x1 = XVECEXP (x0, 0, 0);
4244 x2 = XEXP (x1, 0);
4245 goto L1125;
4246
4247 L524:
4248 x2 = XEXP (x1, 1);
4249 if (GET_MODE (x2) == SImode && GET_CODE (x2) == UMOD && 1)
4250 goto L525;
4251 x1 = XVECEXP (x0, 0, 0);
4252 x2 = XEXP (x1, 0);
4253 goto L1125;
4254
4255 L525:
4256 x3 = XEXP (x2, 0);
4257 if (rtx_equal_p (x3, ro[1]) && 1)
4258 goto L526;
4259 x1 = XVECEXP (x0, 0, 0);
4260 x2 = XEXP (x1, 0);
4261 goto L1125;
4262
4263 L526:
4264 x3 = XEXP (x2, 1);
4265 if (rtx_equal_p (x3, ro[2]) && 1)
4266 return 107;
4267 x1 = XVECEXP (x0, 0, 0);
4268 x2 = XEXP (x1, 0);
4269 goto L1125;
4270
4271 L508:
4272 x2 = XEXP (x1, 1);
4273 if (GET_MODE (x2) != HImode)
4274 {
4275 x2 = XEXP (x1, 0);
4276 goto L1125;
4277 }
4278 switch (GET_CODE (x2))
4279 {
4280 case DIV:
4281 goto L509;
4282 case UDIV:
4283 goto L531;
4284 }
4285 x2 = XEXP (x1, 0);
4286 goto L1125;
4287
4288 L509:
4289 x3 = XEXP (x2, 0);
4290 if (register_operand (x3, HImode))
4291 {
4292 ro[1] = x3;
4293 goto L510;
4294 }
4295 x2 = XEXP (x1, 0);
4296 goto L1125;
4297
4298 L510:
4299 x3 = XEXP (x2, 1);
4300 if (general_operand (x3, HImode))
4301 {
4302 ro[2] = x3;
4303 goto L511;
4304 }
4305 x2 = XEXP (x1, 0);
4306 goto L1125;
4307
4308 L511:
4309 x1 = XVECEXP (x0, 0, 1);
4310 if (GET_CODE (x1) == SET && 1)
4311 goto L512;
4312 x1 = XVECEXP (x0, 0, 0);
4313 x2 = XEXP (x1, 0);
4314 goto L1125;
4315
4316 L512:
4317 x2 = XEXP (x1, 0);
4318 if (register_operand (x2, HImode))
4319 {
4320 ro[3] = x2;
4321 goto L513;
4322 }
4323 x1 = XVECEXP (x0, 0, 0);
4324 x2 = XEXP (x1, 0);
4325 goto L1125;
4326
4327 L513:
4328 x2 = XEXP (x1, 1);
4329 if (GET_MODE (x2) == HImode && GET_CODE (x2) == MOD && 1)
4330 goto L514;
4331 x1 = XVECEXP (x0, 0, 0);
4332 x2 = XEXP (x1, 0);
4333 goto L1125;
4334
4335 L514:
4336 x3 = XEXP (x2, 0);
4337 if (rtx_equal_p (x3, ro[1]) && 1)
4338 goto L515;
4339 x1 = XVECEXP (x0, 0, 0);
4340 x2 = XEXP (x1, 0);
4341 goto L1125;
4342
4343 L515:
4344 x3 = XEXP (x2, 1);
4345 if (rtx_equal_p (x3, ro[2]) && 1)
4346 return 106;
4347 x1 = XVECEXP (x0, 0, 0);
4348 x2 = XEXP (x1, 0);
4349 goto L1125;
4350
4351 L531:
4352 x3 = XEXP (x2, 0);
4353 if (register_operand (x3, HImode))
4354 {
4355 ro[1] = x3;
4356 goto L532;
4357 }
4358 x2 = XEXP (x1, 0);
4359 goto L1125;
4360
4361 L532:
4362 x3 = XEXP (x2, 1);
4363 if (general_operand (x3, HImode))
4364 {
4365 ro[2] = x3;
4366 goto L533;
4367 }
4368 x2 = XEXP (x1, 0);
4369 goto L1125;
4370
4371 L533:
4372 x1 = XVECEXP (x0, 0, 1);
4373 if (GET_CODE (x1) == SET && 1)
4374 goto L534;
4375 x1 = XVECEXP (x0, 0, 0);
4376 x2 = XEXP (x1, 0);
4377 goto L1125;
4378
4379 L534:
4380 x2 = XEXP (x1, 0);
4381 if (register_operand (x2, HImode))
4382 {
4383 ro[3] = x2;
4384 goto L535;
4385 }
4386 x1 = XVECEXP (x0, 0, 0);
4387 x2 = XEXP (x1, 0);
4388 goto L1125;
4389
4390 L535:
4391 x2 = XEXP (x1, 1);
4392 if (GET_MODE (x2) == HImode && GET_CODE (x2) == UMOD && 1)
4393 goto L536;
4394 x1 = XVECEXP (x0, 0, 0);
4395 x2 = XEXP (x1, 0);
4396 goto L1125;
4397
4398 L536:
4399 x3 = XEXP (x2, 0);
4400 if (rtx_equal_p (x3, ro[1]) && 1)
4401 goto L537;
4402 x1 = XVECEXP (x0, 0, 0);
4403 x2 = XEXP (x1, 0);
4404 goto L1125;
4405
4406 L537:
4407 x3 = XEXP (x2, 1);
4408 if (rtx_equal_p (x3, ro[2]) && 1)
4409 return 108;
4410 x1 = XVECEXP (x0, 0, 0);
4411 x2 = XEXP (x1, 0);
4412 goto L1125;
4413
4414 L684:
4415 x2 = XEXP (x1, 1);
4416 if (GET_MODE (x2) != DImode)
4417 {
4418 x2 = XEXP (x1, 0);
4419 goto L1125;
4420 }
4421 switch (GET_CODE (x2))
4422 {
4423 case ASHIFT:
4424 goto L685;
4425 case ASHIFTRT:
4426 goto L713;
4427 case LSHIFTRT:
4428 goto L741;
4429 }
4430 x2 = XEXP (x1, 0);
4431 goto L1125;
4432
4433 L685:
4434 x3 = XEXP (x2, 0);
4435 if (register_operand (x3, DImode))
4436 {
4437 ro[1] = x3;
4438 goto L686;
4439 }
4440 x2 = XEXP (x1, 0);
4441 goto L1125;
4442
4443 L686:
4444 x3 = XEXP (x2, 1);
4445 if (register_operand (x3, QImode))
4446 {
4447 ro[2] = x3;
4448 goto L687;
4449 }
4450 x2 = XEXP (x1, 0);
4451 goto L1125;
4452
4453 L687:
4454 x1 = XVECEXP (x0, 0, 1);
4455 if (GET_CODE (x1) == CLOBBER && 1)
4456 goto L688;
4457 x1 = XVECEXP (x0, 0, 0);
4458 x2 = XEXP (x1, 0);
4459 goto L1125;
4460
4461 L688:
4462 x2 = XEXP (x1, 0);
4463 if (rtx_equal_p (x2, ro[2]) && 1)
4464 return 142;
4465 x1 = XVECEXP (x0, 0, 0);
4466 x2 = XEXP (x1, 0);
4467 goto L1125;
4468
4469 L713:
4470 x3 = XEXP (x2, 0);
4471 if (register_operand (x3, DImode))
4472 {
4473 ro[1] = x3;
4474 goto L714;
4475 }
4476 x2 = XEXP (x1, 0);
4477 goto L1125;
4478
4479 L714:
4480 x3 = XEXP (x2, 1);
4481 if (register_operand (x3, QImode))
4482 {
4483 ro[2] = x3;
4484 goto L715;
4485 }
4486 x2 = XEXP (x1, 0);
4487 goto L1125;
4488
4489 L715:
4490 x1 = XVECEXP (x0, 0, 1);
4491 if (GET_CODE (x1) == CLOBBER && 1)
4492 goto L716;
4493 x1 = XVECEXP (x0, 0, 0);
4494 x2 = XEXP (x1, 0);
4495 goto L1125;
4496
4497 L716:
4498 x2 = XEXP (x1, 0);
4499 if (rtx_equal_p (x2, ro[2]) && 1)
4500 return 148;
4501 x1 = XVECEXP (x0, 0, 0);
4502 x2 = XEXP (x1, 0);
4503 goto L1125;
4504
4505 L741:
4506 x3 = XEXP (x2, 0);
4507 if (register_operand (x3, DImode))
4508 {
4509 ro[1] = x3;
4510 goto L742;
4511 }
4512 x2 = XEXP (x1, 0);
4513 goto L1125;
4514
4515 L742:
4516 x3 = XEXP (x2, 1);
4517 if (register_operand (x3, QImode))
4518 {
4519 ro[2] = x3;
4520 goto L743;
4521 }
4522 x2 = XEXP (x1, 0);
4523 goto L1125;
4524
4525 L743:
4526 x1 = XVECEXP (x0, 0, 1);
4527 if (GET_CODE (x1) == CLOBBER && 1)
4528 goto L744;
4529 x1 = XVECEXP (x0, 0, 0);
4530 x2 = XEXP (x1, 0);
4531 goto L1125;
4532
4533 L744:
4534 x2 = XEXP (x1, 0);
4535 if (rtx_equal_p (x2, ro[2]) && 1)
4536 return 154;
4537 x1 = XVECEXP (x0, 0, 0);
4538 x2 = XEXP (x1, 0);
4539 goto L1125;
4540 L12:
4541 tem = recog_4 (x0, insn, pnum_clobbers);
4542 if (tem >= 0) return tem;
4543 x2 = XEXP (x1, 0);
4544 goto L1125;
4545
4546 L1068:
4547 x2 = XEXP (x1, 1);
4548 if (GET_MODE (x2) == SImode && GET_CODE (x2) == MINUS && 1)
4549 goto L1069;
4550 if (general_operand (x2, SImode))
4551 {
4552 ro[0] = x2;
4553 goto L1094;
4554 }
4555 x2 = XEXP (x1, 0);
4556 goto L1125;
4557
4558 L1069:
4559 x3 = XEXP (x2, 0);
4560 if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 3 && 1)
4561 goto L1070;
4562 x2 = XEXP (x1, 0);
4563 goto L1125;
4564
4565 L1070:
4566 x3 = XEXP (x2, 1);
4567 if (GET_MODE (x3) == SImode && GET_CODE (x3) == MEM && 1)
4568 goto L1071;
4569 x2 = XEXP (x1, 0);
4570 goto L1125;
4571
4572 L1071:
4573 x4 = XEXP (x3, 0);
4574 if (GET_MODE (x4) == SImode && GET_CODE (x4) == PLUS && 1)
4575 goto L1072;
4576 x2 = XEXP (x1, 0);
4577 goto L1125;
4578
4579 L1072:
4580 x5 = XEXP (x4, 0);
4581 if (GET_MODE (x5) == SImode && GET_CODE (x5) == MULT && 1)
4582 goto L1073;
4583 x2 = XEXP (x1, 0);
4584 goto L1125;
4585
4586 L1073:
4587 x6 = XEXP (x5, 0);
4588 if (register_operand (x6, SImode))
4589 {
4590 ro[0] = x6;
4591 goto L1074;
4592 }
4593 x2 = XEXP (x1, 0);
4594 goto L1125;
4595
4596 L1074:
4597 x6 = XEXP (x5, 1);
4598 if (GET_CODE (x6) == CONST_INT && XWINT (x6, 0) == 4 && 1)
4599 goto L1075;
4600 x2 = XEXP (x1, 0);
4601 goto L1125;
4602
4603 L1075:
4604 x5 = XEXP (x4, 1);
4605 if (GET_CODE (x5) == LABEL_REF && 1)
4606 goto L1076;
4607 x2 = XEXP (x1, 0);
4608 goto L1125;
4609
4610 L1076:
4611 x6 = XEXP (x5, 0);
4612 ro[1] = x6;
4613 goto L1077;
4614
4615 L1077:
4616 x1 = XVECEXP (x0, 0, 1);
4617 if (GET_CODE (x1) == CLOBBER && 1)
4618 goto L1078;
4619 x1 = XVECEXP (x0, 0, 0);
4620 x2 = XEXP (x1, 0);
4621 goto L1125;
4622
4623 L1078:
4624 x2 = XEXP (x1, 0);
4625 if (scratch_operand (x2, SImode))
4626 {
4627 ro[2] = x2;
4628 return 223;
4629 }
4630 x1 = XVECEXP (x0, 0, 0);
4631 x2 = XEXP (x1, 0);
4632 goto L1125;
4633
4634 L1094:
4635 x1 = XVECEXP (x0, 0, 1);
4636 if (GET_CODE (x1) == USE && 1)
4637 goto L1095;
4638 x1 = XVECEXP (x0, 0, 0);
4639 x2 = XEXP (x1, 0);
4640 goto L1125;
4641
4642 L1095:
4643 x2 = XEXP (x1, 0);
4644 if (GET_CODE (x2) == LABEL_REF && 1)
4645 goto L1096;
4646 x1 = XVECEXP (x0, 0, 0);
4647 x2 = XEXP (x1, 0);
4648 goto L1125;
4649
4650 L1096:
4651 x3 = XEXP (x2, 0);
4652 ro[1] = x3;
4653 return 224;
4654
4655 L1126:
4656 x2 = XEXP (x1, 1);
4657 if (GET_CODE (x2) == CALL && 1)
4658 goto L1138;
4659 x2 = XEXP (x1, 0);
4660 goto L1286;
4661
4662 L1138:
4663 x3 = XEXP (x2, 0);
4664 if (GET_MODE (x3) == QImode && GET_CODE (x3) == MEM && 1)
4665 goto L1139;
4666 L1127:
4667 if (call_insn_operand (x3, QImode))
4668 {
4669 ro[1] = x3;
4670 goto L1128;
4671 }
4672 x2 = XEXP (x1, 0);
4673 goto L1286;
4674
4675 L1139:
4676 x4 = XEXP (x3, 0);
4677 if (symbolic_operand (x4, SImode))
4678 {
4679 ro[1] = x4;
4680 goto L1140;
4681 }
4682 goto L1127;
4683
4684 L1140:
4685 x3 = XEXP (x2, 1);
4686 if (general_operand (x3, SImode))
4687 {
4688 ro[2] = x3;
4689 goto L1141;
4690 }
4691 x3 = XEXP (x2, 0);
4692 goto L1127;
4693
4694 L1141:
4695 x1 = XVECEXP (x0, 0, 1);
4696 if (GET_CODE (x1) == SET && 1)
4697 goto L1142;
4698 x1 = XVECEXP (x0, 0, 0);
4699 x2 = XEXP (x1, 1);
4700 x3 = XEXP (x2, 0);
4701 goto L1127;
4702
4703 L1142:
4704 x2 = XEXP (x1, 0);
4705 if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 7 && 1)
4706 goto L1143;
4707 x1 = XVECEXP (x0, 0, 0);
4708 x2 = XEXP (x1, 1);
4709 x3 = XEXP (x2, 0);
4710 goto L1127;
4711
4712 L1143:
4713 x2 = XEXP (x1, 1);
4714 if (GET_MODE (x2) == SImode && GET_CODE (x2) == PLUS && 1)
4715 goto L1144;
4716 x1 = XVECEXP (x0, 0, 0);
4717 x2 = XEXP (x1, 1);
4718 x3 = XEXP (x2, 0);
4719 goto L1127;
4720
4721 L1144:
4722 x3 = XEXP (x2, 0);
4723 if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 7 && 1)
4724 goto L1145;
4725 x1 = XVECEXP (x0, 0, 0);
4726 x2 = XEXP (x1, 1);
4727 x3 = XEXP (x2, 0);
4728 goto L1127;
4729
4730 L1145:
4731 x3 = XEXP (x2, 1);
4732 if (immediate_operand (x3, SImode))
4733 {
4734 ro[4] = x3;
4735 if (!HALF_PIC_P ())
4736 return 233;
4737 }
4738 x1 = XVECEXP (x0, 0, 0);
4739 x2 = XEXP (x1, 1);
4740 x3 = XEXP (x2, 0);
4741 goto L1127;
4742
4743 L1128:
4744 x3 = XEXP (x2, 1);
4745 if (general_operand (x3, SImode))
4746 {
4747 ro[2] = x3;
4748 goto L1129;
4749 }
4750 x2 = XEXP (x1, 0);
4751 goto L1286;
4752
4753 L1129:
4754 x1 = XVECEXP (x0, 0, 1);
4755 if (GET_CODE (x1) == SET && 1)
4756 goto L1130;
4757 x1 = XVECEXP (x0, 0, 0);
4758 x2 = XEXP (x1, 0);
4759 goto L1286;
4760
4761 L1130:
4762 x2 = XEXP (x1, 0);
4763 if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 7 && 1)
4764 goto L1131;
4765 x1 = XVECEXP (x0, 0, 0);
4766 x2 = XEXP (x1, 0);
4767 goto L1286;
4768
4769 L1131:
4770 x2 = XEXP (x1, 1);
4771 if (GET_MODE (x2) == SImode && GET_CODE (x2) == PLUS && 1)
4772 goto L1132;
4773 x1 = XVECEXP (x0, 0, 0);
4774 x2 = XEXP (x1, 0);
4775 goto L1286;
4776
4777 L1132:
4778 x3 = XEXP (x2, 0);
4779 if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 7 && 1)
4780 goto L1133;
4781 x1 = XVECEXP (x0, 0, 0);
4782 x2 = XEXP (x1, 0);
4783 goto L1286;
4784
4785 L1133:
4786 x3 = XEXP (x2, 1);
4787 if (immediate_operand (x3, SImode))
4788 {
4789 ro[4] = x3;
4790 return 232;
4791 }
4792 x1 = XVECEXP (x0, 0, 0);
4793 x2 = XEXP (x1, 0);
4794 goto L1286;
4795
4796 L1287:
4797 x2 = XEXP (x1, 1);
4798 if (GET_MODE (x2) == SImode && GET_CODE (x2) == UNSPEC && XINT (x2, 1) == 0 && XVECLEN (x2, 0) == 3 && 1)
4799 goto L1288;
4800 goto ret0;
4801
4802 L1288:
4803 x3 = XVECEXP (x2, 0, 0);
4804 if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
4805 goto L1289;
4806 goto ret0;
4807
4808 L1289:
4809 x4 = XEXP (x3, 0);
4810 if (address_operand (x4, SImode))
4811 {
4812 ro[1] = x4;
4813 goto L1290;
4814 }
4815 goto ret0;
4816
4817 L1290:
4818 x3 = XVECEXP (x2, 0, 1);
4819 if (register_operand (x3, QImode))
4820 {
4821 ro[2] = x3;
4822 goto L1291;
4823 }
4824 goto ret0;
4825
4826 L1291:
4827 x3 = XVECEXP (x2, 0, 2);
4828 if (immediate_operand (x3, SImode))
4829 {
4830 ro[3] = x3;
4831 goto L1292;
4832 }
4833 goto ret0;
4834
4835 L1292:
4836 x1 = XVECEXP (x0, 0, 1);
4837 if (GET_CODE (x1) == CLOBBER && 1)
4838 goto L1293;
4839 goto ret0;
4840
4841 L1293:
4842 x2 = XEXP (x1, 0);
4843 if (rtx_equal_p (x2, ro[1]) && 1)
4844 return 262;
4845 goto ret0;
4846 ret0: return -1;
4847}
4848
4849int
4850recog (x0, insn, pnum_clobbers)
4851 register rtx x0;
4852 rtx insn;
4853 int *pnum_clobbers;
4854{
4855 register rtx *ro = &recog_operand[0];
4856 register rtx x1, x2, x3, x4, x5, x6;
4857 int tem;
4858
4859 L1170:
4860 switch (GET_CODE (x0))
4861 {
4862 case UNSPEC:
4863 if (GET_MODE (x0) == SImode && XINT (x0, 1) == 0 && XVECLEN (x0, 0) == 1 && 1)
4864 goto L1171;
4865 break;
4866 case SET:
4867 goto L200;
4868 case PARALLEL:
4869 if (XVECLEN (x0, 0) == 2 && 1)
4870 goto L10;
4871 if (XVECLEN (x0, 0) == 5 && 1)
4872 goto L299;
4873 if (XVECLEN (x0, 0) == 4 && 1)
4874 goto L313;
4875 if (XVECLEN (x0, 0) == 3 && 1)
4876 goto L363;
4877 if (XVECLEN (x0, 0) == 6 && 1)
4878 goto L1175;
4879 break;
4880 case CALL:
4881 goto L1117;
4882 case RETURN:
4883 if (simple_386_epilogue ())
4884 return 242;
4885 break;
4886 case CONST_INT:
4887 if (XWINT (x0, 0) == 0 && 1)
4888 return 243;
4889 }
4890 goto ret0;
4891
4892 L1171:
4893 x1 = XVECEXP (x0, 0, 0);
4894 if (memory_operand (x1, SImode))
4895 {
4896 ro[0] = x1;
4897 return 241;
4898 }
4899 goto ret0;
4900 L200:
4901 return recog_3 (x0, insn, pnum_clobbers);
4902
4903 L10:
4904 x1 = XVECEXP (x0, 0, 0);
4905 switch (GET_CODE (x1))
4906 {
4907 case SET:
4908 goto L241;
4909 case CALL:
4910 goto L1108;
4911 }
4912 goto ret0;
4913 L241:
4914 return recog_5 (x0, insn, pnum_clobbers);
4915
4916 L1108:
4917 x2 = XEXP (x1, 0);
4918 if (GET_MODE (x2) == QImode && GET_CODE (x2) == MEM && 1)
4919 goto L1109;
4920 L1099:
4921 if (call_insn_operand (x2, QImode))
4922 {
4923 ro[0] = x2;
4924 goto L1100;
4925 }
4926 goto ret0;
4927
4928 L1109:
4929 x3 = XEXP (x2, 0);
4930 if (symbolic_operand (x3, SImode))
4931 {
4932 ro[0] = x3;
4933 goto L1110;
4934 }
4935 goto L1099;
4936
4937 L1110:
4938 x2 = XEXP (x1, 1);
4939 if (general_operand (x2, SImode))
4940 {
4941 ro[1] = x2;
4942 goto L1111;
4943 }
4944 x2 = XEXP (x1, 0);
4945 goto L1099;
4946
4947 L1111:
4948 x1 = XVECEXP (x0, 0, 1);
4949 if (GET_CODE (x1) == SET && 1)
4950 goto L1112;
4951 x1 = XVECEXP (x0, 0, 0);
4952 x2 = XEXP (x1, 0);
4953 goto L1099;
4954
4955 L1112:
4956 x2 = XEXP (x1, 0);
4957 if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 7 && 1)
4958 goto L1113;
4959 x1 = XVECEXP (x0, 0, 0);
4960 x2 = XEXP (x1, 0);
4961 goto L1099;
4962
4963 L1113:
4964 x2 = XEXP (x1, 1);
4965 if (GET_MODE (x2) == SImode && GET_CODE (x2) == PLUS && 1)
4966 goto L1114;
4967 x1 = XVECEXP (x0, 0, 0);
4968 x2 = XEXP (x1, 0);
4969 goto L1099;
4970
4971 L1114:
4972 x3 = XEXP (x2, 0);
4973 if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 7 && 1)
4974 goto L1115;
4975 x1 = XVECEXP (x0, 0, 0);
4976 x2 = XEXP (x1, 0);
4977 goto L1099;
4978
4979 L1115:
4980 x3 = XEXP (x2, 1);
4981 if (immediate_operand (x3, SImode))
4982 {
4983 ro[3] = x3;
4984 if (!HALF_PIC_P ())
4985 return 227;
4986 }
4987 x1 = XVECEXP (x0, 0, 0);
4988 x2 = XEXP (x1, 0);
4989 goto L1099;
4990
4991 L1100:
4992 x2 = XEXP (x1, 1);
4993 if (general_operand (x2, SImode))
4994 {
4995 ro[1] = x2;
4996 goto L1101;
4997 }
4998 goto ret0;
4999
5000 L1101:
5001 x1 = XVECEXP (x0, 0, 1);
5002 if (GET_CODE (x1) == SET && 1)
5003 goto L1102;
5004 goto ret0;
5005
5006 L1102:
5007 x2 = XEXP (x1, 0);
5008 if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 7 && 1)
5009 goto L1103;
5010 goto ret0;
5011
5012 L1103:
5013 x2 = XEXP (x1, 1);
5014 if (GET_MODE (x2) == SImode && GET_CODE (x2) == PLUS && 1)
5015 goto L1104;
5016 goto ret0;
5017
5018 L1104:
5019 x3 = XEXP (x2, 0);
5020 if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 7 && 1)
5021 goto L1105;
5022 goto ret0;
5023
5024 L1105:
5025 x3 = XEXP (x2, 1);
5026 if (immediate_operand (x3, SImode))
5027 {
5028 ro[3] = x3;
5029 return 226;
5030 }
5031 goto ret0;
5032
5033 L299:
5034 x1 = XVECEXP (x0, 0, 0);
5035 if (GET_CODE (x1) == SET && 1)
5036 goto L300;
5037 goto ret0;
5038
5039 L300:
5040 x2 = XEXP (x1, 0);
5041 if (GET_MODE (x2) == DImode && general_operand (x2, DImode))
5042 {
5043 ro[0] = x2;
5044 goto L301;
5045 }
5046 goto ret0;
5047
5048 L301:
5049 x2 = XEXP (x1, 1);
5050 if (GET_MODE (x2) == DImode && GET_CODE (x2) == FIX && 1)
5051 goto L302;
5052 goto ret0;
5053
5054 L302:
5055 x3 = XEXP (x2, 0);
5056 if (GET_CODE (x3) != FIX)
5057 goto ret0;
5058 switch (GET_MODE (x3))
5059 {
5060 case DFmode:
5061 goto L303;
5062 case SFmode:
5063 goto L329;
5064 }
5065 goto ret0;
5066
5067 L303:
5068 x4 = XEXP (x3, 0);
5069 if (register_operand (x4, DFmode))
5070 {
5071 ro[1] = x4;
5072 goto L304;
5073 }
5074 goto ret0;
5075
5076 L304:
5077 x1 = XVECEXP (x0, 0, 1);
5078 if (GET_CODE (x1) == CLOBBER && 1)
5079 goto L305;
5080 goto ret0;
5081
5082 L305:
5083 x2 = XEXP (x1, 0);
5084 if (rtx_equal_p (x2, ro[1]) && 1)
5085 goto L306;
5086 goto ret0;
5087
5088 L306:
5089 x1 = XVECEXP (x0, 0, 2);
5090 if (GET_CODE (x1) == CLOBBER && 1)
5091 goto L307;
5092 goto ret0;
5093
5094 L307:
5095 x2 = XEXP (x1, 0);
5096 if (memory_operand (x2, SImode))
5097 {
5098 ro[2] = x2;
5099 goto L308;
5100 }
5101 goto ret0;
5102
5103 L308:
5104 x1 = XVECEXP (x0, 0, 3);
5105 if (GET_CODE (x1) == CLOBBER && 1)
5106 goto L309;
5107 goto ret0;
5108
5109 L309:
5110 x2 = XEXP (x1, 0);
5111 if (memory_operand (x2, SImode))
5112 {
5113 ro[3] = x2;
5114 goto L310;
5115 }
5116 goto ret0;
5117
5118 L310:
5119 x1 = XVECEXP (x0, 0, 4);
5120 if (GET_CODE (x1) == CLOBBER && 1)
5121 goto L311;
5122 goto ret0;
5123
5124 L311:
5125 x2 = XEXP (x1, 0);
5126 if (scratch_operand (x2, SImode))
5127 {
5128 ro[4] = x2;
5129 if (TARGET_80387)
5130 return 67;
5131 }
5132 goto ret0;
5133
5134 L329:
5135 x4 = XEXP (x3, 0);
5136 if (register_operand (x4, SFmode))
5137 {
5138 ro[1] = x4;
5139 goto L330;
5140 }
5141 goto ret0;
5142
5143 L330:
5144 x1 = XVECEXP (x0, 0, 1);
5145 if (GET_CODE (x1) == CLOBBER && 1)
5146 goto L331;
5147 goto ret0;
5148
5149 L331:
5150 x2 = XEXP (x1, 0);
5151 if (rtx_equal_p (x2, ro[1]) && 1)
5152 goto L332;
5153 goto ret0;
5154
5155 L332:
5156 x1 = XVECEXP (x0, 0, 2);
5157 if (GET_CODE (x1) == CLOBBER && 1)
5158 goto L333;
5159 goto ret0;
5160
5161 L333:
5162 x2 = XEXP (x1, 0);
5163 if (memory_operand (x2, SImode))
5164 {
5165 ro[2] = x2;
5166 goto L334;
5167 }
5168 goto ret0;
5169
5170 L334:
5171 x1 = XVECEXP (x0, 0, 3);
5172 if (GET_CODE (x1) == CLOBBER && 1)
5173 goto L335;
5174 goto ret0;
5175
5176 L335:
5177 x2 = XEXP (x1, 0);
5178 if (memory_operand (x2, SImode))
5179 {
5180 ro[3] = x2;
5181 goto L336;
5182 }
5183 goto ret0;
5184
5185 L336:
5186 x1 = XVECEXP (x0, 0, 4);
5187 if (GET_CODE (x1) == CLOBBER && 1)
5188 goto L337;
5189 goto ret0;
5190
5191 L337:
5192 x2 = XEXP (x1, 0);
5193 if (scratch_operand (x2, SImode))
5194 {
5195 ro[4] = x2;
5196 if (TARGET_80387)
5197 return 68;
5198 }
5199 goto ret0;
5200
5201 L313:
5202 x1 = XVECEXP (x0, 0, 0);
5203 if (GET_CODE (x1) == SET && 1)
5204 goto L314;
5205 goto ret0;
5206
5207 L314:
5208 x2 = XEXP (x1, 0);
5209 switch (GET_MODE (x2))
5210 {
5211 case DImode:
5212 if (general_operand (x2, DImode))
5213 {
5214 ro[0] = x2;
5215 goto L315;
5216 }
5217 break;
5218 case SImode:
5219 if (general_operand (x2, SImode))
5220 {
5221 ro[0] = x2;
5222 goto L353;
5223 }
5224 }
5225 goto ret0;
5226
5227 L315:
5228 x2 = XEXP (x1, 1);
5229 if (GET_MODE (x2) == DImode && GET_CODE (x2) == FIX && 1)
5230 goto L316;
5231 goto ret0;
5232
5233 L316:
5234 x3 = XEXP (x2, 0);
5235 if (GET_CODE (x3) != FIX)
5236 goto ret0;
5237 switch (GET_MODE (x3))
5238 {
5239 case DFmode:
5240 goto L317;
5241 case SFmode:
5242 goto L343;
5243 }
5244 goto ret0;
5245
5246 L317:
5247 x4 = XEXP (x3, 0);
5248 if (register_operand (x4, DFmode))
5249 {
5250 ro[1] = x4;
5251 goto L318;
5252 }
5253 goto ret0;
5254
5255 L318:
5256 x1 = XVECEXP (x0, 0, 1);
5257 if (GET_CODE (x1) == CLOBBER && 1)
5258 goto L319;
5259 goto ret0;
5260
5261 L319:
5262 x2 = XEXP (x1, 0);
5263 if (rtx_equal_p (x2, ro[1]) && 1)
5264 goto L320;
5265 goto ret0;
5266
5267 L320:
5268 x1 = XVECEXP (x0, 0, 2);
5269 if (GET_CODE (x1) == CLOBBER && 1)
5270 goto L321;
5271 goto ret0;
5272
5273 L321:
5274 x2 = XEXP (x1, 0);
5275 if (memory_operand (x2, SImode))
5276 {
5277 ro[2] = x2;
5278 goto L322;
5279 }
5280 goto ret0;
5281
5282 L322:
5283 x1 = XVECEXP (x0, 0, 3);
5284 if (GET_CODE (x1) == CLOBBER && 1)
5285 goto L323;
5286 goto ret0;
5287
5288 L323:
5289 x2 = XEXP (x1, 0);
5290 if (pnum_clobbers != 0 && memory_operand (x2, SImode))
5291 {
5292 ro[3] = x2;
5293 if (TARGET_80387)
5294 {
5295 *pnum_clobbers = 1;
5296 return 67;
5297 }
5298 }
5299 goto ret0;
5300
5301 L343:
5302 x4 = XEXP (x3, 0);
5303 if (register_operand (x4, SFmode))
5304 {
5305 ro[1] = x4;
5306 goto L344;
5307 }
5308 goto ret0;
5309
5310 L344:
5311 x1 = XVECEXP (x0, 0, 1);
5312 if (GET_CODE (x1) == CLOBBER && 1)
5313 goto L345;
5314 goto ret0;
5315
5316 L345:
5317 x2 = XEXP (x1, 0);
5318 if (rtx_equal_p (x2, ro[1]) && 1)
5319 goto L346;
5320 goto ret0;
5321
5322 L346:
5323 x1 = XVECEXP (x0, 0, 2);
5324 if (GET_CODE (x1) == CLOBBER && 1)
5325 goto L347;
5326 goto ret0;
5327
5328 L347:
5329 x2 = XEXP (x1, 0);
5330 if (memory_operand (x2, SImode))
5331 {
5332 ro[2] = x2;
5333 goto L348;
5334 }
5335 goto ret0;
5336
5337 L348:
5338 x1 = XVECEXP (x0, 0, 3);
5339 if (GET_CODE (x1) == CLOBBER && 1)
5340 goto L349;
5341 goto ret0;
5342
5343 L349:
5344 x2 = XEXP (x1, 0);
5345 if (pnum_clobbers != 0 && memory_operand (x2, SImode))
5346 {
5347 ro[3] = x2;
5348 if (TARGET_80387)
5349 {
5350 *pnum_clobbers = 1;
5351 return 68;
5352 }
5353 }
5354 goto ret0;
5355
5356 L353:
5357 x2 = XEXP (x1, 1);
5358 if (GET_MODE (x2) == SImode && GET_CODE (x2) == FIX && 1)
5359 goto L354;
5360 goto ret0;
5361
5362 L354:
5363 x3 = XEXP (x2, 0);
5364 if (GET_CODE (x3) != FIX)
5365 goto ret0;
5366 switch (GET_MODE (x3))
5367 {
5368 case DFmode:
5369 goto L355;
5370 case SFmode:
5371 goto L377;
5372 }
5373 goto ret0;
5374
5375 L355:
5376 x4 = XEXP (x3, 0);
5377 if (register_operand (x4, DFmode))
5378 {
5379 ro[1] = x4;
5380 goto L356;
5381 }
5382 goto ret0;
5383
5384 L356:
5385 x1 = XVECEXP (x0, 0, 1);
5386 if (GET_CODE (x1) == CLOBBER && 1)
5387 goto L357;
5388 goto ret0;
5389
5390 L357:
5391 x2 = XEXP (x1, 0);
5392 if (memory_operand (x2, SImode))
5393 {
5394 ro[2] = x2;
5395 goto L358;
5396 }
5397 goto ret0;
5398
5399 L358:
5400 x1 = XVECEXP (x0, 0, 2);
5401 if (GET_CODE (x1) == CLOBBER && 1)
5402 goto L359;
5403 goto ret0;
5404
5405 L359:
5406 x2 = XEXP (x1, 0);
5407 if (memory_operand (x2, SImode))
5408 {
5409 ro[3] = x2;
5410 goto L360;
5411 }
5412 goto ret0;
5413
5414 L360:
5415 x1 = XVECEXP (x0, 0, 3);
5416 if (GET_CODE (x1) == CLOBBER && 1)
5417 goto L361;
5418 goto ret0;
5419
5420 L361:
5421 x2 = XEXP (x1, 0);
5422 if (scratch_operand (x2, SImode))
5423 {
5424 ro[4] = x2;
5425 if (TARGET_80387)
5426 return 71;
5427 }
5428 goto ret0;
5429
5430 L377:
5431 x4 = XEXP (x3, 0);
5432 if (register_operand (x4, SFmode))
5433 {
5434 ro[1] = x4;
5435 goto L378;
5436 }
5437 goto ret0;
5438
5439 L378:
5440 x1 = XVECEXP (x0, 0, 1);
5441 if (GET_CODE (x1) == CLOBBER && 1)
5442 goto L379;
5443 goto ret0;
5444
5445 L379:
5446 x2 = XEXP (x1, 0);
5447 if (memory_operand (x2, SImode))
5448 {
5449 ro[2] = x2;
5450 goto L380;
5451 }
5452 goto ret0;
5453
5454 L380:
5455 x1 = XVECEXP (x0, 0, 2);
5456 if (GET_CODE (x1) == CLOBBER && 1)
5457 goto L381;
5458 goto ret0;
5459
5460 L381:
5461 x2 = XEXP (x1, 0);
5462 if (memory_operand (x2, SImode))
5463 {
5464 ro[3] = x2;
5465 goto L382;
5466 }
5467 goto ret0;
5468
5469 L382:
5470 x1 = XVECEXP (x0, 0, 3);
5471 if (GET_CODE (x1) == CLOBBER && 1)
5472 goto L383;
5473 goto ret0;
5474
5475 L383:
5476 x2 = XEXP (x1, 0);
5477 if (scratch_operand (x2, SImode))
5478 {
5479 ro[4] = x2;
5480 if (TARGET_80387)
5481 return 72;
5482 }
5483 goto ret0;
5484
5485 L363:
5486 x1 = XVECEXP (x0, 0, 0);
5487 switch (GET_CODE (x1))
5488 {
5489 case SET:
5490 goto L364;
5491 case CALL:
5492 goto L1165;
5493 }
5494 goto ret0;
5495
5496 L364:
5497 x2 = XEXP (x1, 0);
5498 if (GET_MODE (x2) == SImode && general_operand (x2, SImode))
5499 {
5500 ro[0] = x2;
5501 goto L365;
5502 }
5503 goto ret0;
5504
5505 L365:
5506 x2 = XEXP (x1, 1);
5507 if (GET_MODE (x2) == SImode && GET_CODE (x2) == FIX && 1)
5508 goto L366;
5509 goto ret0;
5510
5511 L366:
5512 x3 = XEXP (x2, 0);
5513 if (GET_CODE (x3) != FIX)
5514 goto ret0;
5515 switch (GET_MODE (x3))
5516 {
5517 case DFmode:
5518 goto L367;
5519 case SFmode:
5520 goto L389;
5521 }
5522 goto ret0;
5523
5524 L367:
5525 x4 = XEXP (x3, 0);
5526 if (register_operand (x4, DFmode))
5527 {
5528 ro[1] = x4;
5529 goto L368;
5530 }
5531 goto ret0;
5532
5533 L368:
5534 x1 = XVECEXP (x0, 0, 1);
5535 if (GET_CODE (x1) == CLOBBER && 1)
5536 goto L369;
5537 goto ret0;
5538
5539 L369:
5540 x2 = XEXP (x1, 0);
5541 if (memory_operand (x2, SImode))
5542 {
5543 ro[2] = x2;
5544 goto L370;
5545 }
5546 goto ret0;
5547
5548 L370:
5549 x1 = XVECEXP (x0, 0, 2);
5550 if (GET_CODE (x1) == CLOBBER && 1)
5551 goto L371;
5552 goto ret0;
5553
5554 L371:
5555 x2 = XEXP (x1, 0);
5556 if (pnum_clobbers != 0 && memory_operand (x2, SImode))
5557 {
5558 ro[3] = x2;
5559 if (TARGET_80387)
5560 {
5561 *pnum_clobbers = 1;
5562 return 71;
5563 }
5564 }
5565 goto ret0;
5566
5567 L389:
5568 x4 = XEXP (x3, 0);
5569 if (register_operand (x4, SFmode))
5570 {
5571 ro[1] = x4;
5572 goto L390;
5573 }
5574 goto ret0;
5575
5576 L390:
5577 x1 = XVECEXP (x0, 0, 1);
5578 if (GET_CODE (x1) == CLOBBER && 1)
5579 goto L391;
5580 goto ret0;
5581
5582 L391:
5583 x2 = XEXP (x1, 0);
5584 if (memory_operand (x2, SImode))
5585 {
5586 ro[2] = x2;
5587 goto L392;
5588 }
5589 goto ret0;
5590
5591 L392:
5592 x1 = XVECEXP (x0, 0, 2);
5593 if (GET_CODE (x1) == CLOBBER && 1)
5594 goto L393;
5595 goto ret0;
5596
5597 L393:
5598 x2 = XEXP (x1, 0);
5599 if (pnum_clobbers != 0 && memory_operand (x2, SImode))
5600 {
5601 ro[3] = x2;
5602 if (TARGET_80387)
5603 {
5604 *pnum_clobbers = 1;
5605 return 72;
5606 }
5607 }
5608 goto ret0;
5609
5610 L1165:
5611 x2 = XEXP (x1, 0);
5612 if (GET_MODE (x2) == QImode && GET_CODE (x2) == MEM && 1)
5613 goto L1166;
5614 L1159:
5615 if (call_insn_operand (x2, QImode))
5616 {
5617 ro[0] = x2;
5618 goto L1160;
5619 }
5620 goto ret0;
5621
5622 L1166:
5623 x3 = XEXP (x2, 0);
5624 if (symbolic_operand (x3, SImode))
5625 {
5626 ro[0] = x3;
5627 goto L1167;
5628 }
5629 goto L1159;
5630
5631 L1167:
5632 x2 = XEXP (x1, 1);
5633 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
5634 goto L1168;
5635 x2 = XEXP (x1, 0);
5636 goto L1159;
5637
5638 L1168:
5639 x1 = XVECEXP (x0, 0, 1);
5640 if (memory_operand (x1, DImode))
5641 {
5642 ro[1] = x1;
5643 goto L1169;
5644 }
5645 x1 = XVECEXP (x0, 0, 0);
5646 x2 = XEXP (x1, 0);
5647 goto L1159;
5648
5649 L1169:
5650 x1 = XVECEXP (x0, 0, 2);
5651 ro[2] = x1;
5652 if (!HALF_PIC_P ())
5653 return 239;
5654 x1 = XVECEXP (x0, 0, 0);
5655 x2 = XEXP (x1, 0);
5656 goto L1159;
5657
5658 L1160:
5659 x2 = XEXP (x1, 1);
5660 if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
5661 goto L1161;
5662 goto ret0;
5663
5664 L1161:
5665 x1 = XVECEXP (x0, 0, 1);
5666 if (memory_operand (x1, DImode))
5667 {
5668 ro[1] = x1;
5669 goto L1162;
5670 }
5671 goto ret0;
5672
5673 L1162:
5674 x1 = XVECEXP (x0, 0, 2);
5675 ro[2] = x1;
5676 return 238;
5677
5678 L1175:
5679 x1 = XVECEXP (x0, 0, 0);
5680 if (GET_CODE (x1) == SET && 1)
5681 goto L1176;
5682 goto ret0;
5683
5684 L1176:
5685 x2 = XEXP (x1, 0);
5686 switch (GET_MODE (x2))
5687 {
5688 case BLKmode:
5689 if (GET_CODE (x2) == MEM && 1)
5690 goto L1177;
5691 break;
5692 case SImode:
5693 if (general_operand (x2, SImode))
5694 {
5695 ro[0] = x2;
5696 goto L1193;
5697 }
5698 }
5699 if (GET_CODE (x2) == CC0 && 1)
5700 goto L1211;
5701 goto ret0;
5702
5703 L1177:
5704 x3 = XEXP (x2, 0);
5705 if (address_operand (x3, SImode))
5706 {
5707 ro[0] = x3;
5708 goto L1178;
5709 }
5710 goto ret0;
5711
5712 L1178:
5713 x2 = XEXP (x1, 1);
5714 if (GET_MODE (x2) == BLKmode && GET_CODE (x2) == MEM && 1)
5715 goto L1179;
5716 goto ret0;
5717
5718 L1179:
5719 x3 = XEXP (x2, 0);
5720 if (address_operand (x3, SImode))
5721 {
5722 ro[1] = x3;
5723 goto L1180;
5724 }
5725 goto ret0;
5726
5727 L1180:
5728 x1 = XVECEXP (x0, 0, 1);
5729 if (GET_CODE (x1) == USE && 1)
5730 goto L1181;
5731 goto ret0;
5732
5733 L1181:
5734 x2 = XEXP (x1, 0);
5735 if (GET_CODE (x2) == CONST_INT && 1)
5736 {
5737 ro[2] = x2;
5738 goto L1182;
5739 }
5740 goto ret0;
5741
5742 L1182:
5743 x1 = XVECEXP (x0, 0, 2);
5744 if (GET_CODE (x1) == USE && 1)
5745 goto L1183;
5746 goto ret0;
5747
5748 L1183:
5749 x2 = XEXP (x1, 0);
5750 if (immediate_operand (x2, SImode))
5751 {
5752 ro[3] = x2;
5753 goto L1184;
5754 }
5755 goto ret0;
5756
5757 L1184:
5758 x1 = XVECEXP (x0, 0, 3);
5759 if (GET_CODE (x1) == CLOBBER && 1)
5760 goto L1185;
5761 goto ret0;
5762
5763 L1185:
5764 x2 = XEXP (x1, 0);
5765 if (scratch_operand (x2, SImode))
5766 {
5767 ro[4] = x2;
5768 goto L1186;
5769 }
5770 goto ret0;
5771
5772 L1186:
5773 x1 = XVECEXP (x0, 0, 4);
5774 if (GET_CODE (x1) == CLOBBER && 1)
5775 goto L1187;
5776 goto ret0;
5777
5778 L1187:
5779 x2 = XEXP (x1, 0);
5780 if (rtx_equal_p (x2, ro[0]) && 1)
5781 goto L1188;
5782 goto ret0;
5783
5784 L1188:
5785 x1 = XVECEXP (x0, 0, 5);
5786 if (GET_CODE (x1) == CLOBBER && 1)
5787 goto L1189;
5788 goto ret0;
5789
5790 L1189:
5791 x2 = XEXP (x1, 0);
5792 if (rtx_equal_p (x2, ro[1]) && 1)
5793 return 245;
5794 goto ret0;
5795
5796 L1193:
5797 x2 = XEXP (x1, 1);
5798 if (GET_MODE (x2) == SImode && GET_CODE (x2) == COMPARE && 1)
5799 goto L1194;
5800 goto ret0;
5801
5802 L1194:
5803 x3 = XEXP (x2, 0);
5804 if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
5805 goto L1195;
5806 goto ret0;
5807
5808 L1195:
5809 x4 = XEXP (x3, 0);
5810 if (address_operand (x4, SImode))
5811 {
5812 ro[1] = x4;
5813 goto L1196;
5814 }
5815 goto ret0;
5816
5817 L1196:
5818 x3 = XEXP (x2, 1);
5819 if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
5820 goto L1197;
5821 goto ret0;
5822
5823 L1197:
5824 x4 = XEXP (x3, 0);
5825 if (address_operand (x4, SImode))
5826 {
5827 ro[2] = x4;
5828 goto L1198;
5829 }
5830 goto ret0;
5831
5832 L1198:
5833 x1 = XVECEXP (x0, 0, 1);
5834 if (GET_CODE (x1) == USE && 1)
5835 goto L1199;
5836 goto ret0;
5837
5838 L1199:
5839 x2 = XEXP (x1, 0);
5840 if (register_operand (x2, SImode))
5841 {
5842 ro[3] = x2;
5843 goto L1200;
5844 }
5845 goto ret0;
5846
5847 L1200:
5848 x1 = XVECEXP (x0, 0, 2);
5849 if (GET_CODE (x1) == USE && 1)
5850 goto L1201;
5851 goto ret0;
5852
5853 L1201:
5854 x2 = XEXP (x1, 0);
5855 if (immediate_operand (x2, SImode))
5856 {
5857 ro[4] = x2;
5858 goto L1202;
5859 }
5860 goto ret0;
5861
5862 L1202:
5863 x1 = XVECEXP (x0, 0, 3);
5864 if (GET_CODE (x1) == CLOBBER && 1)
5865 goto L1203;
5866 goto ret0;
5867
5868 L1203:
5869 x2 = XEXP (x1, 0);
5870 if (rtx_equal_p (x2, ro[1]) && 1)
5871 goto L1204;
5872 goto ret0;
5873
5874 L1204:
5875 x1 = XVECEXP (x0, 0, 4);
5876 if (GET_CODE (x1) == CLOBBER && 1)
5877 goto L1205;
5878 goto ret0;
5879
5880 L1205:
5881 x2 = XEXP (x1, 0);
5882 if (rtx_equal_p (x2, ro[2]) && 1)
5883 goto L1206;
5884 goto ret0;
5885
5886 L1206:
5887 x1 = XVECEXP (x0, 0, 5);
5888 if (GET_CODE (x1) == CLOBBER && 1)
5889 goto L1207;
5890 goto ret0;
5891
5892 L1207:
5893 x2 = XEXP (x1, 0);
5894 if (rtx_equal_p (x2, ro[3]) && 1)
5895 return 247;
5896 goto ret0;
5897
5898 L1211:
5899 x2 = XEXP (x1, 1);
5900 if (GET_MODE (x2) == SImode && GET_CODE (x2) == COMPARE && 1)
5901 goto L1212;
5902 goto ret0;
5903
5904 L1212:
5905 x3 = XEXP (x2, 0);
5906 if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
5907 goto L1213;
5908 goto ret0;
5909
5910 L1213:
5911 x4 = XEXP (x3, 0);
5912 if (address_operand (x4, SImode))
5913 {
5914 ro[0] = x4;
5915 goto L1214;
5916 }
5917 goto ret0;
5918
5919 L1214:
5920 x3 = XEXP (x2, 1);
5921 if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
5922 goto L1215;
5923 goto ret0;
5924
5925 L1215:
5926 x4 = XEXP (x3, 0);
5927 if (address_operand (x4, SImode))
5928 {
5929 ro[1] = x4;
5930 goto L1216;
5931 }
5932 goto ret0;
5933
5934 L1216:
5935 x1 = XVECEXP (x0, 0, 1);
5936 if (GET_CODE (x1) == USE && 1)
5937 goto L1217;
5938 goto ret0;
5939
5940 L1217:
5941 x2 = XEXP (x1, 0);
5942 if (register_operand (x2, SImode))
5943 {
5944 ro[2] = x2;
5945 goto L1218;
5946 }
5947 goto ret0;
5948
5949 L1218:
5950 x1 = XVECEXP (x0, 0, 2);
5951 if (GET_CODE (x1) == USE && 1)
5952 goto L1219;
5953 goto ret0;
5954
5955 L1219:
5956 x2 = XEXP (x1, 0);
5957 if (immediate_operand (x2, SImode))
5958 {
5959 ro[3] = x2;
5960 goto L1220;
5961 }
5962 goto ret0;
5963
5964 L1220:
5965 x1 = XVECEXP (x0, 0, 3);
5966 if (GET_CODE (x1) == CLOBBER && 1)
5967 goto L1221;
5968 goto ret0;
5969
5970 L1221:
5971 x2 = XEXP (x1, 0);
5972 if (rtx_equal_p (x2, ro[0]) && 1)
5973 goto L1222;
5974 goto ret0;
5975
5976 L1222:
5977 x1 = XVECEXP (x0, 0, 4);
5978 if (GET_CODE (x1) == CLOBBER && 1)
5979 goto L1223;
5980 goto ret0;
5981
5982 L1223:
5983 x2 = XEXP (x1, 0);
5984 if (rtx_equal_p (x2, ro[1]) && 1)
5985 goto L1224;
5986 goto ret0;
5987
5988 L1224:
5989 x1 = XVECEXP (x0, 0, 5);
5990 if (GET_CODE (x1) == CLOBBER && 1)
5991 goto L1225;
5992 goto ret0;
5993
5994 L1225:
5995 x2 = XEXP (x1, 0);
5996 if (rtx_equal_p (x2, ro[2]) && 1)
5997 return 248;
5998 goto ret0;
5999
6000 L1117:
6001 x1 = XEXP (x0, 0);
6002 if (call_insn_operand (x1, QImode))
6003 {
6004 ro[0] = x1;
6005 goto L1118;
6006 }
6007 L1120:
6008 if (GET_MODE (x1) == QImode && GET_CODE (x1) == MEM && 1)
6009 goto L1121;
6010 goto ret0;
6011
6012 L1118:
6013 x1 = XEXP (x0, 1);
6014 if (general_operand (x1, SImode))
6015 {
6016 ro[1] = x1;
6017 return 229;
6018 }
6019 x1 = XEXP (x0, 0);
6020 goto L1120;
6021
6022 L1121:
6023 x2 = XEXP (x1, 0);
6024 if (symbolic_operand (x2, SImode))
6025 {
6026 ro[0] = x2;
6027 goto L1122;
6028 }
6029 goto ret0;
6030
6031 L1122:
6032 x1 = XEXP (x0, 1);
6033 if (general_operand (x1, SImode))
6034 {
6035 ro[1] = x1;
6036 if (!HALF_PIC_P ())
6037 return 230;
6038 }
6039 goto ret0;
6040 ret0: return -1;
6041}
6042
6043rtx
6044split_insns (x0, insn)
6045 register rtx x0;
6046 rtx insn;
6047{
6048 register rtx *ro = &recog_operand[0];
6049 register rtx x1, x2, x3, x4, x5, x6;
6050 rtx tem;
6051
6052 goto ret0;
6053 ret0: return 0;
6054}
6055