Home | History | Annotate | Download | only in ARM

Lines Matching refs:Constraint

1092     // to the VFP2 class (D0-D15). We currently model this constraint prior to
11710 // At this point, we have to lower this constraint to something else, so we
11712 // to be in register, while the X constraint is much more permissive.
11729 /// getConstraintType - Given a constraint letter, return the type of
11730 /// constraint it is for this target.
11732 ARMTargetLowering::getConstraintType(StringRef Constraint) const {
11733 if (Constraint.size() == 1) {
11734 switch (Constraint[0]) {
11743 // currently handle addresses it is the same as an 'r' memory constraint.
11746 } else if (Constraint.size() == 2) {
11747 switch (Constraint[0]) {
11753 return TargetLowering::getConstraintType(Constraint);
11756 /// Examine constraint type and operand type and determine a weight value.
11758 /// and the current alternative constraint selected.
11761 AsmOperandInfo &info, const char *constraint) const {
11769 // Look at the constraint type.
11770 switch (*constraint) {
11772 weight = TargetLowering::getSingleConstraintMatchWeight(info, constraint);
11792 const TargetRegisterInfo *TRI, StringRef Constraint, MVT VT) const {
11793 if (Constraint.size() == 1) {
11794 // GCC ARM Constraint Letters
11795 switch (Constraint[0]) {
11834 if (StringRef("{cc}").equals_lower(Constraint))
11837 return TargetLowering::getRegForInlineAsmConstraint(TRI, Constraint, VT);
11843 std::string &Constraint,
11849 if (Constraint.length() != 1) return;
11851 char ConstraintLetter = Constraint[0];
11905 // what this constraint is intended for. Implemented for
11915 // zero to match GCC. This constraint is used by GCC internally for
12004 return TargetLowering::LowerAsmOperandForConstraint(Op, Constraint, Ops, DAG);