Fix regression in parsing armv{6,7}hl- triples. These are used by SUSE

and Redhat currently.

Reviewed by Jonathan Roelofs.

llvm-svn: 236492
This commit is contained in:
Ismail Donmez 2015-05-05 09:29:43 +00:00
parent a744ff58f3
commit 5eb52b74cb
2 changed files with 15 additions and 2 deletions

View File

@ -279,9 +279,10 @@ static Triple::ArchType parseARMArch(StringRef ArchName) {
.Cases("v3", "v3m", isThumb ? Triple::UnknownArch : arch)
.Cases("v4", "v4t", arch)
.Cases("v5", "v5e", "v5t", "v5te", "v5tej", arch)
.Cases("v6", "v6j", "v6k", "v6m", "v6sm", arch)
.Cases("v6", "v6hl", "v6j", "v6k", arch)
.Cases("v6m", "v6sm", arch)
.Cases("v6t2", "v6z", "v6zk", arch)
.Cases("v7", "v7a", "v7em", "v7l", arch)
.Cases("v7", "v7a", "v7em", "v7hl", "v7l", arch)
.Cases("v7m", "v7r", "v7s", arch)
.Cases("v8", "v8a", arch)
.Cases("v8.1", "v8.1a", arch)

View File

@ -129,6 +129,18 @@ TEST(TripleTest, ParsedIDs) {
EXPECT_EQ(Triple::UnknownOS, T.getOS());
EXPECT_EQ(Triple::EABI, T.getEnvironment());
T = Triple("armv6hl-none-linux-gnueabi");
EXPECT_EQ(Triple::arm, T.getArch());
EXPECT_EQ(Triple::Linux, T.getOS());
EXPECT_EQ(Triple::UnknownVendor, T.getVendor());
EXPECT_EQ(Triple::GNUEABI, T.getEnvironment());
T = Triple("armv7hl-none-linux-gnueabi");
EXPECT_EQ(Triple::arm, T.getArch());
EXPECT_EQ(Triple::Linux, T.getOS());
EXPECT_EQ(Triple::UnknownVendor, T.getVendor());
EXPECT_EQ(Triple::GNUEABI, T.getEnvironment());
T = Triple("amdil-unknown-unknown");
EXPECT_EQ(Triple::amdil, T.getArch());
EXPECT_EQ(Triple::UnknownVendor, T.getVendor());