diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2016-03-05 20:00:44 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2016-03-05 20:00:44 +0000 |
commit | 42083810162e4903115f5632e98fd78f25682c83 (patch) | |
tree | afdadd41f1d8182795bde7b6cf31e9464f4aff31 /llvm/lib/Support/TargetParser.cpp | |
parent | fa8c6ed3faee4f158d0b912f8c2e64f92b6b638a (diff) | |
download | bcm5719-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.cpp | 4 |
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(); } |