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

Chris Lattner sabre at nondot.org
Fri Nov 2 10:04:20 PDT 2007


Author: lattner
Date: Fri Nov  2 12:04:20 2007
New Revision: 43642

URL: http://llvm.org/viewvc/llvm-project?rev=43642&view=rev
Log:
add a note

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=43642&r1=43641&r2=43642&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/README.txt (original)
+++ llvm/trunk/lib/Target/X86/README.txt Fri Nov  2 12:04:20 2007
@@ -651,6 +651,26 @@
 
 etc.
 
+Another is:
+int usesbb(unsigned int a, unsigned int b) {
+       return (a < b ? -1 : 0);
+}
+to:
+_usesbb:
+	movl	8(%esp), %eax
+	cmpl	%eax, 4(%esp)
+	sbbl	%eax, %eax
+	ret
+
+instead of:
+_usesbb:
+	xorl	%eax, %eax
+	movl	8(%esp), %ecx
+	cmpl	%ecx, 4(%esp)
+	movl	$4294967295, %ecx
+	cmovb	%ecx, %eax
+	ret
+
 //===---------------------------------------------------------------------===//
 
 Currently we don't have elimination of redundant stack manipulations. Consider





More information about the llvm-commits mailing list