summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/TargetParser.cpp
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@compnerd.org>2016-03-05 20:00:44 +0000
committerSaleem Abdulrasool <compnerd@compnerd.org>2016-03-05 20:00:44 +0000
commit42083810162e4903115f5632e98fd78f25682c83 (patch)
treeafdadd41f1d8182795bde7b6cf31e9464f4aff31 /llvm/lib/Support/TargetParser.cpp
parentfa8c6ed3faee4f158d0b912f8c2e64f92b6b638a (diff)
downloadbcm5719-llvm-42083810162e4903115f5632e98fd78f25682c83.tar.gz
bcm5719-llvm-42083810162e4903115f5632e98fd78f25682c83.zip
Support: catch invalid accesses
It is possible to invoke these methods on an invalid input resulting in an invalid substring construction. It seems that we do not have unit tests for these methods. Tests to ensure that the invalid call is caught to follow in clang. Resolves PR26839. llvm-svn: 262778
Diffstat (limited to 'llvm/lib/Support/TargetParser.cpp')
-rw-r--r--llvm/lib/Support/TargetParser.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Support/TargetParser.cpp b/llvm/lib/Support/TargetParser.cpp
index 7bc3574e3c4..bd02cb1ed54 100644
--- a/llvm/lib/Support/TargetParser.cpp
+++ b/llvm/lib/Support/TargetParser.cpp
@@ -305,13 +305,13 @@ StringRef llvm::ARM::getArchName(unsigned ArchKind) {
}
StringRef llvm::ARM::getCPUAttr(unsigned ArchKind) {
- if (ArchKind >= ARM::AK_LAST)
+ if (ArchKind == ARM::AK_INVALID || ArchKind >= ARM::AK_LAST)
return StringRef();
return ARCHNames[ArchKind].getCPUAttr();
}
StringRef llvm::ARM::getSubArch(unsigned ArchKind) {
- if (ArchKind >= ARM::AK_LAST)
+ if (ArchKind == ARM::AK_INVALID || ArchKind >= ARM::AK_LAST)
return StringRef();
return ARCHNames[ArchKind].getSubArch();
}
OpenPOWER on IntegriCloud