mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
MIR Printer: move the function 'printReg'. NFC.
This commit moves the function 'printReg' towards the start of the file so that it can be used by the conversion methods in MIRPrinter and not just the printing methods in MIPrinter. llvm-svn: 242203
This commit is contained in:
parent
52cb2f37c5
commit
95c99a0123
@ -90,6 +90,19 @@ template <> struct BlockScalarTraits<Module> {
|
||||
} // end namespace yaml
|
||||
} // end namespace llvm
|
||||
|
||||
static void printReg(unsigned Reg, raw_ostream &OS,
|
||||
const TargetRegisterInfo *TRI) {
|
||||
// TODO: Print Stack Slots.
|
||||
if (!Reg)
|
||||
OS << '_';
|
||||
else if (TargetRegisterInfo::isVirtualRegister(Reg))
|
||||
OS << '%' << TargetRegisterInfo::virtReg2Index(Reg);
|
||||
else if (Reg < TRI->getNumRegs())
|
||||
OS << '%' << StringRef(TRI->getName(Reg)).lower();
|
||||
else
|
||||
llvm_unreachable("Can't print this kind of register yet");
|
||||
}
|
||||
|
||||
void MIRPrinter::print(const MachineFunction &MF) {
|
||||
initRegisterMaskIds(MF);
|
||||
|
||||
@ -271,19 +284,6 @@ void MIPrinter::print(const MachineInstr &MI) {
|
||||
}
|
||||
}
|
||||
|
||||
static void printReg(unsigned Reg, raw_ostream &OS,
|
||||
const TargetRegisterInfo *TRI) {
|
||||
// TODO: Print Stack Slots.
|
||||
if (!Reg)
|
||||
OS << '_';
|
||||
else if (TargetRegisterInfo::isVirtualRegister(Reg))
|
||||
OS << '%' << TargetRegisterInfo::virtReg2Index(Reg);
|
||||
else if (Reg < TRI->getNumRegs())
|
||||
OS << '%' << StringRef(TRI->getName(Reg)).lower();
|
||||
else
|
||||
llvm_unreachable("Can't print this kind of register yet");
|
||||
}
|
||||
|
||||
void MIPrinter::printMBBReference(const MachineBasicBlock &MBB) {
|
||||
OS << "%bb." << MBB.getNumber();
|
||||
if (const auto *BB = MBB.getBasicBlock()) {
|
||||
|
Loading…
Reference in New Issue
Block a user