summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic/Targets.cpp
diff options
context:
space:
mode:
authorBen Langmuir <blangmuir@apple.com>2015-08-07 01:59:56 +0000
committerBen Langmuir <blangmuir@apple.com>2015-08-07 01:59:56 +0000
commit587aeafe2c1d7bcc3a330cab4c6812f736127baa (patch)
tree7acf52f412adf413c53743f251add47d81392e19 /clang/lib/Basic/Targets.cpp
parent315cc068409555a2969da4a57f1295c3d98e4a85 (diff)
downloadbcm5719-llvm-587aeafe2c1d7bcc3a330cab4c6812f736127baa.tar.gz
bcm5719-llvm-587aeafe2c1d7bcc3a330cab4c6812f736127baa.zip
Make 'arm' cover both 32 and 64 bit architecutres
... and add aarch32 to specifically refer to the 32-bit ones. Previously, 'arm' meant only 32-bit architectures and there was no way for a module to build with both 32 and 64 bit ARM architectures. Now a module that is intended to work on both architectures can specify requires arm whereas a module only for 32-bit platforms can say requires aarch32 and just like before, 64-bit only can say requires aarch64 llvm-svn: 244306
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
-rw-r--r--clang/lib/Basic/Targets.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index 993f48ded38..9f0bd964be1 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -4551,6 +4551,7 @@ public:
bool hasFeature(StringRef Feature) const override {
return llvm::StringSwitch<bool>(Feature)
.Case("arm", true)
+ .Case("aarch32", true)
.Case("softfloat", SoftFloat)
.Case("thumb", isThumb())
.Case("neon", (FPU & NeonFPU) && !SoftFloat)
@@ -5198,6 +5199,7 @@ public:
bool hasFeature(StringRef Feature) const override {
return Feature == "aarch64" ||
Feature == "arm64" ||
+ Feature == "arm" ||
(Feature == "neon" && FPU == NeonMode);
}
OpenPOWER on IntegriCloud