summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2009-10-11 19:13:34 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2009-10-11 19:13:34 +0000
commit3525a4a26881e2ae9499604ec6f8b690ae59c083 (patch)
treea5d56f0d30d16f5353aa63067aaa1ec23e66e1e7
parentc04812c03560caac732a83bdcaf67abe1e2737ea (diff)
downloadbcm5719-llvm-3525a4a26881e2ae9499604ec6f8b690ae59c083.tar.gz
bcm5719-llvm-3525a4a26881e2ae9499604ec6f8b690ae59c083.zip
Implement asm printing for inline asm memory operands
llvm-svn: 83783
-rw-r--r--llvm/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp b/llvm/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp
index ad40fd4776d..0f70e483159 100644
--- a/llvm/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp
+++ b/llvm/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp
@@ -64,6 +64,9 @@ namespace {
bool PrintAsmOperand(const MachineInstr *MI, unsigned OpNo,
unsigned AsmVariant,
const char *ExtraCode);
+ bool PrintAsmMemoryOperand(const MachineInstr *MI,
+ unsigned OpNo, unsigned AsmVariant,
+ const char *ExtraCode);
void emitFunctionHeader(const MachineFunction &MF);
bool runOnMachineFunction(MachineFunction &F);
@@ -262,6 +265,16 @@ bool MSP430AsmPrinter::PrintAsmOperand(const MachineInstr *MI, unsigned OpNo,
return false;
}
+bool MSP430AsmPrinter::PrintAsmMemoryOperand(const MachineInstr *MI,
+ unsigned OpNo, unsigned AsmVariant,
+ const char *ExtraCode) {
+ if (ExtraCode && ExtraCode[0]) {
+ return true; // Unknown modifier.
+ }
+ printSrcMemOperand(MI, OpNo);
+ return false;
+}
+
// Force static initialization.
extern "C" void LLVMInitializeMSP430AsmPrinter() {
RegisterAsmPrinter<MSP430AsmPrinter> X(TheMSP430Target);
OpenPOWER on IntegriCloud