summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic/TargetInfo.cpp
diff options
context:
space:
mode:
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>2013-12-16 03:20:06 +0000
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>2013-12-16 03:20:06 +0000
commitd68c7aa7e633e6bd191d3964eb5a941f8d66f152 (patch)
tree0ce9bb8daa1e43485aad1495179f76c200a5cc96 /clang/lib/Basic/TargetInfo.cpp
parent774cabb5386f9d680a28d83ee478c79673bef145 (diff)
downloadbcm5719-llvm-d68c7aa7e633e6bd191d3964eb5a941f8d66f152.tar.gz
bcm5719-llvm-d68c7aa7e633e6bd191d3964eb5a941f8d66f152.zip
Stop crashing on empty asm input constraints
An empty string for an ASM input constraint is invalid, and will crash during clang CodeGen. Change TargetInfo::validateInputConstraint to reject an empty string. <rdar://problem/15552191> llvm-svn: 197362
Diffstat (limited to 'clang/lib/Basic/TargetInfo.cpp')
-rw-r--r--clang/lib/Basic/TargetInfo.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Basic/TargetInfo.cpp b/clang/lib/Basic/TargetInfo.cpp
index 5aa84afc4d0..d0ed6e6b161 100644
--- a/clang/lib/Basic/TargetInfo.cpp
+++ b/clang/lib/Basic/TargetInfo.cpp
@@ -482,6 +482,9 @@ bool TargetInfo::validateInputConstraint(ConstraintInfo *OutputConstraints,
ConstraintInfo &Info) const {
const char *Name = Info.ConstraintStr.c_str();
+ if (!*Name)
+ return false;
+
while (*Name) {
switch (*Name) {
default:
OpenPOWER on IntegriCloud