Chris Lattner 
							
						 
					 
					
						
						
							
						
						cda8875433 
					 
					
						
						
							
							when we know the signbit of an input to uint_to_fp is zero,  
						
						... 
						
						
						
						change it to sint_to_fp on targets where that is cheaper (and
visaversa of course).  This allows us to compile uint_to_fp to:
_test:
	movl	4(%esp), %eax
	shrl	$23, %eax
	cvtsi2ss	%eax, %xmm0
	movl	8(%esp), %eax
	movss	%xmm0, (%eax)
	ret
instead of:
	.align	3
LCPI1_0:					##  double
	.long	0	## double least significant word 4.5036e+15
	.long	1127219200	## double most significant word 4.5036e+15
	.text
	.align	4,0x90
	.globl	_test
_test:
	subl	$12, %esp
	movl	16(%esp), %eax
	shrl	$23, %eax
	movl	%eax, (%esp)
	movl	$1127219200, 4(%esp)
	movsd	(%esp), %xmm0
	subsd	LCPI1_0, %xmm0
	cvtsd2ss	%xmm0, %xmm0
	movl	20(%esp), %eax
	movss	%xmm0, (%eax)
	addl	$12, %esp
	ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52747  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-26 00:16:49 +00:00