diff options
author | Chris Lattner <sabre@nondot.org> | 2004-08-01 08:12:41 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-08-01 08:12:41 +0000 |
commit | 06cf67ee142a6a7505bceeb41786fe0d47c020e8 (patch) | |
tree | 8e79f03ee6713336caa38782f55e6264f86f5202 /llvm/lib | |
parent | ba52a58836a729ea3bfa9fbe11afc3209009f09d (diff) | |
download | bcm5719-llvm-06cf67ee142a6a7505bceeb41786fe0d47c020e8.tar.gz bcm5719-llvm-06cf67ee142a6a7505bceeb41786fe0d47c020e8.zip |
Handle registers a bit more efficiently
llvm-svn: 15395
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/X86/X86AsmPrinter.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86AsmPrinter.cpp b/llvm/lib/Target/X86/X86AsmPrinter.cpp index 70eae63a8e3..09913c27189 100644 --- a/llvm/lib/Target/X86/X86AsmPrinter.cpp +++ b/llvm/lib/Target/X86/X86AsmPrinter.cpp @@ -106,7 +106,13 @@ namespace { // This method is used by the tablegen'erated instruction printer. void printOperand(const MachineOperand &MO, MVT::ValueType VT) { - printOp(MO); + if (MO.getType() == MachineOperand::MO_MachineRegister) { + assert(MRegisterInfo::isPhysicalRegister(MO.getReg())&&"Not physref??"); + // Bug Workaround: See note in Printer::doInitialization about %. + O << "%" << TM.getRegisterInfo()->get(MO.getReg()).Name; + } else { + printOp(MO); + } } void printImplUsesBefore(const TargetInstrDescriptor &Desc); |