[llvm] r301174 - Add SUSE vendor
Ismail Donmez via llvm-commits
llvm-commits at lists.llvm.org
Mon Apr 24 04:18:30 PDT 2017
Author: ismail
Date: Mon Apr 24 06:18:29 2017
New Revision: 301174
URL: http://llvm.org/viewvc/llvm-project?rev=301174&view=rev
Log:
Add SUSE vendor
Summary: SUSE's ARM triples end with -gnueabi even though they are hard-float. This requires special handling of SUSE ARM triples. Hence we need a way to differentiate the SUSE as vendor. This CL adds that.
Reviewers: chandlerc, compnerd, echristo, rengolin
Reviewed By: rengolin
Subscribers: aemerson, rengolin, llvm-commits
Differential Revision: https://reviews.llvm.org/D32426
Modified:
llvm/trunk/include/llvm/ADT/Triple.h
llvm/trunk/lib/Support/Triple.cpp
llvm/trunk/unittests/ADT/TripleTest.cpp
Modified: llvm/trunk/include/llvm/ADT/Triple.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ADT/Triple.h?rev=301174&r1=301173&r2=301174&view=diff
==============================================================================
--- llvm/trunk/include/llvm/ADT/Triple.h (original)
+++ llvm/trunk/include/llvm/ADT/Triple.h Mon Apr 24 06:18:29 2017
@@ -140,7 +140,8 @@ public:
Myriad,
AMD,
Mesa,
- LastVendorType = Mesa
+ SUSE,
+ LastVendorType = SUSE
};
enum OSType {
UnknownOS,
Modified: llvm/trunk/lib/Support/Triple.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/Triple.cpp?rev=301174&r1=301173&r2=301174&view=diff
==============================================================================
--- llvm/trunk/lib/Support/Triple.cpp (original)
+++ llvm/trunk/lib/Support/Triple.cpp Mon Apr 24 06:18:29 2017
@@ -161,6 +161,7 @@ StringRef Triple::getVendorTypeName(Vend
case Myriad: return "myriad";
case AMD: return "amd";
case Mesa: return "mesa";
+ case SUSE: return "suse";
}
llvm_unreachable("Invalid VendorType!");
@@ -443,6 +444,7 @@ static Triple::VendorType parseVendor(St
.Case("myriad", Triple::Myriad)
.Case("amd", Triple::AMD)
.Case("mesa", Triple::Mesa)
+ .Case("suse", Triple::SUSE)
.Default(Triple::UnknownVendor);
}
Modified: llvm/trunk/unittests/ADT/TripleTest.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/unittests/ADT/TripleTest.cpp?rev=301174&r1=301173&r2=301174&view=diff
==============================================================================
--- llvm/trunk/unittests/ADT/TripleTest.cpp (original)
+++ llvm/trunk/unittests/ADT/TripleTest.cpp Mon Apr 24 06:18:29 2017
@@ -284,6 +284,12 @@ TEST(TripleTest, ParsedIDs) {
EXPECT_EQ(Triple::FreeBSD, T.getOS());
EXPECT_EQ(Triple::UnknownEnvironment, T.getEnvironment());
+ T = Triple("armv7hl-suse-linux-gnueabi");
+ EXPECT_EQ(Triple::arm, T.getArch());
+ EXPECT_EQ(Triple::SUSE, T.getVendor());
+ EXPECT_EQ(Triple::Linux, T.getOS());
+ EXPECT_EQ(Triple::GNUEABI, T.getEnvironment());
+
T = Triple("huh");
EXPECT_EQ(Triple::UnknownArch, T.getArch());
}
More information about the llvm-commits
mailing list