summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/NEONPreAllocPass.cpp
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2010-03-16 21:44:40 +0000
committerBob Wilson <bob.wilson@apple.com>2010-03-16 21:44:40 +0000
commitc953bca10b7b55d97ecce9345819b020c25afaff (patch)
treeccd2d2aaad97b78022e82654d1a557a8cbf97a84 /llvm/lib/Target/ARM/NEONPreAllocPass.cpp
parent87c5e2f5d42951f8130f519c143c274ac5fd3fb4 (diff)
downloadbcm5719-llvm-c953bca10b7b55d97ecce9345819b020c25afaff.tar.gz
bcm5719-llvm-c953bca10b7b55d97ecce9345819b020c25afaff.zip
Remove redundant writeback flag from ARM address mode 6. Also remove the
optional register update argument, which is currently unused -- when we add support for that, it can just be a separate operand. llvm-svn: 98683
Diffstat (limited to 'llvm/lib/Target/ARM/NEONPreAllocPass.cpp')
-rw-r--r--llvm/lib/Target/ARM/NEONPreAllocPass.cpp28
1 files changed, 14 insertions, 14 deletions
diff --git a/llvm/lib/Target/ARM/NEONPreAllocPass.cpp b/llvm/lib/Target/ARM/NEONPreAllocPass.cpp
index d9942c8c840..c64c5074bb2 100644
--- a/llvm/lib/Target/ARM/NEONPreAllocPass.cpp
+++ b/llvm/lib/Target/ARM/NEONPreAllocPass.cpp
@@ -177,20 +177,20 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST2LNd8:
case ARM::VST2LNd16:
case ARM::VST2LNd32:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 2;
return true;
case ARM::VST2q8:
case ARM::VST2q16:
case ARM::VST2q32:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 4;
return true;
case ARM::VST2LNq16a:
case ARM::VST2LNq32a:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 2;
Offset = 0;
Stride = 2;
@@ -198,7 +198,7 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST2LNq16b:
case ARM::VST2LNq32b:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 2;
Offset = 1;
Stride = 2;
@@ -211,14 +211,14 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST3LNd8:
case ARM::VST3LNd16:
case ARM::VST3LNd32:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 3;
return true;
case ARM::VST3q8a:
case ARM::VST3q16a:
case ARM::VST3q32a:
- FirstOpnd = 5;
+ FirstOpnd = 3;
NumRegs = 3;
Offset = 0;
Stride = 2;
@@ -227,7 +227,7 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST3q8b:
case ARM::VST3q16b:
case ARM::VST3q32b:
- FirstOpnd = 5;
+ FirstOpnd = 3;
NumRegs = 3;
Offset = 1;
Stride = 2;
@@ -235,7 +235,7 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST3LNq16a:
case ARM::VST3LNq32a:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 3;
Offset = 0;
Stride = 2;
@@ -243,7 +243,7 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST3LNq16b:
case ARM::VST3LNq32b:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 3;
Offset = 1;
Stride = 2;
@@ -256,14 +256,14 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST4LNd8:
case ARM::VST4LNd16:
case ARM::VST4LNd32:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 4;
return true;
case ARM::VST4q8a:
case ARM::VST4q16a:
case ARM::VST4q32a:
- FirstOpnd = 5;
+ FirstOpnd = 3;
NumRegs = 4;
Offset = 0;
Stride = 2;
@@ -272,7 +272,7 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST4q8b:
case ARM::VST4q16b:
case ARM::VST4q32b:
- FirstOpnd = 5;
+ FirstOpnd = 3;
NumRegs = 4;
Offset = 1;
Stride = 2;
@@ -280,7 +280,7 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST4LNq16a:
case ARM::VST4LNq32a:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 4;
Offset = 0;
Stride = 2;
@@ -288,7 +288,7 @@ static bool isNEONMultiRegOp(int Opcode, unsigned &FirstOpnd, unsigned &NumRegs,
case ARM::VST4LNq16b:
case ARM::VST4LNq32b:
- FirstOpnd = 4;
+ FirstOpnd = 2;
NumRegs = 4;
Offset = 1;
Stride = 2;
OpenPOWER on IntegriCloud