Lines Matching defs:Name

293 static StringRef removeGCCRegisterPrefix(StringRef Name) {
294 if (Name[0] == '%' || Name[0] == '#')
295 Name = Name.substr(1);
297 return Name;
303 bool TargetInfo::isValidClobber(StringRef Name) const {
304 return (isValidGCCRegisterName(Name) ||
305 Name == "memory" || Name == "cc");
311 bool TargetInfo::isValidGCCRegisterName(StringRef Name) const {
312 if (Name.empty())
319 Name = removeGCCRegisterPrefix(Name);
324 if (isDigit(Name[0])) {
326 if (!Name.getAsInteger(0, n))
332 if (Name == Names[i])
346 if (AddlNames[i].Names[j] == Name && AddlNames[i].RegNum < NumNames)
359 if (Aliases[i].Aliases[j] == Name)
368 TargetInfo::getNormalizedGCCRegisterName(StringRef Name) const {
369 assert(isValidGCCRegisterName(Name) && "Invalid register passed in");
372 Name = removeGCCRegisterPrefix(Name);
380 if (isDigit(Name[0])) {
382 if (!Name.getAsInteger(0, n)) {
399 if (AddlNames[i].Names[j] == Name && AddlNames[i].RegNum < NumNames)
400 return Name;
412 if (Aliases[i].Aliases[j] == Name)
417 return Name;
421 const char *Name = Info.getConstraintStr().c_str();
423 if (*Name != '=' && *Name != '+')
426 if (*Name == '+')
429 Name++;
430 while (*Name) {
431 switch (*Name) {
433 if (!validateAsmConstraint(Name, Info)) {
461 if (Name[1] == '=' || Name[1] == '+')
462 Name++;
471 Name++;
479 bool TargetInfo::resolveSymbolicName(const char *&Name,
483 assert(*Name == '[' && "Symbolic name did not start with '['");
484 Name++;
485 const char *Start = Name;
486 while (*Name && *Name != ']')
487 Name++;
489 if (!*Name) {
494 std::string SymbolicName(Start, Name - Start);
506 const char *Name = Info.ConstraintStr.c_str();
508 if (!*Name)
511 while (*Name) {
512 switch (*Name) {
515 if (*Name >= '0' && *Name <= '9') {
516 unsigned i = *Name - '0';
534 } else if (!validateAsmConstraint(Name, Info)) {
543 if (!resolveSymbolicName(Name, OutputConstraints, NumOutputs, Index))
597 Name++;