aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/MachineInstr.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-12-30 21:01:27 +0000
committerChris Lattner <sabre@nondot.org>2007-12-30 21:01:27 +0000
commit8d5e9a8017f24f6afb8eefbeec99f5359db2c022 (patch)
treebc18ac8031023dc7bf5bee3d4309fc706cca6813 /lib/CodeGen/MachineInstr.cpp
parent6afc4e30cef40488c360911876226d620304946a (diff)
downloadexternal_llvm-8d5e9a8017f24f6afb8eefbeec99f5359db2c022.zip
external_llvm-8d5e9a8017f24f6afb8eefbeec99f5359db2c022.tar.gz
external_llvm-8d5e9a8017f24f6afb8eefbeec99f5359db2c022.tar.bz2
Simplify and clean up some machine operand/instr printing/dumping stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45456 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineInstr.cpp')
-rw-r--r--lib/CodeGen/MachineInstr.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/lib/CodeGen/MachineInstr.cpp b/lib/CodeGen/MachineInstr.cpp
index e8f692e..49ceab7 100644
--- a/lib/CodeGen/MachineInstr.cpp
+++ b/lib/CodeGen/MachineInstr.cpp
@@ -267,15 +267,16 @@ void MachineInstr::dump() const {
cerr << " " << *this;
}
-static inline void OutputReg(std::ostream &os, unsigned RegNo,
- const MRegisterInfo *MRI = 0) {
- if (!RegNo || MRegisterInfo::isPhysicalRegister(RegNo)) {
+static void OutputReg(std::ostream &os, unsigned RegNo,
+ const MRegisterInfo *MRI = 0) {
+ if (MRegisterInfo::isPhysicalRegister(RegNo)) {
if (MRI)
os << "%" << MRI->get(RegNo).Name;
else
- os << "%mreg(" << RegNo << ")";
- } else
+ os << "%mreg" << RegNo;
+ } else {
os << "%reg" << RegNo;
+ }
}
static void print(const MachineOperand &MO, std::ostream &OS,
@@ -287,6 +288,7 @@ static void print(const MachineOperand &MO, std::ostream &OS,
switch (MO.getType()) {
case MachineOperand::MO_Register:
OutputReg(OS, MO.getReg(), MRI);
+ if (MO.isDef()) OS << "<d>";
break;
case MachineOperand::MO_Immediate:
OS << MO.getImm();
@@ -384,11 +386,8 @@ void MachineInstr::print(std::ostream &os) const {
// and such.
os << getInstrDescriptor()->Name;
- for (unsigned i = 0, N = getNumOperands(); i < N; i++) {
+ for (unsigned i = 0, N = getNumOperands(); i < N; i++)
os << "\t" << getOperand(i);
- if (getOperand(i).isRegister() && getOperand(i).isDef())
- os << "<d>";
- }
os << "\n";
}
@@ -397,6 +396,7 @@ void MachineOperand::print(std::ostream &OS) const {
switch (getType()) {
case MO_Register:
OutputReg(OS, getReg());
+ if (isDef()) OS << "<d>";
break;
case MO_Immediate:
OS << getImm();