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

Anton Korobeynikov asl at math.spbu.ru
Tue Oct 20 17:10:30 PDT 2009


Author: asl
Date: Tue Oct 20 19:10:30 2009
New Revision: 84701

URL: http://llvm.org/viewvc/llvm-project?rev=84701&view=rev
Log:
Add MSP430 InstPrinter stub

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

Modified: llvm/trunk/lib/Target/MSP430/AsmPrinter/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/AsmPrinter/CMakeLists.txt?rev=84701&r1=84700&r2=84701&view=diff

==============================================================================
--- llvm/trunk/lib/Target/MSP430/AsmPrinter/CMakeLists.txt (original)
+++ llvm/trunk/lib/Target/MSP430/AsmPrinter/CMakeLists.txt Tue Oct 20 19:10:30 2009
@@ -1,6 +1,7 @@
 include_directories( ${CMAKE_CURRENT_BINARY_DIR}/.. ${CMAKE_CURRENT_SOURCE_DIR}/.. )
 
 add_llvm_library(LLVMMSP430AsmPrinter
+  MSP430InstPrinter.cpp
   MSP430AsmPrinter.cpp
   )
 add_dependencies(LLVMMSP430AsmPrinter MSP430CodeGenTable_gen)

Added: llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp?rev=84701&view=auto

==============================================================================
--- llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp (added)
+++ llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.cpp Tue Oct 20 19:10:30 2009
@@ -0,0 +1,35 @@
+//===-- MSP430InstPrinter.cpp - Convert MSP430 MCInst to assembly syntax --===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This class prints an MSP430 MCInst to a .s file.
+//
+//===----------------------------------------------------------------------===//
+
+#define DEBUG_TYPE "asm-printer"
+#include "MSP430InstPrinter.h"
+#include "llvm/MC/MCInst.h"
+#include "llvm/MC/MCAsmInfo.h"
+#include "llvm/MC/MCExpr.h"
+#include "llvm/Support/ErrorHandling.h"
+#include "llvm/Support/FormattedStream.h"
+#include "MSP430GenInstrNames.inc"
+using namespace llvm;
+
+
+// Include the auto-generated portion of the assembly writer.
+#define MachineInstr MCInst
+#define MSP430AsmPrinter MSP430InstPrinter  // FIXME: REMOVE.
+#define NO_ASM_WRITER_BOILERPLATE
+#include "MSP430GenAsmWriter.inc"
+#undef MachineInstr
+#undef MSP430AsmPrinter
+
+void MSP430InstPrinter::printInst(const MCInst *MI) {
+  printInstruction(MI);
+}

Added: llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h?rev=84701&view=auto

==============================================================================
--- llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h (added)
+++ llvm/trunk/lib/Target/MSP430/AsmPrinter/MSP430InstPrinter.h Tue Oct 20 19:10:30 2009
@@ -0,0 +1,48 @@
+//===-- MSP430InstPrinter.h - Convert MSP430 MCInst to assembly syntax ----===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This class prints a MSP430 MCInst to a .s file.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef MSP430INSTPRINTER_H
+#define MSP430INSTPRINTER_H
+
+#include "llvm/MC/MCInstPrinter.h"
+
+namespace llvm 
+{
+
+  class MCOperand;
+
+  class MSP430InstPrinter : public MCInstPrinter {
+  public:
+    MSP430InstPrinter(raw_ostream &O, const MCAsmInfo &MAI) :
+      MCInstPrinter(O, MAI){
+    }
+
+    virtual void printInst(const MCInst *MI);
+
+    // Autogenerated by tblgen.
+    void printInstruction(const MCInst *MI);
+    static const char *getRegisterName(unsigned RegNo);
+
+    void printOperand(const MCInst *MI, unsigned OpNo,
+                      const char *Modifier = 0) {
+    }
+    void printSrcMemOperand(const MCInst *MI, unsigned OpNo,
+                           const char *Modifier = 0) {
+    }
+    void printCCOperand(const MCInst *MI, unsigned OpNo) {
+    }
+
+  };
+}
+
+#endif





More information about the llvm-commits mailing list