[llvm-commits] [llvm] r78984 - /llvm/trunk/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp

Daniel Dunbar daniel at zuster.org
Thu Aug 13 20:42:12 PDT 2009


Author: ddunbar
Date: Thu Aug 13 22:42:12 2009
New Revision: 78984

URL: http://llvm.org/viewvc/llvm-project?rev=78984&view=rev
Log:
Add X86 instruction printer support for printing MCValue operands.

Modified:
    llvm/trunk/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp

Modified: llvm/trunk/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp?rev=78984&r1=78983&r2=78984&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp (original)
+++ llvm/trunk/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp Thu Aug 13 22:42:12 2009
@@ -55,6 +55,8 @@
   
   if (Op.isImm())
     O << Op.getImm();
+  else if (Op.isMCValue())
+    Op.getMCValue().print(O);
   else if (Op.isMBBLabel())
     // FIXME: Keep in sync with printBasicBlockLabel.  printBasicBlockLabel
     // should eventually call into this code, not the other way around.
@@ -88,6 +90,10 @@
     O << '$';
     O << Op.getImm();
     return;
+  } else if (Op.isMCValue()) {
+    O << '$';
+    Op.getMCValue().print(O);
+    return;
   }
   
   O << "<<UNKNOWN OPERAND KIND>>";
@@ -103,6 +109,8 @@
     int64_t DispVal = DispSpec.getImm();
     if (DispVal || (!IndexReg.getReg() && !BaseReg.getReg()))
       O << DispVal;
+  } else if (DispSpec.isMCValue()) {
+    DispSpec.getMCValue().print(O);
   } else {
     llvm_unreachable("non-immediate displacement for LEA?");
     //assert(DispSpec.isGlobal() || DispSpec.isCPI() ||





More information about the llvm-commits mailing list