Index: include/llvm/MC/MCNaClExpander.h |
diff --git a/include/llvm/MC/MCNaClExpander.h b/include/llvm/MC/MCNaClExpander.h |
index e471636755ec34d06fd34c15f9479e72eacaf7da..f84342876ff08abf6007483bdc035d43be3f04e7 100644 |
--- a/include/llvm/MC/MCNaClExpander.h |
+++ b/include/llvm/MC/MCNaClExpander.h |
@@ -34,6 +34,10 @@ private: |
protected: |
std::unique_ptr<MCInstrInfo> InstInfo; |
std::unique_ptr<MCRegisterInfo> RegInfo; |
+ void invalidateScratchRegs(const MCInst &Inst); |
+ unsigned getScratchReg(int index); |
+ unsigned numScratchRegs() const; |
+ virtual bool isValidScratchRegister(unsigned Reg) const = 0; |
public: |
MCNaClExpander(const MCContext &Ctx, std::unique_ptr<MCRegisterInfo> &&RI, |
@@ -42,10 +46,8 @@ public: |
void Error(const MCInst &Inst, const char msg[]); |
- void pushScratchReg(unsigned Reg); |
- unsigned popScratchReg(); |
- unsigned getScratchReg(int index); |
- unsigned numScratchRegs() const; |
+ bool addScratchReg(unsigned Reg); |
+ void clearScratchRegs(); |
bool isPseudo(const MCInst &Inst) const; |