aboutsummaryrefslogtreecommitdiff
path: root/gnu/gcc2/lib/insn-recog.c
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/gcc2/lib/insn-recog.c')
-rw-r--r--gnu/gcc2/lib/insn-recog.c6158
1 files changed, 0 insertions, 6158 deletions
diff --git a/gnu/gcc2/lib/insn-recog.c b/gnu/gcc2/lib/insn-recog.c
deleted file mode 100644
index bca21b305fe8..000000000000
--- a/gnu/gcc2/lib/insn-recog.c
+++ /dev/null
@@ -1,6158 +0,0 @@
-/* Generated automatically by the program `genrecog'
-from the machine description file `md'. */
-
-#include "config.h"
-#include "rtl.h"
-#include "insn-config.h"
-#include "recog.h"
-#include "real.h"
-#include "output.h"
-#include "flags.h"
-
-
-/* `recog' contains a decision tree
- that recognizes whether the rtx X0 is a valid instruction.
-
- recog returns -1 if the rtx is not valid.
- If the rtx is valid, recog returns a nonnegative number
- which is the insn code number for the pattern that matched.
- This is the same as the order in the machine description of
- the entry that matched. This number can be used as an index into
- entry that matched. This number can be used as an index into various
- insn_* tables, such as insn_templates, insn_outfun, and insn_n_operands
- (found in insn-output.c).
-
- The third argument to recog is an optional pointer to an int.
- If present, recog will accept a pattern if it matches except for
- missing CLOBBER expressions at the end. In that case, the value
- pointed to by the optional pointer will be set to the number of
- CLOBBERs that need to be added (it should be initialized to zero by
- the caller). If it is set nonzero, the caller should allocate a
- PARALLEL of the appropriate size, copy the initial entries, and call
- add_clobbers (found in insn-emit.c) to fill in the CLOBBERs.*/
-
-rtx recog_operand[MAX_RECOG_OPERANDS];
-
-rtx *recog_operand_loc[MAX_RECOG_OPERANDS];
-
-rtx *recog_dup_loc[MAX_DUP_OPERANDS];
-
-char recog_dup_num[MAX_DUP_OPERANDS];
-
-#define operands recog_operand
-
-int
-recog_1 (x0, insn, pnum_clobbers)
- register rtx x0;
- rtx insn;
- int *pnum_clobbers;
-{
- register rtx *ro = &recog_operand[0];
- register rtx x1, x2, x3, x4, x5, x6;
- int tem;
-
- x1 = XEXP (x0, 1);
- switch (GET_MODE (x1))
- {
- case SImode:
- if (nonimmediate_operand (x1, SImode))
- {
- ro[0] = x1;
- return 0;
- }
- break;
- case HImode:
- if (nonimmediate_operand (x1, HImode))
- {
- ro[0] = x1;
- return 2;
- }
- break;
- case QImode:
- if (nonimmediate_operand (x1, QImode))
- {
- ro[0] = x1;
- return 4;
- }
- break;
- case SFmode:
- if (pnum_clobbers != 0 && register_operand (x1, SFmode))
- {
- ro[0] = x1;
- if (TARGET_80387 && ! TARGET_IEEE_FP)
- {
- *pnum_clobbers = 1;
- return 6;
- }
- }
- break;
- case DFmode:
- if (pnum_clobbers != 0 && register_operand (x1, DFmode))
- {
- ro[0] = x1;
- if (TARGET_80387 && ! TARGET_IEEE_FP)
- {
- *pnum_clobbers = 1;
- return 8;
- }
- }
- }
- switch (GET_CODE (x1))
- {
- case COMPARE:
- goto L30;
- case ZERO_EXTRACT:
- goto L813;
- }
- L52:
- if (VOIDmode_compare_op (x1, VOIDmode))
- {
- ro[2] = x1;
- goto L82;
- }
- L125:
- switch (GET_MODE (x1))
- {
- case CCFPEQmode:
- switch (GET_CODE (x1))
- {
- case COMPARE:
- goto L126;
- }
- break;
- case SImode:
- switch (GET_CODE (x1))
- {
- case AND:
- goto L187;
- }
- break;
- case HImode:
- switch (GET_CODE (x1))
- {
- case AND:
- goto L192;
- }
- break;
- case QImode:
- if (GET_CODE (x1) == AND && 1)
- goto L197;
- }
- goto ret0;
-
- L30:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case SImode:
- if (nonimmediate_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L31;
- }
- break;
- case HImode:
- if (nonimmediate_operand (x2, HImode))
- {
- ro[0] = x2;
- goto L36;
- }
- break;
- case QImode:
- if (nonimmediate_operand (x2, QImode))
- {
- ro[0] = x2;
- goto L41;
- }
- }
- goto L52;
-
- L31:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- if (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)
- return 10;
- }
- goto L52;
-
- L36:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- if (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)
- return 12;
- }
- goto L52;
-
- L41:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- if (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM)
- return 14;
- }
- goto L52;
-
- L813:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case SImode:
- if (register_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L814;
- }
- break;
- case QImode:
- if (general_operand (x2, QImode))
- {
- ro[0] = x2;
- goto L826;
- }
- }
- goto L52;
-
- L814:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) != CONST_INT)
- {
- goto L52;
- }
- if (XWINT (x2, 0) == 1 && 1)
- goto L815;
- L820:
- ro[1] = x2;
- goto L821;
-
- L815:
- x2 = XEXP (x1, 2);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- if (GET_CODE (operands[1]) != CONST_INT)
- return 167;
- }
- x2 = XEXP (x1, 1);
- goto L820;
-
- L821:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == CONST_INT && 1)
- {
- ro[2] = x2;
- return 168;
- }
- goto L52;
-
- L826:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && 1)
- {
- ro[1] = x2;
- goto L827;
- }
- goto L52;
-
- L827:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == CONST_INT && 1)
- {
- ro[2] = x2;
- if (GET_CODE (operands[0]) != MEM || ! MEM_VOLATILE_P (operands[0]))
- return 169;
- }
- goto L52;
-
- L82:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case DFmode:
- switch (GET_CODE (x2))
- {
- case FLOAT:
- goto L83;
- case FLOAT_EXTEND:
- goto L113;
- case SUBREG:
- case REG:
- case MEM:
- if (nonimmediate_operand (x2, DFmode))
- {
- ro[0] = x2;
- goto L54;
- }
- }
- L67:
- if (register_operand (x2, DFmode))
- {
- ro[0] = x2;
- goto L68;
- }
- break;
- case SFmode:
- if (GET_CODE (x2) == FLOAT && 1)
- goto L169;
- if (nonimmediate_operand (x2, SFmode))
- {
- ro[0] = x2;
- goto L140;
- }
- L153:
- if (register_operand (x2, SFmode))
- {
- ro[0] = x2;
- goto L154;
- }
- }
- goto L125;
-
- L83:
- x3 = XEXP (x2, 0);
- if (nonimmediate_operand (x3, SImode))
- {
- ro[0] = x3;
- goto L84;
- }
- goto L125;
-
- L84:
- x2 = XEXP (x1, 1);
- if (pnum_clobbers != 0 && register_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 18;
- }
- }
- goto L125;
-
- L113:
- x3 = XEXP (x2, 0);
- if (nonimmediate_operand (x3, SFmode))
- {
- ro[0] = x3;
- goto L114;
- }
- goto L125;
-
- L114:
- x2 = XEXP (x1, 1);
- if (pnum_clobbers != 0 && register_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 20;
- }
- }
- goto L125;
-
- L54:
- x2 = XEXP (x1, 1);
- if (pnum_clobbers != 0 && nonimmediate_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387
- && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM))
- {
- *pnum_clobbers = 1;
- return 16;
- }
- }
- x2 = XEXP (x1, 0);
- goto L67;
-
- L68:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) != DFmode)
- {
- goto L125;
- }
- switch (GET_CODE (x2))
- {
- case FLOAT:
- goto L69;
- case FLOAT_EXTEND:
- goto L99;
- }
- goto L125;
-
- L69:
- x3 = XEXP (x2, 0);
- if (pnum_clobbers != 0 && nonimmediate_operand (x3, SImode))
- {
- ro[1] = x3;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 17;
- }
- }
- goto L125;
-
- L99:
- x3 = XEXP (x2, 0);
- if (pnum_clobbers != 0 && nonimmediate_operand (x3, SFmode))
- {
- ro[1] = x3;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 19;
- }
- }
- goto L125;
-
- L169:
- x3 = XEXP (x2, 0);
- if (nonimmediate_operand (x3, SImode))
- {
- ro[0] = x3;
- goto L170;
- }
- goto L125;
-
- L170:
- x2 = XEXP (x1, 1);
- if (pnum_clobbers != 0 && register_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 24;
- }
- }
- goto L125;
-
- L140:
- x2 = XEXP (x1, 1);
- if (pnum_clobbers != 0 && nonimmediate_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387
- && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM))
- {
- *pnum_clobbers = 1;
- return 22;
- }
- }
- x2 = XEXP (x1, 0);
- goto L153;
-
- L154:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SFmode && GET_CODE (x2) == FLOAT && 1)
- goto L155;
- goto L125;
-
- L155:
- x3 = XEXP (x2, 0);
- if (pnum_clobbers != 0 && nonimmediate_operand (x3, SImode))
- {
- ro[1] = x3;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 23;
- }
- }
- goto L125;
-
- L126:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case DFmode:
- if (register_operand (x2, DFmode))
- {
- ro[0] = x2;
- goto L127;
- }
- break;
- case SFmode:
- if (register_operand (x2, SFmode))
- {
- ro[0] = x2;
- goto L183;
- }
- }
- goto ret0;
-
- L127:
- x2 = XEXP (x1, 1);
- if (pnum_clobbers != 0 && register_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 21;
- }
- }
- goto ret0;
-
- L183:
- x2 = XEXP (x1, 1);
- if (pnum_clobbers != 0 && register_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 25;
- }
- }
- goto ret0;
-
- L187:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L188;
- }
- goto ret0;
-
- L188:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- return 32;
- }
- goto ret0;
-
- L192:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[0] = x2;
- goto L193;
- }
- goto ret0;
-
- L193:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- return 33;
- }
- goto ret0;
-
- L197:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[0] = x2;
- goto L198;
- }
- goto ret0;
-
- L198:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- return 34;
- }
- goto ret0;
- ret0: return -1;
-}
-
-int
-recog_2 (x0, insn, pnum_clobbers)
- register rtx x0;
- rtx insn;
- int *pnum_clobbers;
-{
- register rtx *ro = &recog_operand[0];
- register rtx x1, x2, x3, x4, x5, x6;
- int tem;
-
- x1 = XEXP (x0, 1);
- x2 = XEXP (x1, 0);
- switch (GET_CODE (x2))
- {
- case EQ:
- goto L882;
- case NE:
- goto L891;
- case GT:
- goto L900;
- case GTU:
- goto L909;
- case LT:
- goto L918;
- case LTU:
- goto L927;
- case GE:
- goto L936;
- case GEU:
- goto L945;
- case LE:
- goto L954;
- case LEU:
- goto L963;
- }
- goto ret0;
-
- L882:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L883;
- goto ret0;
-
- L883:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L884;
- goto ret0;
-
- L884:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L885;
- case PC:
- goto L975;
- }
- goto ret0;
-
- L885:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L886;
-
- L886:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 191;
- goto ret0;
-
- L975:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L976;
- goto ret0;
-
- L976:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 210;
-
- L891:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L892;
- goto ret0;
-
- L892:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L893;
- goto ret0;
-
- L893:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L894;
- case PC:
- goto L984;
- }
- goto ret0;
-
- L894:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L895;
-
- L895:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 193;
- goto ret0;
-
- L984:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L985;
- goto ret0;
-
- L985:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 211;
-
- L900:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L901;
- goto ret0;
-
- L901:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L902;
- goto ret0;
-
- L902:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L903;
- case PC:
- goto L993;
- }
- goto ret0;
-
- L903:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L904;
-
- L904:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 195;
- goto ret0;
-
- L993:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L994;
- goto ret0;
-
- L994:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 212;
-
- L909:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L910;
- goto ret0;
-
- L910:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L911;
- goto ret0;
-
- L911:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L912;
- case PC:
- goto L1002;
- }
- goto ret0;
-
- L912:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L913;
-
- L913:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 197;
- goto ret0;
-
- L1002:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L1003;
- goto ret0;
-
- L1003:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 213;
-
- L918:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L919;
- goto ret0;
-
- L919:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L920;
- goto ret0;
-
- L920:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L921;
- case PC:
- goto L1011;
- }
- goto ret0;
-
- L921:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L922;
-
- L922:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 199;
- goto ret0;
-
- L1011:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L1012;
- goto ret0;
-
- L1012:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 214;
-
- L927:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L928;
- goto ret0;
-
- L928:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L929;
- goto ret0;
-
- L929:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L930;
- case PC:
- goto L1020;
- }
- goto ret0;
-
- L930:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L931;
-
- L931:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 201;
- goto ret0;
-
- L1020:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L1021;
- goto ret0;
-
- L1021:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 215;
-
- L936:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L937;
- goto ret0;
-
- L937:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L938;
- goto ret0;
-
- L938:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L939;
- case PC:
- goto L1029;
- }
- goto ret0;
-
- L939:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L940;
-
- L940:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 203;
- goto ret0;
-
- L1029:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L1030;
- goto ret0;
-
- L1030:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 216;
-
- L945:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L946;
- goto ret0;
-
- L946:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L947;
- goto ret0;
-
- L947:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L948;
- case PC:
- goto L1038;
- }
- goto ret0;
-
- L948:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L949;
-
- L949:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 205;
- goto ret0;
-
- L1038:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L1039;
- goto ret0;
-
- L1039:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 217;
-
- L954:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L955;
- goto ret0;
-
- L955:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L956;
- goto ret0;
-
- L956:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L957;
- case PC:
- goto L1047;
- }
- goto ret0;
-
- L957:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L958;
-
- L958:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 207;
- goto ret0;
-
- L1047:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L1048;
- goto ret0;
-
- L1048:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 218;
-
- L963:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CC0 && 1)
- goto L964;
- goto ret0;
-
- L964:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 0 && 1)
- goto L965;
- goto ret0;
-
- L965:
- x2 = XEXP (x1, 1);
- switch (GET_CODE (x2))
- {
- case LABEL_REF:
- goto L966;
- case PC:
- goto L1056;
- }
- goto ret0;
-
- L966:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- goto L967;
-
- L967:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == PC && 1)
- return 209;
- goto ret0;
-
- L1056:
- x2 = XEXP (x1, 2);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L1057;
- goto ret0;
-
- L1057:
- x3 = XEXP (x2, 0);
- ro[0] = x3;
- return 219;
- ret0: return -1;
-}
-
-int
-recog_3 (x0, insn, pnum_clobbers)
- register rtx x0;
- rtx insn;
- int *pnum_clobbers;
-{
- register rtx *ro = &recog_operand[0];
- register rtx x1, x2, x3, x4, x5, x6;
- int tem;
-
- x1 = XEXP (x0, 0);
- switch (GET_MODE (x1))
- {
- case SImode:
- switch (GET_CODE (x1))
- {
- case MEM:
- if (push_operand (x1, SImode))
- {
- ro[0] = x1;
- goto L201;
- }
- break;
- case ZERO_EXTRACT:
- goto L792;
- }
- L208:
- if (general_operand (x1, SImode))
- {
- ro[0] = x1;
- goto L257;
- }
- L431:
- if (register_operand (x1, SImode))
- {
- ro[0] = x1;
- goto L432;
- }
- L439:
- if (general_operand (x1, SImode))
- {
- ro[0] = x1;
- goto L440;
- }
- break;
- case HImode:
- if (GET_CODE (x1) == MEM && push_operand (x1, HImode))
- {
- ro[0] = x1;
- goto L212;
- }
- L214:
- if (general_operand (x1, HImode))
- {
- ro[0] = x1;
- goto L261;
- }
- break;
- case QImode:
- if (GET_CODE (x1) == MEM && push_operand (x1, QImode))
- {
- ro[0] = x1;
- goto L222;
- }
- L224:
- if (general_operand (x1, QImode))
- {
- ro[0] = x1;
- goto L427;
- }
- L829:
- if (register_operand (x1, QImode))
- {
- ro[0] = x1;
- goto L830;
- }
- break;
- case SFmode:
- if (GET_CODE (x1) == MEM && push_operand (x1, SFmode))
- {
- ro[0] = x1;
- goto L232;
- }
- L234:
- if (general_operand (x1, SFmode))
- {
- ro[0] = x1;
- goto L235;
- }
- L399:
- if (register_operand (x1, SFmode))
- {
- ro[0] = x1;
- goto L400;
- }
- break;
- case DFmode:
- if (GET_CODE (x1) == MEM && push_operand (x1, DFmode))
- {
- ro[0] = x1;
- goto L238;
- }
- L247:
- if (general_operand (x1, DFmode))
- {
- ro[0] = x1;
- goto L289;
- }
- L395:
- if (register_operand (x1, DFmode))
- {
- ro[0] = x1;
- goto L396;
- }
- break;
- case DImode:
- if (GET_CODE (x1) == MEM && push_operand (x1, DImode))
- {
- ro[0] = x1;
- goto L251;
- }
- L253:
- if (general_operand (x1, DImode))
- {
- ro[0] = x1;
- goto L412;
- }
- L268:
- if (register_operand (x1, DImode))
- {
- ro[0] = x1;
- goto L269;
- }
- }
- switch (GET_CODE (x1))
- {
- case CC0:
- goto L2;
- case STRICT_LOW_PART:
- goto L218;
- case PC:
- goto L1081;
- }
- L1147:
- ro[0] = x1;
- goto L1148;
- L1236:
- switch (GET_MODE (x1))
- {
- case SImode:
- if (register_operand (x1, SImode))
- {
- ro[0] = x1;
- goto L1237;
- }
- break;
- case HImode:
- if (register_operand (x1, HImode))
- {
- ro[0] = x1;
- goto L1252;
- }
- break;
- case DFmode:
- if (register_operand (x1, DFmode))
- {
- ro[0] = x1;
- goto L1258;
- }
- break;
- case SFmode:
- if (register_operand (x1, SFmode))
- {
- ro[0] = x1;
- goto L1287;
- }
- }
- goto ret0;
-
- L201:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, SImode))
- goto L205;
- x1 = XEXP (x0, 0);
- goto L208;
-
- L205:
- ro[1] = x1;
- if (! TARGET_486)
- return 35;
- L206:
- ro[1] = x1;
- if (TARGET_486)
- return 36;
- x1 = XEXP (x0, 0);
- goto L208;
-
- L792:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && general_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L793;
- }
- goto L1147;
-
- L793:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 1 && 1)
- goto L794;
- goto L1147;
-
- L794:
- x2 = XEXP (x1, 2);
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L795;
- }
- goto L1147;
-
- L795:
- x1 = XEXP (x0, 1);
- if (GET_CODE (x1) == CONST_INT && 1)
- {
- ro[3] = x1;
- if (! TARGET_486 && GET_CODE (operands[2]) != CONST_INT)
- return 164;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L257:
- x1 = XEXP (x0, 1);
- switch (GET_MODE (x1))
- {
- case SImode:
- switch (GET_CODE (x1))
- {
- case ZERO_EXTEND:
- goto L258;
- case SIGN_EXTEND:
- goto L278;
- case PLUS:
- goto L418;
- }
- }
- if (general_operand (x1, SImode))
- {
- ro[1] = x1;
- return 38;
- }
- x1 = XEXP (x0, 0);
- goto L431;
-
- L258:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case HImode:
- if (nonimmediate_operand (x2, HImode))
- {
- ro[1] = x2;
- return 52;
- }
- break;
- case QImode:
- if (nonimmediate_operand (x2, QImode))
- {
- ro[1] = x2;
- return 54;
- }
- }
- x1 = XEXP (x0, 0);
- goto L431;
-
- L278:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case HImode:
- if (nonimmediate_operand (x2, HImode))
- {
- ro[1] = x2;
- return 57;
- }
- break;
- case QImode:
- if (nonimmediate_operand (x2, QImode))
- {
- ro[1] = x2;
- return 59;
- }
- }
- x1 = XEXP (x0, 0);
- goto L431;
-
- L418:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L419;
- }
- x1 = XEXP (x0, 0);
- goto L431;
-
- L419:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- return 82;
- }
- x1 = XEXP (x0, 0);
- goto L431;
-
- L432:
- x1 = XEXP (x0, 1);
- if (address_operand (x1, QImode))
- {
- ro[1] = x1;
- return 85;
- }
- x1 = XEXP (x0, 0);
- goto L439;
-
- L440:
- x1 = XEXP (x0, 1);
- if (GET_MODE (x1) != SImode)
- {
- x1 = XEXP (x0, 0);
- goto L1147;
- }
- switch (GET_CODE (x1))
- {
- case MINUS:
- goto L441;
- case MULT:
- goto L468;
- case AND:
- goto L541;
- case IOR:
- goto L556;
- case XOR:
- goto L799;
- case NEG:
- goto L590;
- case NOT:
- goto L667;
- case ASHIFT:
- goto L692;
- case ASHIFTRT:
- goto L720;
- case LSHIFTRT:
- goto L748;
- case ROTATE:
- goto L763;
- case ROTATERT:
- goto L778;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L441:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L442;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L442:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- return 89;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L468:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L469;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L469:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- goto L475;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L475:
- ro[2] = x2;
- if (GET_CODE (operands[2]) == CONST_INT && INTVAL (operands[2]) == 0x80)
- return 96;
- L476:
- ro[2] = x2;
- return 97;
-
- L541:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L542;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L542:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- return 109;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L556:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L557;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L557:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- return 112;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L799:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == ASHIFT && 1)
- goto L800;
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L807;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L800:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 1 && 1)
- goto L801;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L801:
- x3 = XEXP (x2, 1);
- if (general_operand (x3, SImode))
- {
- ro[1] = x3;
- goto L802;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L802:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- if (! TARGET_486 && GET_CODE (operands[1]) != CONST_INT)
- return 165;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L807:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == ASHIFT && 1)
- goto L808;
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- return 115;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L808:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == 1 && 1)
- goto L809;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L809:
- x3 = XEXP (x2, 1);
- if (general_operand (x3, SImode))
- {
- ro[2] = x3;
- if (! TARGET_486 && GET_CODE (operands[2]) != CONST_INT)
- return 166;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L590:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- return 119;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L667:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- return 137;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L692:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L693;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L693:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, SImode))
- {
- ro[2] = x2;
- return 143;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L720:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L721;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L721:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, SImode))
- {
- ro[2] = x2;
- return 149;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L748:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L749;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L749:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, SImode))
- {
- ro[2] = x2;
- return 155;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L763:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L764;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L764:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, SImode))
- {
- ro[2] = x2;
- return 158;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L778:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L779;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L779:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, SImode))
- {
- ro[2] = x2;
- return 161;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L212:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, HImode))
- {
- ro[1] = x1;
- return 39;
- }
- x1 = XEXP (x0, 0);
- goto L214;
-
- L261:
- x1 = XEXP (x0, 1);
- switch (GET_MODE (x1))
- {
- case HImode:
- switch (GET_CODE (x1))
- {
- case ZERO_EXTEND:
- goto L262;
- case SIGN_EXTEND:
- goto L282;
- case PLUS:
- goto L423;
- case MINUS:
- goto L446;
- case AND:
- goto L546;
- case IOR:
- goto L561;
- case XOR:
- goto L576;
- case NEG:
- goto L594;
- case NOT:
- goto L671;
- case ASHIFT:
- goto L697;
- case ASHIFTRT:
- goto L725;
- case LSHIFTRT:
- goto L753;
- case ROTATE:
- goto L768;
- case ROTATERT:
- goto L783;
- }
- break;
- case SImode:
- if (GET_CODE (x1) == MULT && 1)
- goto L480;
- }
- if (general_operand (x1, HImode))
- {
- ro[1] = x1;
- return 40;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L262:
- x2 = XEXP (x1, 0);
- if (nonimmediate_operand (x2, QImode))
- {
- ro[1] = x2;
- return 53;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L282:
- x2 = XEXP (x1, 0);
- if (nonimmediate_operand (x2, QImode))
- {
- ro[1] = x2;
- return 58;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L423:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L424;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L424:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, HImode))
- {
- ro[2] = x2;
- return 83;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L446:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L447;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L447:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, HImode))
- {
- ro[2] = x2;
- return 90;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L546:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L547;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L547:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, HImode))
- {
- ro[2] = x2;
- return 110;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L561:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L562;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L562:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, HImode))
- {
- ro[2] = x2;
- return 113;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L576:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L577;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L577:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, HImode))
- {
- ro[2] = x2;
- return 116;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L594:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- return 120;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L671:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- return 138;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L697:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L698;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L698:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, HImode))
- {
- ro[2] = x2;
- return 144;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L725:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L726;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L726:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, HImode))
- {
- ro[2] = x2;
- return 150;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L753:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L754;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L754:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, HImode))
- {
- ro[2] = x2;
- return 156;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L768:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L769;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L769:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, HImode))
- {
- ro[2] = x2;
- return 159;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L783:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L784;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L784:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, HImode))
- {
- ro[2] = x2;
- return 162;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L480:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == HImode && GET_CODE (x2) == ZERO_EXTEND && 1)
- goto L481;
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L457;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L481:
- x3 = XEXP (x2, 0);
- if (nonimmediate_operand (x3, QImode))
- {
- ro[1] = x3;
- goto L482;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L482:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == HImode && GET_CODE (x2) == ZERO_EXTEND && 1)
- goto L483;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L483:
- x3 = XEXP (x2, 0);
- if (nonimmediate_operand (x3, QImode))
- {
- ro[2] = x3;
- return 98;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L457:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, HImode))
- goto L463;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L463:
- ro[2] = x2;
- if (GET_CODE (operands[2]) == CONST_INT && INTVAL (operands[2]) == 0x80)
- return 94;
- L464:
- ro[2] = x2;
- return 95;
-
- L222:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, QImode))
- {
- ro[1] = x1;
- return 42;
- }
- x1 = XEXP (x0, 0);
- goto L224;
-
- L427:
- x1 = XEXP (x0, 1);
- switch (GET_MODE (x1))
- {
- case QImode:
- switch (GET_CODE (x1))
- {
- case PLUS:
- goto L428;
- case MINUS:
- goto L451;
- case DIV:
- goto L487;
- case UDIV:
- goto L492;
- case AND:
- goto L551;
- case IOR:
- goto L566;
- case XOR:
- goto L581;
- case NEG:
- goto L598;
- case NOT:
- goto L675;
- case ASHIFT:
- goto L702;
- case ASHIFTRT:
- goto L730;
- case LSHIFTRT:
- goto L758;
- case ROTATE:
- goto L773;
- case ROTATERT:
- goto L788;
- }
- }
- if (general_operand (x1, QImode))
- {
- ro[1] = x1;
- return 43;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L428:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L429;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L429:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[2] = x2;
- return 84;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L451:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L452;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L452:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[2] = x2;
- return 91;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L487:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L488;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L488:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[2] = x2;
- return 101;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L492:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, HImode))
- {
- ro[1] = x2;
- goto L493;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L493:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[2] = x2;
- return 102;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L551:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L552;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L552:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[2] = x2;
- return 111;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L566:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L567;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L567:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[2] = x2;
- return 114;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L581:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L582;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L582:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, QImode))
- {
- ro[2] = x2;
- return 117;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L598:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- return 121;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L675:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- return 139;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L702:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L703;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L703:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, QImode))
- {
- ro[2] = x2;
- return 145;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L730:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L731;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L731:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, QImode))
- {
- ro[2] = x2;
- return 151;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L758:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L759;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L759:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, QImode))
- {
- ro[2] = x2;
- return 157;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L773:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L774;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L774:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, QImode))
- {
- ro[2] = x2;
- return 160;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L788:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L789;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L789:
- x2 = XEXP (x1, 1);
- if (nonmemory_operand (x2, QImode))
- {
- ro[2] = x2;
- return 163;
- }
- x1 = XEXP (x0, 0);
- goto L829;
-
- L830:
- x1 = XEXP (x0, 1);
- if (GET_MODE (x1) != QImode)
- {
- x1 = XEXP (x0, 0);
- goto L1147;
- }
- switch (GET_CODE (x1))
- {
- case EQ:
- goto L831;
- case NE:
- goto L836;
- case GT:
- goto L841;
- case GTU:
- goto L846;
- case LT:
- goto L851;
- case LTU:
- goto L856;
- case GE:
- goto L861;
- case GEU:
- goto L866;
- case LE:
- goto L871;
- case LEU:
- goto L876;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L831:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L832;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L832:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 171;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L836:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L837;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L837:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 173;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L841:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L842;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L842:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 175;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L846:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L847;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L847:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 177;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L851:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L852;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L852:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 179;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L856:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L857;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L857:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 181;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L861:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L862;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L862:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 183;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L866:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L867;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L867:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 185;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L871:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L872;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L872:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 187;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L876:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CC0 && 1)
- goto L877;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L877:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- return 189;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L232:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, SFmode))
- {
- ro[1] = x1;
- return 45;
- }
- x1 = XEXP (x0, 0);
- goto L234;
-
- L235:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, SFmode))
- {
- ro[1] = x1;
- return 46;
- }
- x1 = XEXP (x0, 0);
- goto L399;
-
- L400:
- x1 = XEXP (x0, 1);
- if (GET_MODE (x1) != SFmode)
- {
- x1 = XEXP (x0, 0);
- goto L1147;
- }
- switch (GET_CODE (x1))
- {
- case FLOAT:
- goto L401;
- case NEG:
- goto L602;
- case ABS:
- goto L615;
- case SQRT:
- goto L628;
- case UNSPEC:
- if (XINT (x1, 1) == 1 && XVECLEN (x1, 0) == 1 && 1)
- goto L645;
- if (XINT (x1, 1) == 2 && XVECLEN (x1, 0) == 1 && 1)
- goto L658;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L401:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case DImode:
- if (nonimmediate_operand (x2, DImode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 78;
- }
- break;
- case SImode:
- if (nonimmediate_operand (x2, SImode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 80;
- }
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L602:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 122;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L615:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 125;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L628:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 128;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L645:
- x2 = XVECEXP (x1, 0, 0);
- if (register_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 132;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L658:
- x2 = XVECEXP (x1, 0, 0);
- if (register_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 135;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L238:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, DFmode))
- {
- ro[1] = x1;
- return 47;
- }
- x1 = XEXP (x0, 0);
- goto L247;
-
- L289:
- x1 = XEXP (x0, 1);
- if (GET_MODE (x1) == DFmode && GET_CODE (x1) == FLOAT_EXTEND && 1)
- goto L290;
- if (general_operand (x1, DFmode))
- {
- ro[1] = x1;
- return 49;
- }
- x1 = XEXP (x0, 0);
- goto L395;
-
- L290:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, SFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 60;
- }
- x1 = XEXP (x0, 0);
- goto L395;
-
- L396:
- x1 = XEXP (x0, 1);
- if (GET_MODE (x1) != DFmode)
- {
- x1 = XEXP (x0, 0);
- goto L1147;
- }
- switch (GET_CODE (x1))
- {
- case FLOAT:
- goto L397;
- case NEG:
- goto L610;
- case ABS:
- goto L623;
- case SQRT:
- goto L636;
- case UNSPEC:
- if (XINT (x1, 1) == 1 && XVECLEN (x1, 0) == 1 && 1)
- goto L649;
- if (XINT (x1, 1) == 2 && XVECLEN (x1, 0) == 1 && 1)
- goto L662;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L397:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case DImode:
- if (nonimmediate_operand (x2, DImode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 77;
- }
- break;
- case SImode:
- if (nonimmediate_operand (x2, SImode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 79;
- }
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L610:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == DFmode && GET_CODE (x2) == FLOAT_EXTEND && 1)
- goto L611;
- if (general_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 123;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L611:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SFmode))
- {
- ro[1] = x3;
- if (TARGET_80387)
- return 124;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L623:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == DFmode && GET_CODE (x2) == FLOAT_EXTEND && 1)
- goto L624;
- if (general_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387)
- return 126;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L624:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SFmode))
- {
- ro[1] = x3;
- if (TARGET_80387)
- return 127;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L636:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == DFmode && GET_CODE (x2) == FLOAT_EXTEND && 1)
- goto L637;
- if (general_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 129;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L637:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SFmode))
- {
- ro[1] = x3;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 130;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L649:
- x2 = XVECEXP (x1, 0, 0);
- if (GET_MODE (x2) != DFmode)
- {
- x1 = XEXP (x0, 0);
- goto L1147;
- }
- if (GET_CODE (x2) == FLOAT_EXTEND && 1)
- goto L650;
- if (register_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 131;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L650:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, SFmode))
- {
- ro[1] = x3;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 133;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L662:
- x2 = XVECEXP (x1, 0, 0);
- if (GET_MODE (x2) != DFmode)
- {
- x1 = XEXP (x0, 0);
- goto L1147;
- }
- if (GET_CODE (x2) == FLOAT_EXTEND && 1)
- goto L663;
- if (register_operand (x2, DFmode))
- {
- ro[1] = x2;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 134;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L663:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, SFmode))
- {
- ro[1] = x3;
- if (TARGET_80387 && (TARGET_IEEE_FP || flag_fast_math))
- return 136;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L251:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, DImode))
- {
- ro[1] = x1;
- return 50;
- }
- x1 = XEXP (x0, 0);
- goto L253;
-
- L412:
- x1 = XEXP (x0, 1);
- switch (GET_MODE (x1))
- {
- case DImode:
- switch (GET_CODE (x1))
- {
- case PLUS:
- goto L413;
- case MINUS:
- goto L436;
- case NEG:
- goto L586;
- }
- }
- if (general_operand (x1, DImode))
- {
- ro[1] = x1;
- return 51;
- }
- x1 = XEXP (x0, 0);
- goto L268;
-
- L413:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, DImode))
- {
- ro[1] = x2;
- goto L414;
- }
- x1 = XEXP (x0, 0);
- goto L268;
-
- L414:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, DImode))
- {
- ro[2] = x2;
- return 81;
- }
- x1 = XEXP (x0, 0);
- goto L268;
-
- L436:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, DImode))
- {
- ro[1] = x2;
- goto L437;
- }
- x1 = XEXP (x0, 0);
- goto L268;
-
- L437:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, DImode))
- {
- ro[2] = x2;
- return 88;
- }
- x1 = XEXP (x0, 0);
- goto L268;
-
- L586:
- x2 = XEXP (x1, 0);
- if (general_operand (x2, DImode))
- {
- ro[1] = x2;
- return 118;
- }
- x1 = XEXP (x0, 0);
- goto L268;
-
- L269:
- x1 = XEXP (x0, 1);
- if (GET_MODE (x1) != DImode)
- {
- x1 = XEXP (x0, 0);
- goto L1147;
- }
- switch (GET_CODE (x1))
- {
- case ZERO_EXTEND:
- goto L270;
- case SIGN_EXTEND:
- goto L274;
- case ASHIFT:
- goto L679;
- case ASHIFTRT:
- goto L707;
- case LSHIFTRT:
- goto L735;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L270:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, SImode))
- {
- ro[1] = x2;
- return 55;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L274:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, SImode))
- {
- ro[1] = x2;
- return 56;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L679:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, DImode))
- {
- ro[1] = x2;
- goto L680;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L680:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && 1)
- {
- ro[2] = x2;
- return 141;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L707:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, DImode))
- {
- ro[1] = x2;
- goto L708;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L708:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && 1)
- {
- ro[2] = x2;
- return 147;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L735:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, DImode))
- {
- ro[1] = x2;
- goto L736;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L736:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && 1)
- {
- ro[2] = x2;
- return 153;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
- L2:
- tem = recog_1 (x0, insn, pnum_clobbers);
- if (tem >= 0) return tem;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L218:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case HImode:
- if (general_operand (x2, HImode))
- {
- ro[0] = x2;
- goto L219;
- }
- break;
- case QImode:
- if (general_operand (x2, QImode))
- {
- ro[0] = x2;
- goto L229;
- }
- }
- goto L1147;
-
- L219:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, HImode))
- {
- ro[1] = x1;
- return 41;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L229:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, QImode))
- {
- ro[1] = x1;
- return 44;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1081:
- x1 = XEXP (x0, 1);
- switch (GET_CODE (x1))
- {
- case MINUS:
- if (GET_MODE (x1) == SImode && 1)
- goto L1082;
- break;
- case IF_THEN_ELSE:
- goto L881;
- case LABEL_REF:
- goto L1061;
- }
- L1064:
- if (general_operand (x1, SImode))
- {
- ro[0] = x1;
- return 221;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1082:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 3 && 1)
- goto L1083;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1083:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == MEM && 1)
- goto L1084;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1084:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == SImode && GET_CODE (x3) == PLUS && 1)
- goto L1085;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1085:
- x4 = XEXP (x3, 0);
- if (GET_MODE (x4) == SImode && GET_CODE (x4) == MULT && 1)
- goto L1086;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1086:
- x5 = XEXP (x4, 0);
- if (register_operand (x5, SImode))
- {
- ro[0] = x5;
- goto L1087;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1087:
- x5 = XEXP (x4, 1);
- if (GET_CODE (x5) == CONST_INT && XWINT (x5, 0) == 4 && 1)
- goto L1088;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1088:
- x4 = XEXP (x3, 1);
- if (GET_CODE (x4) == LABEL_REF && 1)
- goto L1089;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1089:
- x5 = XEXP (x4, 0);
- if (pnum_clobbers != 0 && 1)
- {
- ro[1] = x5;
- *pnum_clobbers = 1;
- return 223;
- }
- x1 = XEXP (x0, 0);
- goto L1147;
- L881:
- tem = recog_2 (x0, insn, pnum_clobbers);
- if (tem >= 0) return tem;
- x1 = XEXP (x0, 0);
- goto L1147;
-
- L1061:
- x2 = XEXP (x1, 0);
- ro[0] = x2;
- return 220;
-
- L1148:
- x1 = XEXP (x0, 1);
- if (GET_CODE (x1) == CALL && 1)
- goto L1149;
- x1 = XEXP (x0, 0);
- goto L1236;
-
- L1149:
- x2 = XEXP (x1, 0);
- if (call_insn_operand (x2, QImode))
- {
- ro[1] = x2;
- goto L1150;
- }
- L1154:
- if (GET_MODE (x2) == QImode && GET_CODE (x2) == MEM && 1)
- goto L1155;
- x1 = XEXP (x0, 0);
- goto L1236;
-
- L1150:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- return 235;
- }
- x2 = XEXP (x1, 0);
- goto L1154;
-
- L1155:
- x3 = XEXP (x2, 0);
- if (symbolic_operand (x3, SImode))
- {
- ro[1] = x3;
- goto L1156;
- }
- x1 = XEXP (x0, 0);
- goto L1236;
-
- L1156:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[2] = x2;
- if (!HALF_PIC_P ())
- return 236;
- }
- x1 = XEXP (x0, 0);
- goto L1236;
-
- L1237:
- x1 = XEXP (x0, 1);
- if (GET_MODE (x1) == SImode && GET_CODE (x1) == PLUS && 1)
- goto L1238;
- goto ret0;
-
- L1238:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == FFS && 1)
- goto L1239;
- goto ret0;
-
- L1239:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SImode))
- {
- ro[1] = x3;
- goto L1240;
- }
- goto ret0;
-
- L1240:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == -1 && pnum_clobbers != 0 && 1)
- {
- *pnum_clobbers = 1;
- return 250;
- }
- goto ret0;
-
- L1252:
- x1 = XEXP (x0, 1);
- if (GET_MODE (x1) == HImode && GET_CODE (x1) == PLUS && 1)
- goto L1253;
- goto ret0;
-
- L1253:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == HImode && GET_CODE (x2) == FFS && 1)
- goto L1254;
- goto ret0;
-
- L1254:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, HImode))
- {
- ro[1] = x3;
- goto L1255;
- }
- goto ret0;
-
- L1255:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == -1 && pnum_clobbers != 0 && 1)
- {
- *pnum_clobbers = 1;
- return 252;
- }
- goto ret0;
-
- L1258:
- x1 = XEXP (x0, 1);
- if (binary_387_op (x1, DFmode))
- {
- ro[3] = x1;
- goto L1264;
- }
- goto ret0;
-
- L1264:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case DFmode:
- switch (GET_CODE (x2))
- {
- case FLOAT:
- goto L1265;
- case FLOAT_EXTEND:
- goto L1271;
- case SUBREG:
- case REG:
- case MEM:
- if (nonimmediate_operand (x2, DFmode))
- {
- ro[1] = x2;
- goto L1260;
- }
- }
- }
- L1276:
- if (general_operand (x2, DFmode))
- {
- ro[1] = x2;
- goto L1277;
- }
- goto ret0;
-
- L1265:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SImode))
- {
- ro[1] = x3;
- goto L1266;
- }
- goto ret0;
-
- L1266:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, DFmode))
- {
- ro[2] = x2;
- if (TARGET_80387)
- return 254;
- }
- goto ret0;
-
- L1271:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SFmode))
- {
- ro[1] = x3;
- goto L1272;
- }
- goto ret0;
-
- L1272:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, DFmode))
- {
- ro[2] = x2;
- if (TARGET_80387)
- return 255;
- }
- goto ret0;
-
- L1260:
- x2 = XEXP (x1, 1);
- if (nonimmediate_operand (x2, DFmode))
- {
- ro[2] = x2;
- if (TARGET_80387)
- return 253;
- }
- x2 = XEXP (x1, 0);
- goto L1276;
-
- L1277:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) != DFmode)
- goto ret0;
- switch (GET_CODE (x2))
- {
- case FLOAT:
- goto L1278;
- case FLOAT_EXTEND:
- goto L1284;
- }
- goto ret0;
-
- L1278:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SImode))
- {
- ro[2] = x3;
- if (TARGET_80387)
- return 256;
- }
- goto ret0;
-
- L1284:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SFmode))
- {
- ro[2] = x3;
- if (TARGET_80387)
- return 257;
- }
- goto ret0;
-
- L1287:
- x1 = XEXP (x0, 1);
- if (binary_387_op (x1, SFmode))
- {
- ro[3] = x1;
- goto L1293;
- }
- goto ret0;
-
- L1293:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case SFmode:
- if (GET_CODE (x2) == FLOAT && 1)
- goto L1294;
- if (nonimmediate_operand (x2, SFmode))
- {
- ro[1] = x2;
- goto L1289;
- }
- }
- L1299:
- if (general_operand (x2, SFmode))
- {
- ro[1] = x2;
- goto L1300;
- }
- goto ret0;
-
- L1294:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SImode))
- {
- ro[1] = x3;
- goto L1295;
- }
- goto ret0;
-
- L1295:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SFmode))
- {
- ro[2] = x2;
- if (TARGET_80387)
- return 259;
- }
- goto ret0;
-
- L1289:
- x2 = XEXP (x1, 1);
- if (nonimmediate_operand (x2, SFmode))
- {
- ro[2] = x2;
- if (TARGET_80387)
- return 258;
- }
- x2 = XEXP (x1, 0);
- goto L1299;
-
- L1300:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SFmode && GET_CODE (x2) == FLOAT && 1)
- goto L1301;
- goto ret0;
-
- L1301:
- x3 = XEXP (x2, 0);
- if (general_operand (x3, SImode))
- {
- ro[2] = x3;
- if (TARGET_80387)
- return 260;
- }
- goto ret0;
- ret0: return -1;
-}
-
-int
-recog_4 (x0, insn, pnum_clobbers)
- register rtx x0;
- rtx insn;
- int *pnum_clobbers;
-{
- register rtx *ro = &recog_operand[0];
- register rtx x1, x2, x3, x4, x5, x6;
- int tem;
-
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- switch (GET_MODE (x2))
- {
- case SFmode:
- if (register_operand (x2, SFmode))
- {
- ro[0] = x2;
- goto L13;
- }
- break;
- case DFmode:
- if (register_operand (x2, DFmode))
- {
- ro[0] = x2;
- goto L22;
- }
- }
- L45:
- if (VOIDmode_compare_op (x2, VOIDmode))
- {
- ro[2] = x2;
- goto L74;
- }
- L118:
- if (GET_MODE (x2) == CCFPEQmode && GET_CODE (x2) == COMPARE && 1)
- goto L119;
- goto ret0;
-
- L13:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L14;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L45;
-
- L14:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[1] = x2;
- if (TARGET_80387 && ! TARGET_IEEE_FP)
- return 6;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L45;
-
- L22:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L23;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L45;
-
- L23:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[1] = x2;
- if (TARGET_80387 && ! TARGET_IEEE_FP)
- return 8;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L45;
-
- L74:
- x3 = XEXP (x2, 0);
- switch (GET_MODE (x3))
- {
- case DFmode:
- switch (GET_CODE (x3))
- {
- case FLOAT:
- goto L75;
- case FLOAT_EXTEND:
- goto L105;
- case SUBREG:
- case REG:
- case MEM:
- if (nonimmediate_operand (x3, DFmode))
- {
- ro[0] = x3;
- goto L47;
- }
- }
- L59:
- if (register_operand (x3, DFmode))
- {
- ro[0] = x3;
- goto L60;
- }
- break;
- case SFmode:
- if (GET_CODE (x3) == FLOAT && 1)
- goto L161;
- if (nonimmediate_operand (x3, SFmode))
- {
- ro[0] = x3;
- goto L133;
- }
- L145:
- if (register_operand (x3, SFmode))
- {
- ro[0] = x3;
- goto L146;
- }
- }
- goto L118;
-
- L75:
- x4 = XEXP (x3, 0);
- if (nonimmediate_operand (x4, SImode))
- {
- ro[0] = x4;
- goto L76;
- }
- goto L118;
-
- L76:
- x3 = XEXP (x2, 1);
- if (register_operand (x3, DFmode))
- {
- ro[1] = x3;
- goto L77;
- }
- goto L118;
-
- L77:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L78;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L78:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- return 18;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L105:
- x4 = XEXP (x3, 0);
- if (nonimmediate_operand (x4, SFmode))
- {
- ro[0] = x4;
- goto L106;
- }
- goto L118;
-
- L106:
- x3 = XEXP (x2, 1);
- if (register_operand (x3, DFmode))
- {
- ro[1] = x3;
- goto L107;
- }
- goto L118;
-
- L107:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L108;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L108:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- return 20;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L47:
- x3 = XEXP (x2, 1);
- if (nonimmediate_operand (x3, DFmode))
- {
- ro[1] = x3;
- goto L48;
- }
- x3 = XEXP (x2, 0);
- goto L59;
-
- L48:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L49;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L59;
-
- L49:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[3] = x2;
- if (TARGET_80387
- && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM))
- return 16;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L59;
-
- L60:
- x3 = XEXP (x2, 1);
- if (GET_MODE (x3) != DFmode)
- {
- goto L118;
- }
- switch (GET_CODE (x3))
- {
- case FLOAT:
- goto L61;
- case FLOAT_EXTEND:
- goto L91;
- }
- goto L118;
-
- L61:
- x4 = XEXP (x3, 0);
- if (nonimmediate_operand (x4, SImode))
- {
- ro[1] = x4;
- goto L62;
- }
- goto L118;
-
- L62:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L63;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L63:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- return 17;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L91:
- x4 = XEXP (x3, 0);
- if (nonimmediate_operand (x4, SFmode))
- {
- ro[1] = x4;
- goto L92;
- }
- goto L118;
-
- L92:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L93;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L93:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- return 19;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L161:
- x4 = XEXP (x3, 0);
- if (nonimmediate_operand (x4, SImode))
- {
- ro[0] = x4;
- goto L162;
- }
- goto L118;
-
- L162:
- x3 = XEXP (x2, 1);
- if (register_operand (x3, SFmode))
- {
- ro[1] = x3;
- goto L163;
- }
- goto L118;
-
- L163:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L164;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L164:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- return 24;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L133:
- x3 = XEXP (x2, 1);
- if (nonimmediate_operand (x3, SFmode))
- {
- ro[1] = x3;
- goto L134;
- }
- x3 = XEXP (x2, 0);
- goto L145;
-
- L134:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L135;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L145;
-
- L135:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[3] = x2;
- if (TARGET_80387
- && (GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM))
- return 22;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L145;
-
- L146:
- x3 = XEXP (x2, 1);
- if (GET_MODE (x3) == SFmode && GET_CODE (x3) == FLOAT && 1)
- goto L147;
- goto L118;
-
- L147:
- x4 = XEXP (x3, 0);
- if (nonimmediate_operand (x4, SImode))
- {
- ro[1] = x4;
- goto L148;
- }
- goto L118;
-
- L148:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L149;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L149:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- return 23;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- goto L118;
-
- L119:
- x3 = XEXP (x2, 0);
- switch (GET_MODE (x3))
- {
- case DFmode:
- if (register_operand (x3, DFmode))
- {
- ro[0] = x3;
- goto L120;
- }
- break;
- case SFmode:
- if (register_operand (x3, SFmode))
- {
- ro[0] = x3;
- goto L176;
- }
- }
- goto ret0;
-
- L120:
- x3 = XEXP (x2, 1);
- if (register_operand (x3, DFmode))
- {
- ro[1] = x3;
- goto L121;
- }
- goto ret0;
-
- L121:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L122;
- goto ret0;
-
- L122:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[2] = x2;
- if (TARGET_80387)
- return 21;
- }
- goto ret0;
-
- L176:
- x3 = XEXP (x2, 1);
- if (register_operand (x3, SFmode))
- {
- ro[1] = x3;
- goto L177;
- }
- goto ret0;
-
- L177:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L178;
- goto ret0;
-
- L178:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[2] = x2;
- if (TARGET_80387)
- return 25;
- }
- goto ret0;
- ret0: return -1;
-}
-
-int
-recog_5 (x0, insn, pnum_clobbers)
- register rtx x0;
- rtx insn;
- int *pnum_clobbers;
-{
- register rtx *ro = &recog_operand[0];
- register rtx x1, x2, x3, x4, x5, x6;
- int tem;
-
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case DFmode:
- if (register_operand (x2, DFmode))
- {
- ro[0] = x2;
- goto L242;
- }
- break;
- case SFmode:
- if (nonimmediate_operand (x2, SFmode))
- {
- ro[0] = x2;
- goto L294;
- }
- break;
- case SImode:
- if (register_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L497;
- }
- break;
- case HImode:
- if (register_operand (x2, HImode))
- {
- ro[0] = x2;
- goto L508;
- }
- break;
- case DImode:
- if (register_operand (x2, DImode))
- {
- ro[0] = x2;
- goto L684;
- }
- }
- switch (GET_CODE (x2))
- {
- case CC0:
- goto L12;
- case PC:
- goto L1068;
- }
- L1125:
- ro[0] = x2;
- goto L1126;
- L1228:
- switch (GET_MODE (x2))
- {
- case SImode:
- if (register_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L1229;
- }
- break;
- case HImode:
- if (register_operand (x2, HImode))
- {
- ro[0] = x2;
- goto L1244;
- }
- }
- goto ret0;
-
- L242:
- x2 = XEXP (x1, 1);
- if (register_operand (x2, DFmode))
- {
- ro[1] = x2;
- goto L243;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L243:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L244;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L244:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- goto L245;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L245:
- x2 = XEXP (x1, 1);
- if (rtx_equal_p (x2, ro[0]) && 1)
- return 48;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L294:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SFmode && GET_CODE (x2) == FLOAT_TRUNCATE && 1)
- goto L295;
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L295:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, DFmode))
- {
- ro[1] = x3;
- goto L296;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L296:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L297;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L297:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SFmode))
- {
- ro[2] = x2;
- if (TARGET_80387)
- return 62;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L497:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) != SImode)
- {
- x2 = XEXP (x1, 0);
- goto L1125;
- }
- switch (GET_CODE (x2))
- {
- case DIV:
- goto L498;
- case UDIV:
- goto L520;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L498:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, SImode))
- {
- ro[1] = x3;
- goto L499;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L499:
- x3 = XEXP (x2, 1);
- if (general_operand (x3, SImode))
- {
- ro[2] = x3;
- goto L500;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L500:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L501;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L501:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L502;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L502:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == MOD && 1)
- goto L503;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L503:
- x3 = XEXP (x2, 0);
- if (rtx_equal_p (x3, ro[1]) && 1)
- goto L504;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L504:
- x3 = XEXP (x2, 1);
- if (rtx_equal_p (x3, ro[2]) && 1)
- return 105;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L520:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, SImode))
- {
- ro[1] = x3;
- goto L521;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L521:
- x3 = XEXP (x2, 1);
- if (general_operand (x3, SImode))
- {
- ro[2] = x3;
- goto L522;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L522:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L523;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L523:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L524;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L524:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == UMOD && 1)
- goto L525;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L525:
- x3 = XEXP (x2, 0);
- if (rtx_equal_p (x3, ro[1]) && 1)
- goto L526;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L526:
- x3 = XEXP (x2, 1);
- if (rtx_equal_p (x3, ro[2]) && 1)
- return 107;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L508:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) != HImode)
- {
- x2 = XEXP (x1, 0);
- goto L1125;
- }
- switch (GET_CODE (x2))
- {
- case DIV:
- goto L509;
- case UDIV:
- goto L531;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L509:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, HImode))
- {
- ro[1] = x3;
- goto L510;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L510:
- x3 = XEXP (x2, 1);
- if (general_operand (x3, HImode))
- {
- ro[2] = x3;
- goto L511;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L511:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L512;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L512:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, HImode))
- {
- ro[3] = x2;
- goto L513;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L513:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == HImode && GET_CODE (x2) == MOD && 1)
- goto L514;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L514:
- x3 = XEXP (x2, 0);
- if (rtx_equal_p (x3, ro[1]) && 1)
- goto L515;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L515:
- x3 = XEXP (x2, 1);
- if (rtx_equal_p (x3, ro[2]) && 1)
- return 106;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L531:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, HImode))
- {
- ro[1] = x3;
- goto L532;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L532:
- x3 = XEXP (x2, 1);
- if (general_operand (x3, HImode))
- {
- ro[2] = x3;
- goto L533;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L533:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L534;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L534:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, HImode))
- {
- ro[3] = x2;
- goto L535;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L535:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == HImode && GET_CODE (x2) == UMOD && 1)
- goto L536;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L536:
- x3 = XEXP (x2, 0);
- if (rtx_equal_p (x3, ro[1]) && 1)
- goto L537;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L537:
- x3 = XEXP (x2, 1);
- if (rtx_equal_p (x3, ro[2]) && 1)
- return 108;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L684:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) != DImode)
- {
- x2 = XEXP (x1, 0);
- goto L1125;
- }
- switch (GET_CODE (x2))
- {
- case ASHIFT:
- goto L685;
- case ASHIFTRT:
- goto L713;
- case LSHIFTRT:
- goto L741;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L685:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, DImode))
- {
- ro[1] = x3;
- goto L686;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L686:
- x3 = XEXP (x2, 1);
- if (register_operand (x3, QImode))
- {
- ro[2] = x3;
- goto L687;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L687:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L688;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L688:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[2]) && 1)
- return 142;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L713:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, DImode))
- {
- ro[1] = x3;
- goto L714;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L714:
- x3 = XEXP (x2, 1);
- if (register_operand (x3, QImode))
- {
- ro[2] = x3;
- goto L715;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L715:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L716;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L716:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[2]) && 1)
- return 148;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L741:
- x3 = XEXP (x2, 0);
- if (register_operand (x3, DImode))
- {
- ro[1] = x3;
- goto L742;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L742:
- x3 = XEXP (x2, 1);
- if (register_operand (x3, QImode))
- {
- ro[2] = x3;
- goto L743;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L743:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L744;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L744:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[2]) && 1)
- return 154;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
- L12:
- tem = recog_4 (x0, insn, pnum_clobbers);
- if (tem >= 0) return tem;
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1068:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == MINUS && 1)
- goto L1069;
- if (general_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L1094;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1069:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 3 && 1)
- goto L1070;
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1070:
- x3 = XEXP (x2, 1);
- if (GET_MODE (x3) == SImode && GET_CODE (x3) == MEM && 1)
- goto L1071;
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1071:
- x4 = XEXP (x3, 0);
- if (GET_MODE (x4) == SImode && GET_CODE (x4) == PLUS && 1)
- goto L1072;
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1072:
- x5 = XEXP (x4, 0);
- if (GET_MODE (x5) == SImode && GET_CODE (x5) == MULT && 1)
- goto L1073;
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1073:
- x6 = XEXP (x5, 0);
- if (register_operand (x6, SImode))
- {
- ro[0] = x6;
- goto L1074;
- }
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1074:
- x6 = XEXP (x5, 1);
- if (GET_CODE (x6) == CONST_INT && XWINT (x6, 0) == 4 && 1)
- goto L1075;
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1075:
- x5 = XEXP (x4, 1);
- if (GET_CODE (x5) == LABEL_REF && 1)
- goto L1076;
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1076:
- x6 = XEXP (x5, 0);
- ro[1] = x6;
- goto L1077;
-
- L1077:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1078;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1078:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, SImode))
- {
- ro[2] = x2;
- return 223;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1094:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == USE && 1)
- goto L1095;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1095:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == LABEL_REF && 1)
- goto L1096;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1125;
-
- L1096:
- x3 = XEXP (x2, 0);
- ro[1] = x3;
- return 224;
-
- L1126:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CALL && 1)
- goto L1138;
- x2 = XEXP (x1, 0);
- goto L1228;
-
- L1138:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == QImode && GET_CODE (x3) == MEM && 1)
- goto L1139;
- L1127:
- if (call_insn_operand (x3, QImode))
- {
- ro[1] = x3;
- goto L1128;
- }
- x2 = XEXP (x1, 0);
- goto L1228;
-
- L1139:
- x4 = XEXP (x3, 0);
- if (symbolic_operand (x4, SImode))
- {
- ro[1] = x4;
- goto L1140;
- }
- goto L1127;
-
- L1140:
- x3 = XEXP (x2, 1);
- if (general_operand (x3, SImode))
- {
- ro[2] = x3;
- goto L1141;
- }
- x3 = XEXP (x2, 0);
- goto L1127;
-
- L1141:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L1142;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L1127;
-
- L1142:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 7 && 1)
- goto L1143;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L1127;
-
- L1143:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == PLUS && 1)
- goto L1144;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L1127;
-
- L1144:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 7 && 1)
- goto L1145;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L1127;
-
- L1145:
- x3 = XEXP (x2, 1);
- if (immediate_operand (x3, SImode))
- {
- ro[4] = x3;
- if (!HALF_PIC_P ())
- return 233;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 1);
- x3 = XEXP (x2, 0);
- goto L1127;
-
- L1128:
- x3 = XEXP (x2, 1);
- if (general_operand (x3, SImode))
- {
- ro[2] = x3;
- goto L1129;
- }
- x2 = XEXP (x1, 0);
- goto L1228;
-
- L1129:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L1130;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1228;
-
- L1130:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 7 && 1)
- goto L1131;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1228;
-
- L1131:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == PLUS && 1)
- goto L1132;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1228;
-
- L1132:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 7 && 1)
- goto L1133;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1228;
-
- L1133:
- x3 = XEXP (x2, 1);
- if (immediate_operand (x3, SImode))
- {
- ro[4] = x3;
- return 232;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1228;
-
- L1229:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) != SImode)
- goto ret0;
- switch (GET_CODE (x2))
- {
- case PLUS:
- goto L1230;
- case UNSPEC:
- if (XINT (x2, 1) == 0 && XVECLEN (x2, 0) == 3 && 1)
- goto L1306;
- }
- goto ret0;
-
- L1230:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == SImode && GET_CODE (x3) == FFS && 1)
- goto L1231;
- goto ret0;
-
- L1231:
- x4 = XEXP (x3, 0);
- if (general_operand (x4, SImode))
- {
- ro[1] = x4;
- goto L1232;
- }
- goto ret0;
-
- L1232:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == -1 && 1)
- goto L1233;
- goto ret0;
-
- L1233:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1234;
- goto ret0;
-
- L1234:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, SImode))
- {
- ro[2] = x2;
- return 250;
- }
- goto ret0;
-
- L1306:
- x3 = XVECEXP (x2, 0, 0);
- if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
- goto L1307;
- goto ret0;
-
- L1307:
- x4 = XEXP (x3, 0);
- if (address_operand (x4, SImode))
- {
- ro[1] = x4;
- goto L1308;
- }
- goto ret0;
-
- L1308:
- x3 = XVECEXP (x2, 0, 1);
- if (register_operand (x3, QImode))
- {
- ro[2] = x3;
- goto L1309;
- }
- goto ret0;
-
- L1309:
- x3 = XVECEXP (x2, 0, 2);
- if (immediate_operand (x3, SImode))
- {
- ro[3] = x3;
- goto L1310;
- }
- goto ret0;
-
- L1310:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1311;
- goto ret0;
-
- L1311:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- return 262;
- goto ret0;
-
- L1244:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == HImode && GET_CODE (x2) == PLUS && 1)
- goto L1245;
- goto ret0;
-
- L1245:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == HImode && GET_CODE (x3) == FFS && 1)
- goto L1246;
- goto ret0;
-
- L1246:
- x4 = XEXP (x3, 0);
- if (general_operand (x4, HImode))
- {
- ro[1] = x4;
- goto L1247;
- }
- goto ret0;
-
- L1247:
- x3 = XEXP (x2, 1);
- if (GET_CODE (x3) == CONST_INT && XWINT (x3, 0) == -1 && 1)
- goto L1248;
- goto ret0;
-
- L1248:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1249;
- goto ret0;
-
- L1249:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, HImode))
- {
- ro[2] = x2;
- return 252;
- }
- goto ret0;
- ret0: return -1;
-}
-
-int
-recog (x0, insn, pnum_clobbers)
- register rtx x0;
- rtx insn;
- int *pnum_clobbers;
-{
- register rtx *ro = &recog_operand[0];
- register rtx x1, x2, x3, x4, x5, x6;
- int tem;
-
- L1170:
- switch (GET_CODE (x0))
- {
- case UNSPEC:
- if (GET_MODE (x0) == SImode && XINT (x0, 1) == 0 && XVECLEN (x0, 0) == 1 && 1)
- goto L1171;
- break;
- case SET:
- goto L200;
- case PARALLEL:
- if (XVECLEN (x0, 0) == 2 && 1)
- goto L10;
- if (XVECLEN (x0, 0) == 5 && 1)
- goto L299;
- if (XVECLEN (x0, 0) == 4 && 1)
- goto L313;
- if (XVECLEN (x0, 0) == 3 && 1)
- goto L363;
- if (XVECLEN (x0, 0) == 6 && 1)
- goto L1175;
- break;
- case CALL:
- goto L1117;
- case RETURN:
- if (simple_386_epilogue ())
- return 242;
- break;
- case CONST_INT:
- if (XWINT (x0, 0) == 0 && 1)
- return 243;
- }
- goto ret0;
-
- L1171:
- x1 = XVECEXP (x0, 0, 0);
- if (memory_operand (x1, SImode))
- {
- ro[0] = x1;
- return 241;
- }
- goto ret0;
- L200:
- return recog_3 (x0, insn, pnum_clobbers);
-
- L10:
- x1 = XVECEXP (x0, 0, 0);
- switch (GET_CODE (x1))
- {
- case SET:
- goto L241;
- case CALL:
- goto L1108;
- }
- goto ret0;
- L241:
- return recog_5 (x0, insn, pnum_clobbers);
-
- L1108:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == QImode && GET_CODE (x2) == MEM && 1)
- goto L1109;
- L1099:
- if (call_insn_operand (x2, QImode))
- {
- ro[0] = x2;
- goto L1100;
- }
- goto ret0;
-
- L1109:
- x3 = XEXP (x2, 0);
- if (symbolic_operand (x3, SImode))
- {
- ro[0] = x3;
- goto L1110;
- }
- goto L1099;
-
- L1110:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L1111;
- }
- x2 = XEXP (x1, 0);
- goto L1099;
-
- L1111:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L1112;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1099;
-
- L1112:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 7 && 1)
- goto L1113;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1099;
-
- L1113:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == PLUS && 1)
- goto L1114;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1099;
-
- L1114:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 7 && 1)
- goto L1115;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1099;
-
- L1115:
- x3 = XEXP (x2, 1);
- if (immediate_operand (x3, SImode))
- {
- ro[3] = x3;
- if (!HALF_PIC_P ())
- return 227;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1099;
-
- L1100:
- x2 = XEXP (x1, 1);
- if (general_operand (x2, SImode))
- {
- ro[1] = x2;
- goto L1101;
- }
- goto ret0;
-
- L1101:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == SET && 1)
- goto L1102;
- goto ret0;
-
- L1102:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == REG && XINT (x2, 0) == 7 && 1)
- goto L1103;
- goto ret0;
-
- L1103:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == PLUS && 1)
- goto L1104;
- goto ret0;
-
- L1104:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == SImode && GET_CODE (x3) == REG && XINT (x3, 0) == 7 && 1)
- goto L1105;
- goto ret0;
-
- L1105:
- x3 = XEXP (x2, 1);
- if (immediate_operand (x3, SImode))
- {
- ro[3] = x3;
- return 226;
- }
- goto ret0;
-
- L299:
- x1 = XVECEXP (x0, 0, 0);
- if (GET_CODE (x1) == SET && 1)
- goto L300;
- goto ret0;
-
- L300:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == DImode && general_operand (x2, DImode))
- {
- ro[0] = x2;
- goto L301;
- }
- goto ret0;
-
- L301:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == DImode && GET_CODE (x2) == FIX && 1)
- goto L302;
- goto ret0;
-
- L302:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) != FIX)
- goto ret0;
- switch (GET_MODE (x3))
- {
- case DFmode:
- goto L303;
- case SFmode:
- goto L329;
- }
- goto ret0;
-
- L303:
- x4 = XEXP (x3, 0);
- if (register_operand (x4, DFmode))
- {
- ro[1] = x4;
- goto L304;
- }
- goto ret0;
-
- L304:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L305;
- goto ret0;
-
- L305:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- goto L306;
- goto ret0;
-
- L306:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L307;
- goto ret0;
-
- L307:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L308;
- }
- goto ret0;
-
- L308:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L309;
- goto ret0;
-
- L309:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L310;
- }
- goto ret0;
-
- L310:
- x1 = XVECEXP (x0, 0, 4);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L311;
- goto ret0;
-
- L311:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, SImode))
- {
- ro[4] = x2;
- if (TARGET_80387)
- return 67;
- }
- goto ret0;
-
- L329:
- x4 = XEXP (x3, 0);
- if (register_operand (x4, SFmode))
- {
- ro[1] = x4;
- goto L330;
- }
- goto ret0;
-
- L330:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L331;
- goto ret0;
-
- L331:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- goto L332;
- goto ret0;
-
- L332:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L333;
- goto ret0;
-
- L333:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L334;
- }
- goto ret0;
-
- L334:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L335;
- goto ret0;
-
- L335:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L336;
- }
- goto ret0;
-
- L336:
- x1 = XVECEXP (x0, 0, 4);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L337;
- goto ret0;
-
- L337:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, SImode))
- {
- ro[4] = x2;
- if (TARGET_80387)
- return 68;
- }
- goto ret0;
-
- L313:
- x1 = XVECEXP (x0, 0, 0);
- if (GET_CODE (x1) == SET && 1)
- goto L314;
- goto ret0;
-
- L314:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case DImode:
- if (general_operand (x2, DImode))
- {
- ro[0] = x2;
- goto L315;
- }
- break;
- case SImode:
- if (general_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L353;
- }
- }
- goto ret0;
-
- L315:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == DImode && GET_CODE (x2) == FIX && 1)
- goto L316;
- goto ret0;
-
- L316:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) != FIX)
- goto ret0;
- switch (GET_MODE (x3))
- {
- case DFmode:
- goto L317;
- case SFmode:
- goto L343;
- }
- goto ret0;
-
- L317:
- x4 = XEXP (x3, 0);
- if (register_operand (x4, DFmode))
- {
- ro[1] = x4;
- goto L318;
- }
- goto ret0;
-
- L318:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L319;
- goto ret0;
-
- L319:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- goto L320;
- goto ret0;
-
- L320:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L321;
- goto ret0;
-
- L321:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L322;
- }
- goto ret0;
-
- L322:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L323;
- goto ret0;
-
- L323:
- x2 = XEXP (x1, 0);
- if (pnum_clobbers != 0 && memory_operand (x2, SImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 67;
- }
- }
- goto ret0;
-
- L343:
- x4 = XEXP (x3, 0);
- if (register_operand (x4, SFmode))
- {
- ro[1] = x4;
- goto L344;
- }
- goto ret0;
-
- L344:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L345;
- goto ret0;
-
- L345:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- goto L346;
- goto ret0;
-
- L346:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L347;
- goto ret0;
-
- L347:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L348;
- }
- goto ret0;
-
- L348:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L349;
- goto ret0;
-
- L349:
- x2 = XEXP (x1, 0);
- if (pnum_clobbers != 0 && memory_operand (x2, SImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 68;
- }
- }
- goto ret0;
-
- L353:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == FIX && 1)
- goto L354;
- goto ret0;
-
- L354:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) != FIX)
- goto ret0;
- switch (GET_MODE (x3))
- {
- case DFmode:
- goto L355;
- case SFmode:
- goto L377;
- }
- goto ret0;
-
- L355:
- x4 = XEXP (x3, 0);
- if (register_operand (x4, DFmode))
- {
- ro[1] = x4;
- goto L356;
- }
- goto ret0;
-
- L356:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L357;
- goto ret0;
-
- L357:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L358;
- }
- goto ret0;
-
- L358:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L359;
- goto ret0;
-
- L359:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L360;
- }
- goto ret0;
-
- L360:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L361;
- goto ret0;
-
- L361:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, SImode))
- {
- ro[4] = x2;
- if (TARGET_80387)
- return 71;
- }
- goto ret0;
-
- L377:
- x4 = XEXP (x3, 0);
- if (register_operand (x4, SFmode))
- {
- ro[1] = x4;
- goto L378;
- }
- goto ret0;
-
- L378:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L379;
- goto ret0;
-
- L379:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L380;
- }
- goto ret0;
-
- L380:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L381;
- goto ret0;
-
- L381:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L382;
- }
- goto ret0;
-
- L382:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L383;
- goto ret0;
-
- L383:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, SImode))
- {
- ro[4] = x2;
- if (TARGET_80387)
- return 72;
- }
- goto ret0;
-
- L363:
- x1 = XVECEXP (x0, 0, 0);
- switch (GET_CODE (x1))
- {
- case SET:
- goto L364;
- case CALL:
- goto L1165;
- }
- goto ret0;
-
- L364:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == SImode && general_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L365;
- }
- goto ret0;
-
- L365:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == FIX && 1)
- goto L366;
- goto ret0;
-
- L366:
- x3 = XEXP (x2, 0);
- if (GET_CODE (x3) != FIX)
- goto ret0;
- switch (GET_MODE (x3))
- {
- case DFmode:
- goto L367;
- case SFmode:
- goto L389;
- }
- goto ret0;
-
- L367:
- x4 = XEXP (x3, 0);
- if (register_operand (x4, DFmode))
- {
- ro[1] = x4;
- goto L368;
- }
- goto ret0;
-
- L368:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L369;
- goto ret0;
-
- L369:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L370;
- }
- goto ret0;
-
- L370:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L371;
- goto ret0;
-
- L371:
- x2 = XEXP (x1, 0);
- if (pnum_clobbers != 0 && memory_operand (x2, SImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 71;
- }
- }
- goto ret0;
-
- L389:
- x4 = XEXP (x3, 0);
- if (register_operand (x4, SFmode))
- {
- ro[1] = x4;
- goto L390;
- }
- goto ret0;
-
- L390:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L391;
- goto ret0;
-
- L391:
- x2 = XEXP (x1, 0);
- if (memory_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L392;
- }
- goto ret0;
-
- L392:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L393;
- goto ret0;
-
- L393:
- x2 = XEXP (x1, 0);
- if (pnum_clobbers != 0 && memory_operand (x2, SImode))
- {
- ro[3] = x2;
- if (TARGET_80387)
- {
- *pnum_clobbers = 1;
- return 72;
- }
- }
- goto ret0;
-
- L1165:
- x2 = XEXP (x1, 0);
- if (GET_MODE (x2) == QImode && GET_CODE (x2) == MEM && 1)
- goto L1166;
- L1159:
- if (call_insn_operand (x2, QImode))
- {
- ro[0] = x2;
- goto L1160;
- }
- goto ret0;
-
- L1166:
- x3 = XEXP (x2, 0);
- if (symbolic_operand (x3, SImode))
- {
- ro[0] = x3;
- goto L1167;
- }
- goto L1159;
-
- L1167:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- goto L1168;
- x2 = XEXP (x1, 0);
- goto L1159;
-
- L1168:
- x1 = XVECEXP (x0, 0, 1);
- if (memory_operand (x1, DImode))
- {
- ro[1] = x1;
- goto L1169;
- }
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1159;
-
- L1169:
- x1 = XVECEXP (x0, 0, 2);
- ro[2] = x1;
- if (!HALF_PIC_P ())
- return 239;
- x1 = XVECEXP (x0, 0, 0);
- x2 = XEXP (x1, 0);
- goto L1159;
-
- L1160:
- x2 = XEXP (x1, 1);
- if (GET_CODE (x2) == CONST_INT && XWINT (x2, 0) == 0 && 1)
- goto L1161;
- goto ret0;
-
- L1161:
- x1 = XVECEXP (x0, 0, 1);
- if (memory_operand (x1, DImode))
- {
- ro[1] = x1;
- goto L1162;
- }
- goto ret0;
-
- L1162:
- x1 = XVECEXP (x0, 0, 2);
- ro[2] = x1;
- return 238;
-
- L1175:
- x1 = XVECEXP (x0, 0, 0);
- if (GET_CODE (x1) == SET && 1)
- goto L1176;
- goto ret0;
-
- L1176:
- x2 = XEXP (x1, 0);
- switch (GET_MODE (x2))
- {
- case BLKmode:
- if (GET_CODE (x2) == MEM && 1)
- goto L1177;
- break;
- case SImode:
- if (general_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L1193;
- }
- }
- if (GET_CODE (x2) == CC0 && 1)
- goto L1211;
- goto ret0;
-
- L1177:
- x3 = XEXP (x2, 0);
- if (address_operand (x3, SImode))
- {
- ro[0] = x3;
- goto L1178;
- }
- goto ret0;
-
- L1178:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == BLKmode && GET_CODE (x2) == MEM && 1)
- goto L1179;
- goto ret0;
-
- L1179:
- x3 = XEXP (x2, 0);
- if (address_operand (x3, SImode))
- {
- ro[1] = x3;
- goto L1180;
- }
- goto ret0;
-
- L1180:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == USE && 1)
- goto L1181;
- goto ret0;
-
- L1181:
- x2 = XEXP (x1, 0);
- if (GET_CODE (x2) == CONST_INT && 1)
- {
- ro[2] = x2;
- goto L1182;
- }
- goto ret0;
-
- L1182:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == USE && 1)
- goto L1183;
- goto ret0;
-
- L1183:
- x2 = XEXP (x1, 0);
- if (immediate_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L1184;
- }
- goto ret0;
-
- L1184:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1185;
- goto ret0;
-
- L1185:
- x2 = XEXP (x1, 0);
- if (scratch_operand (x2, SImode))
- {
- ro[4] = x2;
- goto L1186;
- }
- goto ret0;
-
- L1186:
- x1 = XVECEXP (x0, 0, 4);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1187;
- goto ret0;
-
- L1187:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[0]) && 1)
- goto L1188;
- goto ret0;
-
- L1188:
- x1 = XVECEXP (x0, 0, 5);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1189;
- goto ret0;
-
- L1189:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- return 245;
- goto ret0;
-
- L1193:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == COMPARE && 1)
- goto L1194;
- goto ret0;
-
- L1194:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
- goto L1195;
- goto ret0;
-
- L1195:
- x4 = XEXP (x3, 0);
- if (address_operand (x4, SImode))
- {
- ro[1] = x4;
- goto L1196;
- }
- goto ret0;
-
- L1196:
- x3 = XEXP (x2, 1);
- if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
- goto L1197;
- goto ret0;
-
- L1197:
- x4 = XEXP (x3, 0);
- if (address_operand (x4, SImode))
- {
- ro[2] = x4;
- goto L1198;
- }
- goto ret0;
-
- L1198:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == USE && 1)
- goto L1199;
- goto ret0;
-
- L1199:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L1200;
- }
- goto ret0;
-
- L1200:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == USE && 1)
- goto L1201;
- goto ret0;
-
- L1201:
- x2 = XEXP (x1, 0);
- if (immediate_operand (x2, SImode))
- {
- ro[4] = x2;
- goto L1202;
- }
- goto ret0;
-
- L1202:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1203;
- goto ret0;
-
- L1203:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- goto L1204;
- goto ret0;
-
- L1204:
- x1 = XVECEXP (x0, 0, 4);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1205;
- goto ret0;
-
- L1205:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[2]) && 1)
- goto L1206;
- goto ret0;
-
- L1206:
- x1 = XVECEXP (x0, 0, 5);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1207;
- goto ret0;
-
- L1207:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[3]) && 1)
- return 247;
- goto ret0;
-
- L1211:
- x2 = XEXP (x1, 1);
- if (GET_MODE (x2) == SImode && GET_CODE (x2) == COMPARE && 1)
- goto L1212;
- goto ret0;
-
- L1212:
- x3 = XEXP (x2, 0);
- if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
- goto L1213;
- goto ret0;
-
- L1213:
- x4 = XEXP (x3, 0);
- if (address_operand (x4, SImode))
- {
- ro[0] = x4;
- goto L1214;
- }
- goto ret0;
-
- L1214:
- x3 = XEXP (x2, 1);
- if (GET_MODE (x3) == BLKmode && GET_CODE (x3) == MEM && 1)
- goto L1215;
- goto ret0;
-
- L1215:
- x4 = XEXP (x3, 0);
- if (address_operand (x4, SImode))
- {
- ro[1] = x4;
- goto L1216;
- }
- goto ret0;
-
- L1216:
- x1 = XVECEXP (x0, 0, 1);
- if (GET_CODE (x1) == USE && 1)
- goto L1217;
- goto ret0;
-
- L1217:
- x2 = XEXP (x1, 0);
- if (register_operand (x2, SImode))
- {
- ro[2] = x2;
- goto L1218;
- }
- goto ret0;
-
- L1218:
- x1 = XVECEXP (x0, 0, 2);
- if (GET_CODE (x1) == USE && 1)
- goto L1219;
- goto ret0;
-
- L1219:
- x2 = XEXP (x1, 0);
- if (immediate_operand (x2, SImode))
- {
- ro[3] = x2;
- goto L1220;
- }
- goto ret0;
-
- L1220:
- x1 = XVECEXP (x0, 0, 3);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1221;
- goto ret0;
-
- L1221:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[0]) && 1)
- goto L1222;
- goto ret0;
-
- L1222:
- x1 = XVECEXP (x0, 0, 4);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1223;
- goto ret0;
-
- L1223:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[1]) && 1)
- goto L1224;
- goto ret0;
-
- L1224:
- x1 = XVECEXP (x0, 0, 5);
- if (GET_CODE (x1) == CLOBBER && 1)
- goto L1225;
- goto ret0;
-
- L1225:
- x2 = XEXP (x1, 0);
- if (rtx_equal_p (x2, ro[2]) && 1)
- return 248;
- goto ret0;
-
- L1117:
- x1 = XEXP (x0, 0);
- if (call_insn_operand (x1, QImode))
- {
- ro[0] = x1;
- goto L1118;
- }
- L1120:
- if (GET_MODE (x1) == QImode && GET_CODE (x1) == MEM && 1)
- goto L1121;
- goto ret0;
-
- L1118:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, SImode))
- {
- ro[1] = x1;
- return 229;
- }
- x1 = XEXP (x0, 0);
- goto L1120;
-
- L1121:
- x2 = XEXP (x1, 0);
- if (symbolic_operand (x2, SImode))
- {
- ro[0] = x2;
- goto L1122;
- }
- goto ret0;
-
- L1122:
- x1 = XEXP (x0, 1);
- if (general_operand (x1, SImode))
- {
- ro[1] = x1;
- if (!HALF_PIC_P ())
- return 230;
- }
- goto ret0;
- ret0: return -1;
-}
-
-rtx
-split_insns (x0, insn)
- register rtx x0;
- rtx insn;
-{
- register rtx *ro = &recog_operand[0];
- register rtx x1, x2, x3, x4, x5, x6;
- rtx tem;
-
- goto ret0;
- ret0: return 0;
-}
-