diff options
| author | Bob Wilson <bob.wilson@apple.com> | 2010-03-23 06:20:33 +0000 |
|---|---|---|
| committer | Bob Wilson <bob.wilson@apple.com> | 2010-03-23 06:20:33 +0000 |
| commit | cc0a2a75a0d1160f6b183f235e7faa736848dc91 (patch) | |
| tree | 2b292ad00637452a0e98976d1afd0bcb1b1ba640 /llvm/lib/Target/ARM/NEONPreAllocPass.cpp | |
| parent | 3f7842232e853834a7338933663cc77ee0089b7f (diff) | |
| download | bcm5719-llvm-cc0a2a75a0d1160f6b183f235e7faa736848dc91.tar.gz bcm5719-llvm-cc0a2a75a0d1160f6b183f235e7faa736848dc91.zip | |
Change VST1 instructions for loading Q register values to operate on pairs
of D registers. Add a separate VST1q instruction with a Q register
source operand for use by storeRegToStackSlot.
llvm-svn: 99265
Diffstat (limited to 'llvm/lib/Target/ARM/NEONPreAllocPass.cpp')
| -rw-r--r-- | llvm/lib/Target/ARM/NEONPreAllocPass.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/lib/Target/ARM/NEONPreAllocPass.cpp b/llvm/lib/Target/ARM/NEONPreAllocPass.cpp index ce620fa9dce..7334259bf57 100644 --- a/llvm/lib/Target/ARM/NEONPreAllocPass.cpp +++ b/llvm/lib/Target/ARM/NEONPreAllocPass.cpp @@ -50,10 +50,6 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs, case ARM::VLD1q16: case ARM::VLD1q32: case ARM::VLD1q64: - FirstOpnd = 0; - NumRegs = 2; - return true; - case ARM::VLD2d8: case ARM::VLD2d16: case ARM::VLD2d32: @@ -177,10 +173,13 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs, Stride = 2; return true; + case ARM::VST1q8: + case ARM::VST1q16: + case ARM::VST1q32: + case ARM::VST1q64: case ARM::VST2d8: case ARM::VST2d16: case ARM::VST2d32: - case ARM::VST2d64: case ARM::VST2LNd8: case ARM::VST2LNd16: case ARM::VST2LNd32: |

