The the MC disassembler C API to print in verbose mode. Perhaps there should be a parameter to request verbose mode?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139821 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson
2011-09-15 18:37:20 +00:00
parent ede042dc8d
commit 8f29e6969e
2 changed files with 31 additions and 1 deletions

View File

@@ -20,6 +20,8 @@
#include "llvm-c/Disassembler.h"
#include <string>
#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/Support/raw_ostream.h"
namespace llvm {
class MCContext;
@@ -67,6 +69,10 @@ private:
llvm::OwningPtr<llvm::MCInstPrinter> IP;
public:
// Comment stream and backing vector.
SmallString<128> CommentsToEmit;
raw_svector_ostream CommentStream;
LLVMDisasmContext(std::string tripleName, void *disInfo, int tagType,
LLVMOpInfoCallback getOpInfo,
LLVMSymbolLookupCallback symbolLookUp,
@@ -75,7 +81,8 @@ public:
llvm::MCContext *ctx, const MCDisassembler *disAsm,
MCInstPrinter *iP) : TripleName(tripleName),
DisInfo(disInfo), TagType(tagType), GetOpInfo(getOpInfo),
SymbolLookUp(symbolLookUp), TheTarget(theTarget) {
SymbolLookUp(symbolLookUp), TheTarget(theTarget),
CommentStream(CommentsToEmit) {
MAI.reset(mAI);
MRI.reset(mRI);
Ctx.reset(ctx);
@@ -83,6 +90,7 @@ public:
IP.reset(iP);
}
const MCDisassembler *getDisAsm() const { return DisAsm.get(); }
const MCAsmInfo *getAsmInfo() const { return MAI.get(); }
MCInstPrinter *getIP() { return IP.get(); }
};