aboutsummaryrefslogtreecommitdiffstats
path: root/lib
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
commit92edf7f8851ef0b58a0545195d7d749d2c1785f1 (patch)
tree357a80ae1350b76a6fa24d21f9c12451b2cdb14c /lib
parentc8ab34d04b0472a623f3aa7a2da0fce1fdace2ca (diff)
downloadexternal_llvm-92edf7f8851ef0b58a0545195d7d749d2c1785f1.zip
external_llvm-92edf7f8851ef0b58a0545195d7d749d2c1785f1.tar.gz
external_llvm-92edf7f8851ef0b58a0545195d7d749d2c1785f1.tar.bz2
Implement asm printing for inline asm memory operands
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83783 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp b/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp
index ad40fd4..0f70e48 100644
--- a/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp
+++ b/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);