/* Generated automatically by the program `genextract' from the machine description file `md'. */ #ifndef lint static char rcsid[] = "$Id: insn-extract.c,v 1.2 1993/08/02 17:37:01 mycroft Exp $"; #endif /* not lint */ #include "config.h" #include "rtl.h" static rtx junk; extern rtx recog_operand[]; extern rtx *recog_operand_loc[]; extern rtx *recog_dup_loc[]; extern char recog_dup_num[]; extern #ifdef __GNUC__ __volatile__ #endif void fatal_insn_not_found (); void insn_extract (insn) rtx insn; { register rtx *ro = recog_operand; register rtx **ro_loc = recog_operand_loc; rtx pat = PATTERN (insn); switch (INSN_CODE (insn)) { case -1: fatal_insn_not_found (insn); case 262: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 0), 0)); ro[2] = *(ro_loc[2] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 1)); ro[3] = *(ro_loc[3] = &XVECEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0, 2)); recog_dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0); recog_dup_num[0] = 1; break; case 260: case 257: case 256: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0)); ro[3] = *(ro_loc[3] = &XEXP (pat, 1)); break; case 259: case 255: case 254: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1)); ro[3] = *(ro_loc[3] = &XEXP (pat, 1)); break; case 258: case 253: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1)); ro[3] = *(ro_loc[3] = &XEXP (pat, 1)); break; case 252: case 250: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0)); break; case 248: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0)); recog_dup_loc[0] = &XEXP (XVECEXP (pat, 0, 5), 0); recog_dup_num[0] = 2; recog_dup_loc[1] = &XEXP (XVECEXP (pat, 0, 4), 0); recog_dup_num[1] = 1; recog_dup_loc[2] = &XEXP (XVECEXP (pat, 0, 3), 0); recog_dup_num[2] = 0; break; case 247: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0)); ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 2), 0)); recog_dup_loc[0] = &XEXP (XVECEXP (pat, 0, 5), 0); recog_dup_num[0] = 3; recog_dup_loc[1] = &XEXP (XVECEXP (pat, 0, 4), 0); recog_dup_num[1] = 2; recog_dup_loc[2] = &XEXP (XVECEXP (pat, 0, 3), 0); recog_dup_num[2] = 1; break; case 245: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0)); ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 3), 0)); recog_dup_loc[0] = &XEXP (XVECEXP (pat, 0, 5), 0); recog_dup_num[0] = 1; recog_dup_loc[1] = &XEXP (XVECEXP (pat, 0, 4), 0); recog_dup_num[1] = 0; break; case 243: case 242: break; case 241: ro[0] = *(ro_loc[0] = &XVECEXP (pat, 0, 0)); break; case 239: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0)); ro[1] = *(ro_loc[1] = &XVECEXP (pat, 0, 1)); ro[2] = *(ro_loc[2] = &XVECEXP (pat, 0, 2)); break; case 238: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XVECEXP (pat, 0, 1)); ro[2] = *(ro_loc[2] = &XVECEXP (pat, 0, 2)); break; case 236: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1)); break; case 233: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1)); ro[3] = const0_rtx; ro_loc[3] = &junk; ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1)); break; case 232: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1)); ro[3] = const0_rtx; ro_loc[3] = &junk; ro[4] = *(ro_loc[4] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1)); break; case 227: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1)); ro[2] = const0_rtx; ro_loc[2] = &junk; ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1)); break; case 226: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1)); ro[2] = const0_rtx; ro_loc[2] = &junk; ro[3] = *(ro_loc[3] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1)); break; case 224: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 1)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 0), 0)); break; case 223: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0), 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0)); break; case 220: ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 1), 0)); break; case 219: case 218: case 217: case 216: case 215: case 214: case 213: case 212: case 211: case 210: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 2), 0)); break; case 209: case 207: case 205: case 203: case 201: case 199: case 197: case 195: case 193: case 191: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (pat, 1), 1), 0)); break; case 189: case 187: case 185: case 183: case 181: case 179: case 177: case 175: case 173: case 171: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); break; case 169: case 168: ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 1), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 2)); break; case 167: ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 1), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 2)); break; case 166: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 1)); break; case 165: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 1)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1)); break; case 164: ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 0), 0)); ro[1] = const0_rtx; ro_loc[1] = &junk; ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 0), 2)); ro[3] = *(ro_loc[3] = &XEXP (pat, 1)); break; case 154: case 148: case 142: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1)); recog_dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0); recog_dup_num[0] = 2; break; case 136: case 133: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (XEXP (pat, 1), 0, 0), 0)); break; case 135: case 134: case 132: case 131: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XVECEXP (XEXP (pat, 1), 0, 0)); break; case 130: case 127: case 124: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0)); break; case 108: case 107: case 106: case 105: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0)); recog_dup_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 0); recog_dup_num[0] = 1; recog_dup_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 1), 1), 1); recog_dup_num[1] = 2; break; case 98: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (pat, 1), 0), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (XEXP (pat, 1), 1), 0)); break; case 235: case 163: case 162: case 161: case 160: case 159: case 158: case 157: case 156: case 155: case 153: case 151: case 150: case 149: case 147: case 145: case 144: case 143: case 141: case 117: case 116: case 115: case 114: case 113: case 112: case 111: case 110: case 109: case 102: case 101: case 97: case 96: case 95: case 94: case 91: case 90: case 89: case 88: case 84: case 83: case 82: case 81: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XEXP (pat, 1), 1)); break; case 72: case 71: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 2), 0)); ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 3), 0)); break; case 68: case 67: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 2), 0)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 3), 0)); ro[4] = *(ro_loc[4] = &XEXP (XVECEXP (pat, 0, 4), 0)); recog_dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0); recog_dup_num[0] = 1; break; case 62: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0)); break; case 139: case 138: case 137: case 129: case 128: case 126: case 125: case 123: case 122: case 121: case 120: case 119: case 118: case 80: case 79: case 78: case 77: case 60: case 59: case 58: case 57: case 56: case 55: case 54: case 53: case 52: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 0)); break; case 48: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 0), 1)); recog_dup_loc[0] = &XEXP (XVECEXP (pat, 0, 1), 0); recog_dup_num[0] = 1; recog_dup_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 1); recog_dup_num[1] = 0; break; case 230: case 44: case 41: ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (pat, 1)); break; case 229: case 85: case 51: case 50: case 49: case 47: case 46: case 45: case 43: case 42: case 40: case 39: case 38: case 36: case 35: ro[0] = *(ro_loc[0] = &XEXP (pat, 0)); ro[1] = *(ro_loc[1] = &XEXP (pat, 1)); break; case 25: case 21: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 1), 0)); break; case 24: case 20: case 18: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 0), 1)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0)); break; case 23: case 19: case 17: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1), 0)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 0), 1)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0)); break; case 22: case 16: ro[0] = *(ro_loc[0] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (XVECEXP (pat, 0, 0), 1), 1)); ro[2] = *(ro_loc[2] = &XEXP (XVECEXP (pat, 0, 0), 1)); ro[3] = *(ro_loc[3] = &XEXP (XVECEXP (pat, 0, 1), 0)); break; case 34: case 33: case 32: case 14: case 12: case 10: ro[0] = *(ro_loc[0] = &XEXP (XEXP (pat, 1), 0)); ro[1] = *(ro_loc[1] = &XEXP (XEXP (pat, 1), 1)); break; case 8: case 6: ro[0] = *(ro_loc[0] = &XEXP (XVECEXP (pat, 0, 0), 1)); ro[1] = *(ro_loc[1] = &XEXP (XVECEXP (pat, 0, 1), 0)); break; case 221: case 4: case 2: case 0: ro[0] = *(ro_loc[0] = &XEXP (pat, 1)); break; default: abort (); } }