Change VFPNeonA8 definition to make the code easier to read.
authorEvan Cheng <evan.cheng@apple.com>
Wed, 23 Feb 2011 02:35:33 +0000 (02:35 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Wed, 23 Feb 2011 02:35:33 +0000 (02:35 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126298 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMInstrFormats.td
lib/Target/ARM/NEONMoveFix.cpp

index b0cec4b1c3791f3cadf1eab0ecead944559c332d..359ac45cee1dc942920b048150cdcecf8447bcce 100644 (file)
@@ -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.
index e8393c53dd83d3e7a936e12cda680ae79f2825d9..965665c2821ac86e9f54bc7202a1e6c68e318f6d 100644 (file)
@@ -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) {