[llvm-commits] CVS: llvm/lib/Target/X86/X86AsmPrinter.cpp

Chris Lattner lattner at cs.uiuc.edu
Sun Aug 1 01:12:51 PDT 2004



Changes in directory llvm/lib/Target/X86:

X86AsmPrinter.cpp updated: 1.108 -> 1.109

---
Log message:

Handle registers a bit more efficiently


---
Diffs of the changes:  (+7 -1)

Index: llvm/lib/Target/X86/X86AsmPrinter.cpp
diff -u llvm/lib/Target/X86/X86AsmPrinter.cpp:1.108 llvm/lib/Target/X86/X86AsmPrinter.cpp:1.109
--- llvm/lib/Target/X86/X86AsmPrinter.cpp:1.108	Sun Aug  1 02:43:46 2004
+++ llvm/lib/Target/X86/X86AsmPrinter.cpp	Sun Aug  1 03:12:41 2004
@@ -106,7 +106,13 @@
 
     // 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);





More information about the llvm-commits mailing list