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

Chris Lattner sabre at nondot.org
Sat Mar 24 19:01:20 PDT 2007



Changes in directory llvm/lib/Target/X86:

X86ATTAsmPrinter.cpp updated: 1.98 -> 1.99
---
Log message:

Allow the b/h/w/k constraints to be applied to values that have multiple alternatives, and end up not being registers.


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

 X86ATTAsmPrinter.cpp |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)


Index: llvm/lib/Target/X86/X86ATTAsmPrinter.cpp
diff -u llvm/lib/Target/X86/X86ATTAsmPrinter.cpp:1.98 llvm/lib/Target/X86/X86ATTAsmPrinter.cpp:1.99
--- llvm/lib/Target/X86/X86ATTAsmPrinter.cpp:1.98	Sat Mar 24 20:44:57 2007
+++ llvm/lib/Target/X86/X86ATTAsmPrinter.cpp	Sat Mar 24 21:01:03 2007
@@ -499,7 +499,10 @@
     case 'h': // Print QImode high register
     case 'w': // Print HImode register
     case 'k': // Print SImode register
-      return printAsmMRegister(MI->getOperand(OpNo), ExtraCode[0]);
+      if (MI->getOperand(OpNo).isReg())
+        return printAsmMRegister(MI->getOperand(OpNo), ExtraCode[0]);
+      printOperand(MI, OpNo);
+      return false;
       
     case 'P': // Don't print @PLT, but do print as memory.
       printOperand(MI, OpNo, "mem");






More information about the llvm-commits mailing list