summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2010-12-03 20:33:01 +0000
committerJim Grosbach <grosbach@apple.com>2010-12-03 20:33:01 +0000
commitca7eaaafdaf3ab0852ae173ba14e9bdbe198146e (patch)
tree1506fa1d1c36c844df73244df1dac4039abb6325 /llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp
parent729c339a1c719a1c2613be3af6785ac667df2923 (diff)
downloadbcm5719-llvm-ca7eaaafdaf3ab0852ae173ba14e9bdbe198146e.tar.gz
bcm5719-llvm-ca7eaaafdaf3ab0852ae173ba14e9bdbe198146e.zip
When using the 'push' mnemonic for Thumb2 stmdb, be explicit when it's the
32-bit wide version by adding the .w suffix. llvm-svn: 120838
Diffstat (limited to 'llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp')
-rw-r--r--llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp b/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp
index cb4bdac0cdb..42f94ee5e34 100644
--- a/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp
+++ b/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp
@@ -67,6 +67,8 @@ void ARMInstPrinter::printInst(const MCInst *MI, raw_ostream &O) {
MI->getOperand(0).getReg() == ARM::SP) {
O << '\t' << "push";
printPredicateOperand(MI, 2, O);
+ if (Opcode == ARM::t2STMDB_UPD)
+ O << ".w";
O << '\t';
printRegisterList(MI, 4, O);
return;
@@ -77,6 +79,8 @@ void ARMInstPrinter::printInst(const MCInst *MI, raw_ostream &O) {
MI->getOperand(0).getReg() == ARM::SP) {
O << '\t' << "pop";
printPredicateOperand(MI, 2, O);
+ if (Opcode == ARM::t2LDMIA_UPD)
+ O << ".w";
O << '\t';
printRegisterList(MI, 4, O);
return;
OpenPOWER on IntegriCloud