Removed the VMLxForwarding feature for the Cortex-A15 target.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164030 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Silviu Baranga 2012-09-17 14:10:54 +00:00
parent a52c3acc14
commit c8bf0f8662
2 changed files with 13 additions and 2 deletions

View File

@ -142,8 +142,7 @@ def ProcA9 : SubtargetFeature<"a9", "ARMProcFamily", "CortexA9",
// FIXME: It has not been determined if A15 has these features. // FIXME: It has not been determined if A15 has these features.
def ProcA15 : SubtargetFeature<"a15", "ARMProcFamily", "CortexA15", def ProcA15 : SubtargetFeature<"a15", "ARMProcFamily", "CortexA15",
"Cortex-A15 ARM processors", "Cortex-A15 ARM processors",
[FeatureVMLxForwarding, [FeatureT2XtPk, FeatureFP16,
FeatureT2XtPk, FeatureFP16,
FeatureAvoidPartialCPSR]>; FeatureAvoidPartialCPSR]>;
class ProcNoItin<string Name, list<SubtargetFeature> Features> class ProcNoItin<string Name, list<SubtargetFeature> Features>

View File

@ -0,0 +1,12 @@
; RUN: llc < %s -march=arm -float-abi=hard -mcpu=cortex-a15 -mattr=+neon,+neonfp | FileCheck %s
; This test checks that the VMLxForwarting feature is disabled for A15.
; CHECK: fun_a
define <4 x i32> @fun_a(<4 x i32> %x, <4 x i32> %y) nounwind{
%1 = add <4 x i32> %x, %y
; CHECK-NOT: vmul
; CHECK: vmla
%2 = mul <4 x i32> %1, %1
%3 = add <4 x i32> %y, %2
ret <4 x i32> %3
}