Sink COFF.h MC include into .cpp files
[oota-llvm.git] / include / llvm / MC / MCInstBuilder.h
index 7d4a9d0ba07b14478ab400d0e4fc8f2ee709362e..30609bdb8b27a39b2d388756201424b8e3dde505 100644 (file)
@@ -16,7 +16,6 @@
 #define LLVM_MC_MCINSTBUILDER_H
 
 #include "llvm/MC/MCInst.h"
-#include "llvm/MC/MCStreamer.h"
 
 namespace llvm {
 
@@ -31,37 +30,42 @@ public:
 
   /// \brief Add a new register operand.
   MCInstBuilder &addReg(unsigned Reg) {
-    Inst.addOperand(MCOperand::CreateReg(Reg));
+    Inst.addOperand(MCOperand::createReg(Reg));
     return *this;
   }
 
   /// \brief Add a new integer immediate operand.
   MCInstBuilder &addImm(int64_t Val) {
-    Inst.addOperand(MCOperand::CreateImm(Val));
+    Inst.addOperand(MCOperand::createImm(Val));
     return *this;
   }
 
   /// \brief Add a new floating point immediate operand.
   MCInstBuilder &addFPImm(double Val) {
-    Inst.addOperand(MCOperand::CreateFPImm(Val));
+    Inst.addOperand(MCOperand::createFPImm(Val));
     return *this;
   }
 
   /// \brief Add a new MCExpr operand.
   MCInstBuilder &addExpr(const MCExpr *Val) {
-    Inst.addOperand(MCOperand::CreateExpr(Val));
+    Inst.addOperand(MCOperand::createExpr(Val));
     return *this;
   }
 
   /// \brief Add a new MCInst operand.
   MCInstBuilder &addInst(const MCInst *Val) {
-    Inst.addOperand(MCOperand::CreateInst(Val));
+    Inst.addOperand(MCOperand::createInst(Val));
     return *this;
   }
 
-  /// \brief Emit the built instruction to an MCStreamer.
-  void emit(MCStreamer &OutStreamer) {
-    OutStreamer.EmitInstruction(Inst);
+  /// \brief Add an operand.
+  MCInstBuilder &addOperand(const MCOperand &Op) {
+    Inst.addOperand(Op);
+    return *this;
+  }
+
+  operator MCInst&() {
+    return Inst;
   }
 };