llvm-mc: Tweak MCCodeEmitter skeleton.
authorDaniel Dunbar <daniel@zuster.org>
Thu, 27 Aug 2009 01:34:22 +0000 (01:34 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Thu, 27 Aug 2009 01:34:22 +0000 (01:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80193 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/MC/MCCodeEmitter.h
include/llvm/Target/TargetRegistry.h
lib/MC/MCCodeEmitter.cpp [new file with mode: 0644]
tools/llvm-mc/llvm-mc.cpp

index 6cca95b826ada108c4abb2aaaf039fec9b46e7e0..ad42dc2e5b46e0bd2402cb3f3ee951cefb11cfe0 100644 (file)
@@ -26,7 +26,7 @@ public:
 
   /// EncodeInstruction - Encode the given \arg Inst to bytes on the output
   /// stream \arg OS.
-  virtual void EncodeInstruction(const MCInst &Inst, raw_ostream &OS) = 0;
+  virtual void EncodeInstruction(const MCInst &Inst, raw_ostream &OS) const = 0;
 };
 
 } // End llvm namespace
index 14fbd45e991fec56fb3410d45df117f3a527e927..5c89fa597b3177891168980fd2bc2678bf542116 100644 (file)
@@ -59,8 +59,7 @@ namespace llvm {
     typedef TargetAsmParser *(*AsmParserCtorTy)(const Target &T,
                                                 MCAsmParser &P);
     typedef MCCodeEmitter *(*CodeEmitterCtorTy)(const Target &T,
-                                                TargetMachine &TM,
-                                                const MCAsmInfo &MAI);
+                                                TargetMachine &TM);
 
   private:
     /// Next - The next registered target in the linked list, maintained by the
@@ -180,11 +179,10 @@ namespace llvm {
     }
 
     /// createCodeEmitter - Create a target specific code emitter.
-    MCCodeEmitter *createCodeEmitter(TargetMachine &TM,
-                                     const MCAsmInfo *MAI) const {
+    MCCodeEmitter *createCodeEmitter(TargetMachine &TM) const {
       if (!CodeEmitterCtorFn)
         return 0;
-      return CodeEmitterCtorFn(*this, TM, *MAI);
+      return CodeEmitterCtorFn(*this, TM);
     }
 
     /// @}
@@ -493,9 +491,8 @@ namespace llvm {
     }
 
   private:
-    static MCCodeEmitter *Allocator(const Target &T, TargetMachine &TM,
-                                    const MCAsmInfo &MAI) {
-      return new CodeEmitterImpl(T, TM, MAI);
+    static MCCodeEmitter *Allocator(const Target &T, TargetMachine &TM) {
+      return new CodeEmitterImpl(T, TM);
     }
   };
 
diff --git a/lib/MC/MCCodeEmitter.cpp b/lib/MC/MCCodeEmitter.cpp
new file mode 100644 (file)
index 0000000..c122763
--- /dev/null
@@ -0,0 +1,18 @@
+//===-- MCCodeEmitter.cpp - Instruction Encoding --------------------------===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "llvm/MC/MCCodeEmitter.h"
+
+using namespace llvm;
+
+MCCodeEmitter::MCCodeEmitter() {
+}
+
+MCCodeEmitter::~MCCodeEmitter() {
+}
index c7f626c8ad0ad5a386f9dc4709894fb198ef4ce0..ec66797abcde02e88b47e29ec4606205f487c9c2 100644 (file)
@@ -244,7 +244,7 @@ static int AssembleInput(const char *ProgName) {
     assert(TAI && "Unable to create target asm info!");
 
     AP.reset(TheTarget->createAsmPrinter(*Out, *TM, TAI, true));
-    CE.reset(TheTarget->createCodeEmitter(*TM, TAI));
+    CE.reset(TheTarget->createCodeEmitter(*TM));
     Str.reset(createAsmStreamer(Ctx, *Out, *TAI, AP.get(), CE.get()));
   } else {
     assert(FileType == OFT_ObjectFile && "Invalid file type!");