summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2014-01-14 06:18:34 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2014-01-14 06:18:34 +0000
commitaaf6cbdc7e368ebce35b95b9d596a739c7b234ff (patch)
tree3784ab3c774fbbf9ba19ba489b6973ab03220e1b
parent87a390ab475787040e7fedc85120ec339f5f7d4e (diff)
downloadllvm-aaf6cbdc7e368ebce35b95b9d596a739c7b234ff.tar.gz
llvm-aaf6cbdc7e368ebce35b95b9d596a739c7b234ff.tar.bz2
llvm-aaf6cbdc7e368ebce35b95b9d596a739c7b234ff.tar.xz
Switch the NEON register class from QPR to DPair.
The already allocatable DPair superclass contains odd-even D register pair in addition to the even-odd pairs in the QPR register class. There is no reason to constrain the set of D register pairs that can be used for NEON values. Any NEON instructions that require a Q register will automatically constrain the register class to QPR. The allocation order for DPair begins with the QPR registers, so register allocation is unlikely to change much. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199186 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/ARM/ARMISelLowering.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Target/ARM/ARMISelLowering.cpp b/lib/Target/ARM/ARMISelLowering.cpp
index 8b2366336d..1d2236f2c9 100644
--- a/lib/Target/ARM/ARMISelLowering.cpp
+++ b/lib/Target/ARM/ARMISelLowering.cpp
@@ -156,7 +156,7 @@ void ARMTargetLowering::addDRTypeForNEON(MVT VT) {
}
void ARMTargetLowering::addQRTypeForNEON(MVT VT) {
- addRegisterClass(VT, &ARM::QPRRegClass);
+ addRegisterClass(VT, &ARM::DPairRegClass);
addTypeForNEON(VT, MVT::v2f64, MVT::v4i32);
}