Lines Matching refs:operand

50      h. `operand' is the base of an array of operand data for the insn.
52 2. An array of `struct insn_operand data', used by `operand' above.
55 for this operand.
57 b. `constraint' is the constraint for this operand.
59 c. `address_p' indicates that the operand appears within ADDRESS
62 d. `mode' is the machine mode that that operand is supposed to have.
135 /* Begin with a null operand at index 0. */
169 struct operand_data operand[MAX_MAX_OPERANDS];
423 /* Stores in max_opno the largest operand number present in `part', if
425 the operand data into `d->operand[i]'.
457 if (d->operand[opno].seen)
460 "repeated operand number %d\n", opno);
464 d->operand[opno].seen = 1;
465 d->operand[opno].mode = GET_MODE (part);
466 d->operand[opno].strict_low = this_strict_low;
467 d->operand[opno].predicate = XSTR (part, 1);
468 d->operand[opno].constraint = strip_whitespace (XSTR (part, 2));
469 d->operand[opno].n_alternatives
470 = n_occurrences (',', d->operand[opno].constraint) + 1;
471 d->operand[opno].address_p = this_address_p;
472 d->operand[opno].eliminable = 1;
486 if (d->operand[opno].seen)
489 "repeated operand number %d\n", opno);
493 d->operand[opno].seen = 1;
494 d->operand[opno].mode = GET_MODE (part);
495 d->operand[opno].strict_low = 0;
496 d->operand[opno].predicate = "scratch_operand";
497 d->operand[opno].constraint = strip_whitespace (XSTR (part, 1));
498 d->operand[opno].n_alternatives
499 = n_occurrences (',', d->operand[opno].constraint) + 1;
500 d->operand[opno].address_p = 0;
501 d->operand[opno].eliminable = 0;
516 if (d->operand[opno].seen)
519 "repeated operand number %d\n", opno);
523 d->operand[opno].seen = 1;
524 d->operand[opno].mode = GET_MODE (part);
525 d->operand[opno].strict_low = 0;
526 d->operand[opno].predicate = XSTR (part, 1);
527 d->operand[opno].constraint = 0;
528 d->operand[opno].address_p = 0;
529 d->operand[opno].eliminable = 0;
623 if (compare_operands (od, &d->operand[0]))
633 if (! compare_operands (od2, &d->operand[i]))
645 od2 = &d->operand[i];
750 if (d->operand[start].n_alternatives > 0)
758 for (p = d->operand[start].constraint; (c = *p); p += len)
779 "invalid length %d for char '%c' in alternative %d of operand %d",
796 "NUL in alternative %d of operand %d",
804 "'%c' in alternative %d of operand %d",
812 n = d->operand[start].n_alternatives;
813 else if (n != d->operand[start].n_alternatives)
816 "wrong number of alternatives in operand %d",
826 /* Verify that there are no gaps in operand numbers for INSNs. */
834 if (d->operand[i].seen == 0)
836 message_with_line (d->lineno, "missing operand %d", i);
869 memset (d->operand, 0, sizeof (d->operand));
911 memset (d->operand, 0, sizeof (d->operand));
954 memset (d->operand, 0, sizeof (d->operand));
996 memset (d->operand, 0, sizeof (d->operand));
1124 of operand constraint strings above, in validate_insn_alternatives.
1193 of an operand constraint string, or issue an error message if there
1211 message_with_line (lineno, "note: in operand %d", opno);