summaryrefslogtreecommitdiff
path: root/lib/Support/Triple.cpp
diff options
context:
space:
mode:
authorEli Bendersky <eliben@google.com>2013-01-22 18:02:49 +0000
committerEli Bendersky <eliben@google.com>2013-01-22 18:02:49 +0000
commit9dd2a3b1f2c253e20262535bb89b1ab6cc680ece (patch)
treea09ede4ebc6fd6ed1ba755225a016be1cec33aae /lib/Support/Triple.cpp
parent91df03b8f29905c8293f61696ffb95398eafa663 (diff)
downloadllvm-9dd2a3b1f2c253e20262535bb89b1ab6cc680ece.tar.gz
llvm-9dd2a3b1f2c253e20262535bb89b1ab6cc680ece.tar.bz2
llvm-9dd2a3b1f2c253e20262535bb89b1ab6cc680ece.tar.xz
Initial patch for x32 ABI support.
Add the x32 environment kind to the triple, and separate the concept of pointer size and callee save stack slot size, since they're not equal on x32. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173175 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Support/Triple.cpp')
-rw-r--r--lib/Support/Triple.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Support/Triple.cpp b/lib/Support/Triple.cpp
index eefb96bfee..ad7b18942e 100644
--- a/lib/Support/Triple.cpp
+++ b/lib/Support/Triple.cpp
@@ -140,6 +140,7 @@ const char *Triple::getEnvironmentTypeName(EnvironmentType Kind) {
case GNU: return "gnu";
case GNUEABIHF: return "gnueabihf";
case GNUEABI: return "gnueabi";
+ case GNUX32: return "gnux32";
case EABI: return "eabi";
case MachO: return "macho";
case Android: return "android";
@@ -284,6 +285,7 @@ static Triple::EnvironmentType parseEnvironment(StringRef EnvironmentName) {
.StartsWith("eabi", Triple::EABI)
.StartsWith("gnueabihf", Triple::GNUEABIHF)
.StartsWith("gnueabi", Triple::GNUEABI)
+ .StartsWith("gnux32", Triple::GNUX32)
.StartsWith("gnu", Triple::GNU)
.StartsWith("macho", Triple::MachO)
.StartsWith("android", Triple::Android)