diff options
author | Artyom Skrobov <Artyom.Skrobov@arm.com> | 2013-11-21 14:03:21 +0000 |
---|---|---|
committer | Artyom Skrobov <Artyom.Skrobov@arm.com> | 2013-11-21 14:03:21 +0000 |
commit | 468ee230eab2c6abf84b25622058d2cf321138af (patch) | |
tree | c1b9daf5b07d2d65475c51da26c4b11a0194101a /llvm/lib/Target | |
parent | 63bf66816c0c110954bc05d1d8915c19ea1f57fa (diff) | |
download | bcm5719-llvm-468ee230eab2c6abf84b25622058d2cf321138af.tar.gz bcm5719-llvm-468ee230eab2c6abf84b25622058d2cf321138af.zip |
[ARM] add basic Cortex-A7 support to LLVM backend
llvm-svn: 195358
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r-- | llvm/lib/Target/ARM/ARM.td | 11 | ||||
-rw-r--r-- | llvm/lib/Target/ARM/ARMSubtarget.h | 3 |
2 files changed, 13 insertions, 1 deletions
diff --git a/llvm/lib/Target/ARM/ARM.td b/llvm/lib/Target/ARM/ARM.td index 36e5680ca4e..daa3793c195 100644 --- a/llvm/lib/Target/ARM/ARM.td +++ b/llvm/lib/Target/ARM/ARM.td @@ -180,6 +180,13 @@ def ProcA5 : SubtargetFeature<"a5", "ARMProcFamily", "CortexA5", [FeatureSlowFPBrcc, FeatureHasSlowFPVMLx, FeatureVMLxForwarding, FeatureT2XtPk, FeatureTrustZone]>; +def ProcA7 : SubtargetFeature<"a7", "ARMProcFamily", "CortexA7", + "Cortex-A7 ARM processors", + [FeatureSlowFPBrcc, FeatureHasSlowFPVMLx, + FeatureVMLxForwarding, FeatureT2XtPk, + FeatureVFP4, FeatureMP, + FeatureHWDiv, FeatureHWDivARM, + FeatureTrustZone, FeatureVirtualization]>; def ProcA8 : SubtargetFeature<"a8", "ARMProcFamily", "CortexA8", "Cortex-A8 ARM processors", [FeatureSlowFPBrcc, FeatureHasSlowFPVMLx, @@ -296,6 +303,10 @@ def : ProcessorModel<"cortex-a5", CortexA8Model, [ProcA5, HasV7Ops, FeatureNEON, FeatureDB, FeatureVFP4, FeatureDSPThumb2, FeatureHasRAS, FeatureAClass]>; +def : ProcessorModel<"cortex-a7", CortexA8Model, + [ProcA7, HasV7Ops, FeatureNEON, FeatureDB, + FeatureDSPThumb2, FeatureHasRAS, + FeatureAClass]>; def : ProcessorModel<"cortex-a8", CortexA8Model, [ProcA8, HasV7Ops, FeatureNEON, FeatureDB, FeatureDSPThumb2, FeatureHasRAS, diff --git a/llvm/lib/Target/ARM/ARMSubtarget.h b/llvm/lib/Target/ARM/ARMSubtarget.h index 5276901bbb9..5fc9f8f460b 100644 --- a/llvm/lib/Target/ARM/ARMSubtarget.h +++ b/llvm/lib/Target/ARM/ARMSubtarget.h @@ -31,7 +31,8 @@ class TargetOptions; class ARMSubtarget : public ARMGenSubtargetInfo { protected: enum ARMProcFamilyEnum { - Others, CortexA5, CortexA8, CortexA9, CortexA15, CortexR5, Swift, CortexA53, CortexA57 + Others, CortexA5, CortexA7, CortexA8, CortexA9, CortexA15, CortexR5, + Swift, CortexA53, CortexA57 }; enum ARMProcClassEnum { None, AClass, RClass, MClass |