LLVM backend for 6502
Go to file
Chris Lattner 7ff79c2d9d My previous commit had an incomplete message, it should have been:
make the 'fp return in ST(0)' optimization smart enough to
look through token factor nodes.  THis allows us to compile 
testcases like CodeGen/X86/fp-stack-retcopy.ll into:

_carg:
	subl	$12, %esp
	call	L_foo$stub
	fstpl	(%esp)
	fldl	(%esp)
	addl	$12, %esp
	ret

instead of:

_carg:
	subl	$28, %esp
	call	L_foo$stub
	fstpl	16(%esp)
	movsd	16(%esp), %xmm0
	movsd	%xmm0, 8(%esp)
	fldl	8(%esp)
	addl	$28, %esp
	ret

Still not optimal, but much better and this is a trivial patch.  Fixing 
the rest requires invasive surgery that is is not llvm 2.2 material.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46054 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-16 05:56:59 +00:00
autoconf remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
bindings Modify Makefile.rules to allow makefiles to prepend to C.Flags and 2008-01-06 21:54:35 +00:00
docs Add description of 'llvm.trap' intrinsic. Also, minor fixes in formatting. 2008-01-15 22:31:34 +00:00
examples remove attributions from examples. 2007-12-29 20:37:57 +00:00
include Factor the ReachesChainWithoutSideEffects out of dag combiner into 2008-01-16 05:49:24 +00:00
lib My previous commit had an incomplete message, it should have been: 2008-01-16 05:56:59 +00:00
projects remove attributions from the rest of the llvm makefiles. 2007-12-29 20:11:13 +00:00
runtime With this patch, the LowerGC transformation becomes the 2008-01-07 01:30:53 +00:00
test My previous commit had an incomplete message, it should have been: 2008-01-16 05:56:59 +00:00
tools - Introduces versioning macro LLVM_LTO_VERSION 2008-01-15 23:52:34 +00:00
utils Add files to windows project files. Also include <algorithm> explicitly so that vstudio build works 2008-01-15 21:43:17 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 Add files to windows project files. Also include <algorithm> explicitly so that vstudio build works 2008-01-15 21:43:17 +00:00
Xcode Removing obsolete files from the Xcode project. 2007-12-31 01:45:55 +00:00
build-for-llvm-top.sh Allow the configure options to be set according to the llvm-top options. 2007-08-31 19:53:42 +00:00
configure Do not build CBackend and MSIL regardless of configured targets 2007-12-13 01:18:52 +00:00
CREDITS.TXT Update credits. 2007-12-11 09:32:07 +00:00
LICENSE.TXT Updated source file headers to llvm coding standard. 2007-12-05 01:40:25 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile remove attributions from the rest of the llvm makefiles. 2007-12-29 20:11:13 +00:00
Makefile.common remove attributions from the rest of the llvm makefiles. 2007-12-29 20:11:13 +00:00
Makefile.config.in improve compatibility with mingw, patch by Alain Frisch 2008-01-15 22:50:50 +00:00
Makefile.rules Commit a piece that I missed before, patch by Alain Frisch 2008-01-15 23:27:40 +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.