Searched refs:constraints (Results 1 - 18 of 18) sorted by relevance

/freebsd-9.3-release/contrib/llvm/lib/IR/
H A DInlineAsm.cpp38 const std::string &constraints, bool hasSideEffects,
41 AsmString(asmString), Constraints(constraints),
46 assert(Verify(getFunctionType(), constraints) &&
47 "Function type not legal for constraints!");
146 // Parse the various constraints.
187 // FIXME: For now assuming these are 2-character constraints.
216 // Scan the constraints string.
251 // Error parsing constraints.
37 InlineAsm(PointerType *Ty, const std::string &asmString, const std::string &constraints, bool hasSideEffects, bool isAlignStack, AsmDialect asmDialect) argument
H A DConstantsContext.h356 : asm_string(AsmString), constraints(Constraints),
360 std::string constraints; member in struct:llvm::InlineAsmKeyType
366 this->constraints == that.constraints &&
374 if (this->constraints != that.constraints)
375 return this->constraints < that.constraints;
497 return new InlineAsm(Ty, Key.asm_string, Key.constraints,
/freebsd-9.3-release/contrib/gcc/
H A Drecog.c123 const char **constraints;
142 constraints = alloca (noperands * sizeof (char *));
144 decode_asm_operands (x, operands, NULL, constraints, NULL);
148 const char *c = constraints[i];
152 c = constraints[c[0] - '0'];
283 /* After reload, verify that all constraints are satisfied. */
318 we also require that the operands meet the constraints for
1472 and the constraints for the operands into CONSTRAINTS. argument
1481 const char **constraints, enum machine_mode *modes)
1500 if (constraints)
122 const char **constraints; local
2274 const char *constraints[MAX_RECOG_OPERANDS]; local
[all...]
H A Dregclass.c967 const char *constraints[MAX_RECOG_OPERANDS];
973 constraints[i] = recog_data.constraints[i];
994 else if (constraints[i][0] == 'p'
995 || EXTRA_ADDRESS_CONSTRAINT (constraints[i][0], constraints[i]))
1005 if (constraints[i][0] == '%')
1010 /* Handle commutative operands by swapping the constraints.
1014 xconstraints[j] = constraints[j];
1016 xconstraints[i] = constraints[
963 const char *constraints[MAX_RECOG_OPERANDS]; local
1400 record_reg_classes(int n_alts, int n_ops, rtx *ops, enum machine_mode *modes, const char **constraints, rtx insn, struct costs *op_costs, struct reg_pref *reg_pref) argument
[all...]
H A Drecog.h158 with all of the existing md file insn constraints and output
169 const char *constraints[MAX_RECOG_OPERANDS]; member in struct:recog_data
201 /* The number of alternatives in the constraints for the insn. */
H A Dstmt.c441 /* Similar, but for input constraints. */
446 const char * const * constraints,
519 constraint = constraints[match];
681 const char **constraints
694 /* Collect constraints. */
697 constraints[i] = TREE_STRING_POINTER (TREE_VALUE (TREE_PURPOSE (t)));
699 constraints[i] = TREE_STRING_POINTER (TREE_VALUE (TREE_PURPOSE (t)));
758 constraint = constraints[i];
792 constraint = constraints[i + noutputs];
794 constraints,
438 parse_input_constraint(const char **constraint_p, int input_num, int ninputs, int noutputs, int ninout, const char * const * constraints, bool *allows_mem, bool *allows_reg) argument
675 const char **constraints local
[all...]
H A Dlocal-alloc.c1367 && recog_data.constraints[0][0] == '='
1368 && recog_data.constraints[0][1] != '&')
1378 const char *p = recog_data.constraints[i];
1395 && recog_data.constraints[i-1][0] == '%')
1397 && recog_data.constraints[i][0] == '%'))
1406 && 0 == requires_inout (recog_data.constraints[i]))
1414 if (recog_data.constraints[i][0] == 'p'
1415 || EXTRA_ADDRESS_CONSTRAINT (recog_data.constraints[i][0],
1416 recog_data.constraints[i]))
H A Dpostreload.c360 "better" is in terms of '?' and '!' constraints. Among the remaining
372 const char *constraints[MAX_RECOG_OPERANDS]; local
492 p = constraints[i] = recog_data.constraints[i];
495 /* Add the reject values for each alternative given by the constraints
513 || constraints[i][0] == '='
514 || constraints[i][0] == '+')
531 p = constraints[i];
H A Dtree-ssa-structalias.c56 /* The idea behind this analyzer is to generate set constraints from the
57 program, then solve the resulting constraints in order to generate the
60 Set constraints are a way of modeling program analysis problems that
64 from these operations. To solve a system of set constraints, you derive
115 In order to solve the system of set constraints, the following is
122 Direct constraints are ADDRESSOF constraints that require no extra
124 Copy constraints are those of the form P = Q.
125 Complex constraints are all the constraints involvin
[all...]
H A Dreload.c843 /* For matching constraints, we often get notional input reloads where
2534 /* These start out as the constraints for the insn
2536 char *constraints[MAX_RECOG_OPERANDS];
2634 /* Just return "no reloads" if insn has no operands with constraints. */
2643 memcpy (constraints, recog_data.constraints, noperands * sizeof (char *));
2658 p = constraints[i];
2757 if (*constraints[i] == 0)
2760 else if (constraints[i][0] == 'p'
2761 || EXTRA_ADDRESS_CONSTRAINT (constraints[
2523 char *constraints[MAX_RECOG_OPERANDS]; local
[all...]
H A Dregrename.c787 matching constraints. Also promote OP_OUT to OP_INOUT
817 if (recog_data.constraints[i][0] == '\0')
876 if (recog_data.constraints[opn][0] == '\0')
934 /* ??? Many targets have output constraints on the SET_DEST
1622 matching constraints. Also promote OP_OUT to OP_INOUT
1725 if (recog_data.constraints[i][0] == '\0')
H A Dglobal.c2170 const char *p = recog_data.constraints[opno];
H A Dregmove.c23 /* This module looks for cases where matching constraints would force
1534 /* Returns nonzero if INSN's pattern has matching constraints for any operand.
1538 Initialize the info in MATCHP based on the constraints. */
1563 p = recog_data.constraints[op_no];
H A Dreload1.c1244 "%<asm%> operand has impossible constraints");
1337 const char *constraints[MAX_RECOG_OPERANDS];
1365 /* Get the operand values and constraints out of the insn. */
1367 constraints, operand_mode);
1372 const char *p = constraints[i];
1430 constraints, must be usable as reload registers. So clear them
4052 (obeying register constraints). That is correct; such reload
4110 /* We must also verify that the constraints
4118 /* If the constraints were not met, then
7530 Also do the same thing for RELOAD_OTHER constraints wher
1332 const char *constraints[MAX_RECOG_OPERANDS]; local
[all...]
H A Ddf-problems.c2322 const char *p = recog_data.constraints[opno];
/freebsd-9.3-release/contrib/llvm/tools/clang/lib/AST/
H A DStmt.cpp370 /// output operand. All output constraints are known to be non-empty (either
384 /// constraints, these can be empty.
450 // "Simple" inline asms have no constraints or operands, just convert the asm
632 StringLiteral **constraints, Expr **exprs,
647 std::copy(constraints, constraints + NumExprs, Constraints);
657 ArrayRef<StringRef> constraints, ArrayRef<Expr*> exprs,
664 initialize(C, asmstr, asmtoks, constraints, exprs, clobbers);
676 ArrayRef<StringRef> constraints,
684 assert(NumExprs == constraints
629 GCCAsmStmt(const ASTContext &C, SourceLocation asmloc, bool issimple, bool isvolatile, unsigned numoutputs, unsigned numinputs, IdentifierInfo **names, StringLiteral **constraints, Expr **exprs, StringLiteral *asmstr, unsigned numclobbers, StringLiteral **clobbers, SourceLocation rparenloc) argument
653 MSAsmStmt(const ASTContext &C, SourceLocation asmloc, SourceLocation lbraceloc, bool issimple, bool isvolatile, ArrayRef<Token> asmtoks, unsigned numoutputs, unsigned numinputs, ArrayRef<StringRef> constraints, ArrayRef<Expr*> exprs, StringRef asmstr, ArrayRef<StringRef> clobbers, SourceLocation endloc) argument
674 initialize(const ASTContext &C, StringRef asmstr, ArrayRef<Token> asmtoks, ArrayRef<StringRef> constraints, ArrayRef<Expr*> exprs, ArrayRef<StringRef> clobbers) argument
[all...]
/freebsd-9.3-release/contrib/llvm/tools/clang/lib/Sema/
H A DSemaStmtAsm.cpp80 MultiExprArg constraints, MultiExprArg Exprs,
85 reinterpret_cast<StringLiteral**>(constraints.data());
148 // Only allow void types for memory constraints.
218 // Validate constraints and modifiers.
77 ActOnGCCAsmStmt(SourceLocation AsmLoc, bool IsSimple, bool IsVolatile, unsigned NumOutputs, unsigned NumInputs, IdentifierInfo **Names, MultiExprArg constraints, MultiExprArg Exprs, Expr *asmString, MultiExprArg clobbers, SourceLocation RParenLoc) argument
/freebsd-9.3-release/contrib/llvm/tools/clang/include/clang/AST/
H A DStmt.h1416 /// output operand. All output constraints are known to be non-empty (either
1438 /// constraints, these can be empty.
1514 IdentifierInfo **names, StringLiteral **constraints, Expr **exprs,
1690 ArrayRef<StringRef> constraints,

Completed in 245 milliseconds