LLVM backend for 6502
Go to file
Chris Lattner a28381cac2 Remove all knowledge of UINT_TO_FP from the X86 backend, relying on the
legalizer to eliminate them.  With this comes the expected code quality
improvements, such as, for this:

double foo(unsigned short X) { return X; }

we now generate this:

_foo:
        subl $4, %esp
        movzwl 8(%esp), %eax
        movl %eax, (%esp)
        fildl (%esp)
        addl $4, %esp
        ret

instead of this:

_foo:
        subl $4, %esp
        movw 8(%esp), %ax
        movzwl %ax, %eax   ;; Load not folded into this.
        movl %eax, (%esp)
        fildl (%esp)
        addl $4, %esp
        ret

-Chris


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22449 91177308-0d34-0410-b5e6-96231b3b80d8
2005-07-16 00:28:20 +00:00
autoconf * Correct the AC_DEFINE for LLVM_PATH_GRAPHVIZ to use AC_DEFINE_UNQUOTED so 2005-07-14 05:19:12 +00:00
docs Fixed some punctuation. 2005-07-15 19:25:12 +00:00
examples Get rid of warnings on Alpha 2005-07-13 23:20:24 +00:00
include/llvm * Correct the AC_DEFINE for LLVM_PATH_GRAPHVIZ to use AC_DEFINE_UNQUOTED so 2005-07-14 05:19:12 +00:00
lib Remove all knowledge of UINT_TO_FP from the X86 backend, relying on the 2005-07-16 00:28:20 +00:00
projects oops 2005-07-05 16:36:18 +00:00
runtime
test Regression test for PR#596: Make sure that negation of a minus doesn't 2005-07-14 19:56:03 +00:00
tools Fix PR576. 2005-07-12 01:00:32 +00:00
utils Fix PR595: These error messages should not be looking at CGI.Name, they 2005-07-15 22:43:04 +00:00
win32 Win32 support for Mutex class. 2005-07-13 02:15:18 +00:00
.cvsignore
configure * Correct the AC_DEFINE for LLVM_PATH_GRAPHVIZ to use AC_DEFINE_UNQUOTED so 2005-07-14 05:19:12 +00:00
CREDITS.TXT
LICENSE.TXT
llvm.spec
llvm.spec.in
Makefile
Makefile.common
Makefile.config.in
Makefile.rules
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.