Improved dump for disp type operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@679 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/MachineInstr.cpp b/lib/CodeGen/MachineInstr.cpp
index 1db2d48..1e33007 100644
--- a/lib/CodeGen/MachineInstr.cpp
+++ b/lib/CodeGen/MachineInstr.cpp
@@ -139,7 +139,13 @@
case MachineOperand::MO_UnextendedImmed:
return os << mop.immedVal;
case MachineOperand::MO_PCRelativeDisp:
- return os << "%disp(label " << mop.getVRegValue() << ")";
+ {
+ const Value* opVal = mop.getVRegValue();
+ bool isLabel = opVal->isMethod() || opVal->isBasicBlock();
+ return os << "%disp("
+ << (isLabel? "label " : "addr-of-val ")
+ << opVal << ")";
+ }
default:
assert(0 && "Unrecognized operand type");
break;