LLVM backend for 6502
Go to file
Duncan Sands d8742eeb2f Initial soft-float support for LegalizeTypes. I rewrote
the fcopysign expansion from LegalizeDAG to get rid of
what seems to be a bug: the use of sign extension means
that when copying the sign bit from an f32 to an f64,
the upper 32 bits of the f64 (now an i64) are set, not
just the top bit...  I also generalized it to work for
any sized floating point types, and removed the bogosity:
  SDOperand Mask1 = (SrcVT == MVT::f64)
    ? DAG.getConstantFP(BitsToDouble(1ULL << 63), SrcVT)
    : DAG.getConstantFP(BitsToFloat(1U << 31), SrcVT);
  Mask1 = DAG.getNode(ISD::BIT_CONVERT, SrcNVT, Mask1);
(here SrcNVT is an integer with the same size as SrcVT).
As far as I can see this takes a 1 << 63, converts to
a double, converts that to a floating point constant
then converts that to an integer constant, ending up
with... 1 << 63 as an integer constant!  So I just
generate this integer constant directly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48305 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-12 21:27:04 +00:00
autoconf Adding ocamldoc generation. 2008-03-10 15:49:16 +00:00
bindings Refresh Makefile.ocaml in objdir if it is modified in srcdir. 2008-03-10 16:15:32 +00:00
docs fix grammer 2008-03-11 05:51:59 +00:00
examples remove attributions from examples. 2007-12-29 20:37:57 +00:00
include Don't try to extract an i32 from an f64. This 2008-03-12 20:30:08 +00:00
lib Initial soft-float support for LegalizeTypes. I rewrote 2008-03-12 21:27:04 +00:00
projects remove attributions from the rest of the llvm makefiles. 2007-12-29 20:11:13 +00:00
runtime Fixing the stack walker. 2008-01-24 05:16:36 +00:00
test Fix this test on hosts that don't have sse2. 2008-03-12 20:40:51 +00:00
tools Reimplement the parameter attributes support, phase #1. hilights: 2008-03-12 17:45:29 +00:00
utils Recommitting changes after more testing. These appear to cause no problems. 2008-03-11 09:33:47 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 Update vcproj file. 2008-03-05 22:30:39 +00:00
Xcode Rename CFEBuildInstrs.html to GCCFEBuildInstrs.html. 2008-02-14 17:53:22 +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 Regenerate. 2008-03-10 15:49:38 +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 * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile Run 'svn info' in the C locale. Also appropriately escape spaces and ? for gawk in darwin. 2008-02-28 18:46:56 +00:00
Makefile.common remove attributions from the rest of the llvm makefiles. 2007-12-29 20:11:13 +00:00
Makefile.config.in Adding ocamldoc generation. 2008-03-10 15:49:16 +00:00
Makefile.rules Refresh Makefile.ocaml in objdir if it is modified in srcdir. 2008-03-10 15:58:40 +00:00
ModuleInfo.txt Update to include clean and install commands. 2007-07-20 20:54:41 +00:00
README.txt test 2007-04-20 20:49:25 +00:00

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.