Make identity default, and fix PR1020
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31979 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/CBackend/CBackend.cpp b/lib/Target/CBackend/CBackend.cpp
index 18c4d06..89ed2ad 100644
--- a/lib/Target/CBackend/CBackend.cpp
+++ b/lib/Target/CBackend/CBackend.cpp
@@ -2265,10 +2265,6 @@
assert(c.Codes.size() == 1 && "Too many asm constraint codes to handle");
- //catch numeric constraints
- if (c.Codes[0].find_first_not_of("0123456789") >= c.Codes[0].size())
- return c.Codes[0];
-
const char** table = 0;
//Grab the translation table from TargetAsmInfo if it exists
@@ -2291,8 +2287,8 @@
if (c.Codes[0] == table[i])
return table[i+1];
- assert(0 && "Unknown Asm Constraint");
- return "";
+ //default is identity
+ return c.Codes[0];
}
//TODO: import logic from AsmPrinter.cpp
@@ -2383,7 +2379,7 @@
if (I + 1 != E)
Out << ",";
}
- Out << "\n :" << Clobber.substr(1) << ")\n";
+ Out << "\n :" << (Clobber.size() ? Clobber.substr(1) : "") << ")\n";
}
void CWriter::visitMallocInst(MallocInst &I) {