From 18ba85603c12ae8f3bc1aa035456aa929f64afef Mon Sep 17 00:00:00 2001 From: Alastair Houghton Date: Thu, 22 Feb 2024 11:45:12 +0000 Subject: [PATCH] [Triple] Add "swift" as a vendor. We want this so we can uniquely identify our fully-static Linux target using a triple (since we wish to make decisions about it in the compiler driver that wouldn't be appropriate for an "unknown" triple). rdar://123436421 --- llvm/include/llvm/TargetParser/Triple.h | 3 ++- llvm/lib/TargetParser/Triple.cpp | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/llvm/include/llvm/TargetParser/Triple.h b/llvm/include/llvm/TargetParser/Triple.h index f21a9c80ea9c8..95370894534f2 100644 --- a/llvm/include/llvm/TargetParser/Triple.h +++ b/llvm/include/llvm/TargetParser/Triple.h @@ -180,7 +180,8 @@ class Triple { Mesa, SUSE, OpenEmbedded, - LastVendorType = OpenEmbedded + Swift, + LastVendorType = Swift }; enum OSType { UnknownOS, diff --git a/llvm/lib/TargetParser/Triple.cpp b/llvm/lib/TargetParser/Triple.cpp index 1ff18c261a878..343a510b88084 100644 --- a/llvm/lib/TargetParser/Triple.cpp +++ b/llvm/lib/TargetParser/Triple.cpp @@ -226,6 +226,7 @@ StringRef Triple::getVendorTypeName(VendorType Kind) { case PC: return "pc"; case SCEI: return "scei"; case SUSE: return "suse"; + case Swift: return "swift"; } llvm_unreachable("Invalid VendorType!"); @@ -599,6 +600,7 @@ static Triple::VendorType parseVendor(StringRef VendorName) { .Case("amd", Triple::AMD) .Case("mesa", Triple::Mesa) .Case("suse", Triple::SUSE) + .Case("swift", Triple::Swift) .Case("oe", Triple::OpenEmbedded) .Default(Triple::UnknownVendor); }