diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/MC/MCDisassembler.h | 4 | ||||
-rw-r--r-- | include/llvm/MC/MCInst.h | 14 | ||||
-rw-r--r-- | include/llvm/MC/MCInstPrinter.h | 10 |
3 files changed, 9 insertions, 19 deletions
diff --git a/include/llvm/MC/MCDisassembler.h b/include/llvm/MC/MCDisassembler.h index 404b8aa985..f7a9f1c9d9 100644 --- a/include/llvm/MC/MCDisassembler.h +++ b/include/llvm/MC/MCDisassembler.h @@ -70,6 +70,7 @@ public: /// @param address - The address, in the memory space of region, of the first /// byte of the instruction. /// @param vStream - The stream to print warnings and diagnostic messages on. + /// @param cStream - The stream to print comments and annotations on. /// @return - MCDisassembler::Success if the instruction is valid, /// MCDisassembler::SoftFail if the instruction was /// disassemblable but invalid, @@ -78,7 +79,8 @@ public: uint64_t& size, const MemoryObject ®ion, uint64_t address, - raw_ostream &vStream) const = 0; + raw_ostream &vStream, + raw_ostream &cStream) const = 0; /// getEDInfo - Returns the enhanced instruction information corresponding to /// the disassembler. diff --git a/include/llvm/MC/MCInst.h b/include/llvm/MC/MCInst.h index d443536d40..d384764774 100644 --- a/include/llvm/MC/MCInst.h +++ b/include/llvm/MC/MCInst.h @@ -129,7 +129,6 @@ public: class MCInst { unsigned Opcode; SmallVector<MCOperand, 8> Operands; - SmallVector<std::string, 1> Annotations; public: MCInst() : Opcode(0) {} @@ -145,15 +144,7 @@ public: Operands.push_back(Op); } - void addAnnotation(const std::string &Annot) { - Annotations.push_back(Annot); - } - - void clear() { - Operands.clear(); - Annotations.clear(); - } - + void clear() { Operands.clear(); } size_t size() { return Operands.size(); } typedef SmallVector<MCOperand, 8>::iterator iterator; @@ -163,9 +154,6 @@ public: return Operands.insert(I, Op); } - size_t getNumAnnotations() const { return Annotations.size(); } - std::string getAnnotation(size_t i) const { return Annotations[i]; } - void print(raw_ostream &OS, const MCAsmInfo *MAI) const; void dump() const; diff --git a/include/llvm/MC/MCInstPrinter.h b/include/llvm/MC/MCInstPrinter.h index 4c12d10d5b..01ad2d3f80 100644 --- a/include/llvm/MC/MCInstPrinter.h +++ b/include/llvm/MC/MCInstPrinter.h @@ -28,6 +28,9 @@ protected: /// The current set of available features. unsigned AvailableFeatures; + + /// Utility function for printing annotations. + void printAnnotation(raw_ostream &OS, StringRef Annot); public: MCInstPrinter(const MCAsmInfo &mai) : CommentStream(0), MAI(mai), AvailableFeatures(0) {} @@ -39,11 +42,8 @@ public: /// printInst - Print the specified MCInst to the specified raw_ostream. /// - virtual void printInst(const MCInst *MI, raw_ostream &OS) = 0; - - /// printAnnotations - Print the annotation comments attached to specified - /// MCInst to the specified raw_ostream. - void printAnnotations(const MCInst *MI, raw_ostream &OS); + virtual void printInst(const MCInst *MI, raw_ostream &OS, + StringRef Annot) = 0; /// getOpcodeName - Return the name of the specified opcode enum (e.g. /// "MOV32ri") or empty if we can't resolve it. |