aboutsummaryrefslogtreecommitdiff
path: root/lib/Basic/Targets.cpp
diff options
context:
space:
mode:
authorMike Stump <mrs@apple.com>2009-08-04 19:48:52 +0000
committerMike Stump <mrs@apple.com>2009-08-04 19:48:52 +0000
commit59e657236236351623ddea0b3c87b60d209d40ab (patch)
tree24ceb383f7da819b408662b310bfdd5cf7e13ded /lib/Basic/Targets.cpp
parentfca9361839ecc53224c764517e62fc0e15166004 (diff)
Add armv7 support.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78092 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Basic/Targets.cpp')
-rw-r--r--lib/Basic/Targets.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp
index 7298db45f0..51f5c87803 100644
--- a/lib/Basic/Targets.cpp
+++ b/lib/Basic/Targets.cpp
@@ -1018,6 +1018,7 @@ class ARMTargetInfo : public TargetInfo {
Armv4t,
Armv5,
Armv6,
+ Armv7a,
XScale
} ArmArch;
public:
@@ -1025,7 +1026,9 @@ public:
// FIXME: Are the defaults correct for ARM?
DescriptionString = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-"
"i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:64:64";
- if (triple.find("arm-") == 0 || triple.find("armv6-") == 0)
+ if (triple.find("armv7-") == 0)
+ ArmArch = Armv7a;
+ else if (triple.find("arm-") == 0 || triple.find("armv6-") == 0)
ArmArch = Armv6;
else if (triple.find("armv5-") == 0)
ArmArch = Armv5;
@@ -1050,7 +1053,10 @@ public:
Define(Defs, "__LITTLE_ENDIAN__");
// Subtarget options.
- if (ArmArch == Armv6) {
+ if (ArmArch == Armv7a) {
+ Define(Defs, "__ARM_ARCH_7A__");
+ Define(Defs, "__THUMB_INTERWORK__");
+ } else if (ArmArch == Armv6) {
Define(Defs, "__ARM_ARCH_6K__");
Define(Defs, "__THUMB_INTERWORK__");
} else if (ArmArch == Armv5) {