[llvm-commits] [llvm] r84704 - in /llvm/trunk/lib/Target/MSP430/AsmPrinter: MSP430InstPrinter.cpp MSP430InstPrinter.h

Anton Korobeynikov asl at math.spbu.ru
Tue Oct 20 17:11:27 PDT 2009


Author: asl
Date: Tue Oct 20 19:11:27 2009
New Revision: 84704

URL: http://llvm.org/viewvc/llvm-project?rev=84704&view=rev
Log:
Add simple operand printing stuff

Modified:
    llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp
    llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h

Modified: llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp?rev=84704&r1=84703&r2=84704&view=diff

==============================================================================
--- llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp (original)
+++ llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp Tue Oct 20 19:11:27 2009
@@ -33,3 +33,18 @@
 void MSP430InstPrinter::printInst(const MCInst *MI) {
   printInstruction(MI);
 }
+
+void MSP430InstPrinter::printOperand(const MCInst *MI, unsigned OpNo,
+                                     const char *Modifier) {
+  assert((Modifier == 0 || Modifier[0] == 0) && "Cannot print modifiers");
+
+  const MCOperand &Op = MI->getOperand(OpNo);
+  if (Op.isReg()) {
+    O << getRegisterName(Op.getReg());
+  } else if (Op.isImm()) {
+    O << '#' << Op.getImm();
+  } else {
+    assert(Op.isExpr() && "unknown operand kind in printOperand");
+    assert(0 && "Unimplemented!");
+  }
+}

Modified: llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h?rev=84704&r1=84703&r2=84704&view=diff

==============================================================================
--- llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h (original)
+++ llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h Tue Oct 20 19:11:27 2009
@@ -16,7 +16,7 @@
 
 #include "llvm/MC/MCInstPrinter.h"
 
-namespace llvm 
+namespace llvm
 {
 
   class MCOperand;
@@ -34,10 +34,10 @@
     static const char *getRegisterName(unsigned RegNo);
 
     void printOperand(const MCInst *MI, unsigned OpNo,
-                      const char *Modifier = 0) {
-    }
+                      const char *Modifier = 0);
+
     void printSrcMemOperand(const MCInst *MI, unsigned OpNo,
-                           const char *Modifier = 0) {
+                            const char *Modifier = 0) {
     }
     void printCCOperand(const MCInst *MI, unsigned OpNo) {
     }





More information about the llvm-commits mailing list