LLVM backend for 6502
Go to file
Chris Lattner b09916bdfb Make X86TargetLowering::LowerSINT_TO_FP return without creating a dead
stack slot and store if the  SINT_TO_FP is actually legal.  This allows
us to compile:

double a(double b) {return (unsigned)b;}

to:

_a:
	cvttsd2siq	%xmm0, %rax
	movl	%eax, %eax
	cvtsi2sdq	%rax, %xmm0
	ret

instead of:

_a:
	subq	$8, %rsp
	cvttsd2siq	%xmm0, %rax
	movl	%eax, %eax
	cvtsi2sdq	%rax, %xmm0
	addq	$8, %rsp
	ret

crazy.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47660 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-27 05:57:41 +00:00
autoconf Remove use of ltdl 2008-02-13 17:11:39 +00:00
bindings
docs test svn commit capability 2008-02-26 01:36:52 +00:00
examples
include Spiller now remove unused spill slots. 2008-02-27 03:04:06 +00:00
lib Make X86TargetLowering::LowerSINT_TO_FP return without creating a dead 2008-02-27 05:57:41 +00:00
projects
runtime Fixing the stack walker. 2008-01-24 05:16:36 +00:00
test Make X86TargetLowering::LowerSINT_TO_FP return without creating a dead 2008-02-27 05:57:41 +00:00
tools first commit of new LTO system. It is not hooked up in the llvm/tools/Makefile, so no one will build it be default yet 2008-02-26 20:26:43 +00:00
utils Rename PrintableName to Name. 2008-02-26 21:47:57 +00:00
website
win32 Unbreak build for VC2008. Patch by Argiris Kirtzidis! 2008-02-22 10:11:21 +00:00
Xcode Rename CFEBuildInstrs.html to GCCFEBuildInstrs.html. 2008-02-14 17:53:22 +00:00
build-for-llvm-top.sh
configure Remove use of ltdl 2008-02-13 17:11:39 +00:00
CREDITS.TXT Update credits. 2007-12-11 09:32:07 +00:00
LICENSE.TXT scoped_ptr.h was removed. 2008-02-09 22:50:06 +00:00
llvm.spec.in
Makefile
Makefile.common
Makefile.config.in
Makefile.rules when making bytecode modules, link as library 2008-02-25 22:41:55 +00:00
ModuleInfo.txt Update to include clean and install commands. 2007-07-20 20:54:41 +00:00
README.txt

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level 
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments. 

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the HTML documentation provided in docs/index.html for further
assistance with LLVM.