summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2011-02-23 02:35:33 +0000
committerEvan Cheng <evan.cheng@apple.com>2011-02-23 02:35:33 +0000
commit2b943566f394eba5aac0c6c94a2375ea37c9341f (patch)
treea25d2b066ecfe79280bac37aec15df52620eb357
parent5129bdecd87c518713765acd6998c80f9eef36a2 (diff)
downloadllvm-2b943566f394eba5aac0c6c94a2375ea37c9341f.tar.gz
llvm-2b943566f394eba5aac0c6c94a2375ea37c9341f.tar.bz2
llvm-2b943566f394eba5aac0c6c94a2375ea37c9341f.tar.xz
Change VFPNeonA8 definition to make the code easier to read.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126298 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/ARM/ARMInstrFormats.td2
-rw-r--r--lib/Target/ARM/NEONMoveFix.cpp9
2 files changed, 3 insertions, 8 deletions
diff --git a/lib/Target/ARM/ARMInstrFormats.td b/lib/Target/ARM/ARMInstrFormats.td
index b0cec4b1c3..359ac45cee 100644
--- a/lib/Target/ARM/ARMInstrFormats.td
+++ b/lib/Target/ARM/ARMInstrFormats.td
@@ -134,7 +134,7 @@ def GenericDomain : Domain<0>;
def VFPDomain : Domain<1>; // Instructions in VFP domain only
def NeonDomain : Domain<2>; // Instructions in Neon domain only
def VFPNeonDomain : Domain<3>; // Instructions in both VFP & Neon domains
-def VFPNeonA8Domain : Domain<7>; // Instructions in VFP & Neon under A8
+def VFPNeonA8Domain : Domain<5>; // Instructions in VFP & Neon under A8
//===----------------------------------------------------------------------===//
// ARM special operands.
diff --git a/lib/Target/ARM/NEONMoveFix.cpp b/lib/Target/ARM/NEONMoveFix.cpp
index e8393c53dd..965665c282 100644
--- a/lib/Target/ARM/NEONMoveFix.cpp
+++ b/lib/Target/ARM/NEONMoveFix.cpp
@@ -45,13 +45,8 @@ namespace {
}
static bool inNEONDomain(unsigned Domain, bool isA8) {
- if (Domain & ARMII::DomainNEON) {
- // Some instructions only go down NEON pipeline when executed on CortexA8.
- if (Domain & ARMII::DomainNEONA8)
- return isA8;
- return true;
- }
- return false;
+ return (Domain & ARMII::DomainNEON) ||
+ (isA8 && (Domain & ARMII::DomainNEONA8));
}
bool NEONMoveFixPass::InsertMoves(MachineBasicBlock &MBB) {