llvm-mirror/lib
Chris Lattner 2b67ff8632 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

llvm-svn: 52747
2008-06-26 00:16:49 +00:00
..
Analysis Generalize createSCEV to be able to form SCEV expressions from 2008-06-22 19:56:46 +00:00
Archive Create archives with the same permissions are ar. 2008-05-24 05:42:29 +00:00
AsmParser Added MemOperands to Atomic operations since Atomics touches memory. 2008-06-25 08:15:39 +00:00
Bitcode fix warning when assertion disabled. 2008-06-21 19:47:44 +00:00
CodeGen when we know the signbit of an input to uint_to_fp is zero, 2008-06-26 00:16:49 +00:00
Debugger Make these variables static. 2008-04-23 23:15:23 +00:00
ExecutionEngine Implement JIT support for global aliases, patch by David Chisnall! 2008-06-25 20:21:35 +00:00
Linker Fix an error handling redefinition of linkonce functions where the 2008-06-20 05:29:39 +00:00
Support Append to the ActiveTimers std::vector before looking at the timer instead 2008-06-24 22:07:07 +00:00
System fix compilation errors in my previous patch 2008-06-25 17:17:53 +00:00
Target - Fix a x86 vector isel bug: illegal transformation of a vector_shuffle into a 2008-06-25 20:52:59 +00:00
Transforms Restore DeadArgElim back to 52570. It's breaking 447.dealII. 2008-06-25 18:10:09 +00:00
VMCore Added MemOperands to Atomic operations since Atomics touches memory. 2008-06-25 08:15:39 +00:00
Makefile remove attribution from lib Makefiles. 2007-12-29 20:09:26 +00:00