[llvm-commits] [llvm] r42564 - /llvm/trunk/lib/Target/X86/README.txt

Chris Lattner sabre at nondot.org
Tue Oct 2 20:40:24 PDT 2007


Author: lattner
Date: Tue Oct  2 22:40:24 2007
New Revision: 42564

URL: http://llvm.org/viewvc/llvm-project?rev=42564&view=rev
Log:
Bill's example is still not enough to repro this, but it has other issues that
seem significant as well.

Modified:
    llvm/trunk/lib/Target/X86/README.txt

Modified: llvm/trunk/lib/Target/X86/README.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/README.txt?rev=42564&r1=42563&r2=42564&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/README.txt (original)
+++ llvm/trunk/lib/Target/X86/README.txt Tue Oct  2 22:40:24 2007
@@ -1277,6 +1277,14 @@
 	movl	%eax, -96(%ebp)
 	movw	$0, -98(%ebp)
 
+This appears to be bad because the RA is not folding the store to the stack 
+slot into the movl.  The above instructions could be:
+	movl    $32, -80(%ebp)
+...
+	movl    $32, -84(%ebp)
+...
+This seems like a cross between remat and spill folding.
+
 This has redundant subtractions of %eax from a stack slot. However, %ecx doesn't
 change, so we could simply subtract %eax from %ecx first and then use %ecx (or
 vice-versa).





More information about the llvm-commits mailing list