ConstraintInfo *OutputConstraints,
unsigned NumOutputs, unsigned &Index) const;
+ // Constraint parm will be left pointing at the last character of
+ // the constraint. In practice, it won't be changed unless the
+ // constraint is longer than one character.
virtual std::string convertConstraint(const char *&Constraint) const {
// 'p' defaults to 'r', but can be overridden by targets.
if (*Constraint == 'p')
std::string R;
switch (*Constraint) {
case 'U': // Two-character constraint; add "^" hint for later parsing.
- R = std::string("^") + Constraint;
+ R = std::string("^") + std::string(Constraint, 2);
Constraint++;
break;
default: