X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FMC%2FMCInst.cpp;h=124cc149beb63b856e46efac195e399242223a47;hb=94ad5a120fe320171f1630d1878ec1ae8b7eafa1;hp=0634c9faf6fad26e2db09ae964a4858e00d0bec6;hpb=8cb9a3b13f3226b7e741768b69d26ecd6b5231f1;p=oota-llvm.git diff --git a/lib/MC/MCInst.cpp b/lib/MC/MCInst.cpp index 0634c9faf6f..124cc149beb 100644 --- a/lib/MC/MCInst.cpp +++ b/lib/MC/MCInst.cpp @@ -9,6 +9,7 @@ #include "llvm/MC/MCInst.h" #include "llvm/MC/MCExpr.h" +#include "llvm/MC/MCInstPrinter.h" #include "llvm/Support/Debug.h" #include "llvm/Support/raw_ostream.h" @@ -24,15 +25,19 @@ void MCOperand::print(raw_ostream &OS, const MCAsmInfo *MAI) const { OS << "Imm:" << getImm(); else if (isExpr()) { OS << "Expr:(" << *getExpr() << ")"; + } else if (isInst()) { + OS << "Inst:(" << *getInst() << ")"; } else OS << "UNDEFINED"; OS << ">"; } +#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP) void MCOperand::dump() const { print(dbgs(), 0); dbgs() << "\n"; } +#endif void MCInst::print(raw_ostream &OS, const MCAsmInfo *MAI) const { OS << ""; } +void MCInst::dump_pretty(raw_ostream &OS, const MCAsmInfo *MAI, + const MCInstPrinter *Printer, + StringRef Separator) const { + OS << "getOpcodeName(getOpcode()); + + for (unsigned i = 0, e = getNumOperands(); i != e; ++i) { + OS << Separator; + getOperand(i).print(OS, MAI); + } + OS << ">"; +} + +#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP) void MCInst::dump() const { print(dbgs(), 0); dbgs() << "\n"; } +#endif