aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/ARM/ARMInstrFormats.td
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2011-02-22 19:53:14 +0000
committerEvan Cheng <evan.cheng@apple.com>2011-02-22 19:53:14 +0000
commit6557bce3ec8d5a82b2ea299a18cb51677b299633 (patch)
tree8cb296c4fb21b11e13d819b58b36f2c4cd7cd655 /lib/Target/ARM/ARMInstrFormats.td
parent50d280c14ee1c25fc8e6cb6f59af44f754edce42 (diff)
downloadexternal_llvm-6557bce3ec8d5a82b2ea299a18cb51677b299633.zip
external_llvm-6557bce3ec8d5a82b2ea299a18cb51677b299633.tar.gz
external_llvm-6557bce3ec8d5a82b2ea299a18cb51677b299633.tar.bz2
VFP single precision arith instructions can go down to NEON pipeline, but on Cortex-A8 only.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126238 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMInstrFormats.td')
-rw-r--r--lib/Target/ARM/ARMInstrFormats.td7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/Target/ARM/ARMInstrFormats.td b/lib/Target/ARM/ARMInstrFormats.td
index 765cba4..b0cec4b 100644
--- a/lib/Target/ARM/ARMInstrFormats.td
+++ b/lib/Target/ARM/ARMInstrFormats.td
@@ -127,13 +127,14 @@ def IndexModePost : IndexMode<2>;
def IndexModeUpd : IndexMode<3>;
// Instruction execution domain.
-class Domain<bits<2> val> {
- bits<2> Value = val;
+class Domain<bits<3> val> {
+ bits<3> Value = val;
}
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
//===----------------------------------------------------------------------===//
// ARM special operands.
@@ -249,7 +250,7 @@ class InstTemplate<AddrMode am, SizeFlagVal sz, IndexMode im,
let TSFlags{15-10} = Form;
let TSFlags{16} = isUnaryDataProc;
let TSFlags{17} = canXformTo16Bit;
- let TSFlags{19-18} = D.Value;
+ let TSFlags{20-18} = D.Value;
let Constraints = cstr;
let Itinerary = itin;