forked from OSchip/llvm-project
Add TargetRegisterInfo::printReg() to pretty-print registers.
llvm-svn: 121780
This commit is contained in:
parent
472362e6ed
commit
2dd1ee5fd5
|
@ -29,6 +29,7 @@ class MachineFunction;
|
|||
class MachineMove;
|
||||
class RegScavenger;
|
||||
template<class T> class SmallVectorImpl;
|
||||
class raw_ostream;
|
||||
|
||||
/// TargetRegisterDesc - This record contains all of the information known about
|
||||
/// a particular register. The AliasSet field (if not null) contains a pointer
|
||||
|
@ -321,6 +322,9 @@ public:
|
|||
return Reg >= FirstVirtualRegister;
|
||||
}
|
||||
|
||||
/// printReg - Print a virtual or physical register on OS.
|
||||
void printReg(unsigned Reg, raw_ostream &OS) const;
|
||||
|
||||
/// getMinimalPhysRegClass - Returns the Register Class of a physical
|
||||
/// register of the given type, picking the most sub register class of
|
||||
/// the right type that contains this physreg.
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include "llvm/CodeGen/MachineFunction.h"
|
||||
#include "llvm/CodeGen/MachineFrameInfo.h"
|
||||
#include "llvm/ADT/BitVector.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
|
||||
using namespace llvm;
|
||||
|
||||
|
@ -39,6 +40,13 @@ TargetRegisterInfo::TargetRegisterInfo(const TargetRegisterDesc *D, unsigned NR,
|
|||
|
||||
TargetRegisterInfo::~TargetRegisterInfo() {}
|
||||
|
||||
void TargetRegisterInfo::printReg(unsigned Reg, raw_ostream &OS) const {
|
||||
if (Reg && isVirtualRegister(Reg))
|
||||
OS << "%reg" << Reg;
|
||||
else
|
||||
OS << '%' << getName(Reg);
|
||||
}
|
||||
|
||||
/// getMinimalPhysRegClass - Returns the Register Class of a physical
|
||||
/// register of the given type, picking the most sub register class of
|
||||
/// the right type that contains this physreg.
|
||||
|
|
Loading…
Reference in New Issue