Experimental support for aligned NEON spills.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Fri, 23 Dec 2011 00:36:18 +0000 (00:36 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Fri, 23 Dec 2011 00:36:18 +0000 (00:36 +0000)
commitf06f6f50e9844b88cfbb9fb896fff9c3a752966b
tree346f10d968d528bc683511a5e7a2ae271e23f9a6
parentf4aea8f34946d4d2b101b8e3c6db95c18be80173
Experimental support for aligned NEON spills.

ARM targets with NEON units have access to aligned vector loads and
stores that are potentially faster than unaligned operations.

Add support for spilling the callee-saved NEON registers to an aligned
stack area using 16-byte aligned NEON loads and store.

This feature is off by default, controlled by an -align-neon-spills
command line option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147211 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMFrameLowering.cpp
lib/Target/ARM/ARMFrameLowering.h
lib/Target/ARM/ARMMachineFunctionInfo.h
test/CodeGen/Thumb2/aligned-spill.ll