summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2009-11-07 21:25:39 +0000
committerJim Grosbach <grosbach@apple.com>2009-11-07 21:25:39 +0000
commitd1d002a6fe4d19f3dbaaa4b080779024eeccd210 (patch)
tree733d52b5a7d1a16789a791c3f18976fb978bfb67 /llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
parentb9397262b7acf938f0958072a9765921ceead706 (diff)
downloadbcm5719-llvm-d1d002a6fe4d19f3dbaaa4b080779024eeccd210.tar.gz
bcm5719-llvm-d1d002a6fe4d19f3dbaaa4b080779024eeccd210.zip
Support alignment specifier for NEON vld/vst instructions
llvm-svn: 86404
Diffstat (limited to 'llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp')
-rw-r--r--llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp b/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
index c130ced6247..020710bb45d 100644
--- a/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
+++ b/llvm/lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
@@ -638,9 +638,17 @@ void ARMAsmPrinter::printAddrMode6Operand(const MachineInstr *MI, int Op) {
const MachineOperand &MO1 = MI->getOperand(Op);
const MachineOperand &MO2 = MI->getOperand(Op+1);
const MachineOperand &MO3 = MI->getOperand(Op+2);
+ const MachineOperand &MO4 = MI->getOperand(Op+3);
- // FIXME: No support yet for specifying alignment.
- O << "[" << getRegisterName(MO1.getReg()) << "]";
+ O << "[" << getRegisterName(MO1.getReg());
+ if (MO4.getImm()) {
+ if (Subtarget->isTargetDarwin())
+ O << ", :";
+ else
+ O << " @";
+ O << MO4.getImm();
+ }
+ O << "]";
if (ARM_AM::getAM6WBFlag(MO3.getImm())) {
if (MO2.getReg() == 0)
OpenPOWER on IntegriCloud