Mirror of official llvm git repository located at http://llvm.org/git/llvm. Updated every five minutes.
Go to file
Chris Lattner 85e42b45ac Reserve G1 for frame offset stuff and use it to handle large stack frames.
For example, instead of emitting this:

test:
        save -40112, %o6, %o6   ;; imm too large
        add %i6, -40016, %o0    ;; imm too large
        call caller
        nop
        restore %g0, %g0, %g0
        retl
        nop

emit this:

test:
        sethi 4194264, %g1
        or %g1, 848, %g1
        save %o6, %g1, %o6
        sethi 4194264, %g1
        add %g1, %i6, %g1
        add %i1, 944, %o0
        call caller
        nop
        restore %g0, %g0, %g0
        retl
        nop

which doesn't cause the assembler to barf.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24880 91177308-0d34-0410-b5e6-96231b3b80d8
2005-12-20 07:56:31 +00:00
autoconf Added the llvm-kernel project to the list of automatically configured 2005-12-19 20:27:24 +00:00
docs rename options 2005-12-16 05:19:35 +00:00
examples When a function takes a variable number of pointer arguments, with a zero 2005-10-23 04:37:20 +00:00
include/llvm Added a hook to print out names of target specific DAG nodes. 2005-12-20 06:22:03 +00:00
lib Reserve G1 for frame offset stuff and use it to handle large stack frames. 2005-12-20 07:56:31 +00:00
projects unbreak the build again 2005-10-27 16:30:44 +00:00
runtime Add the remove() function from the C library. 2005-11-28 15:49:15 +00:00
test A truly trivial testcase to ensure sparcv8 doesn't get completely broken 2005-12-16 06:24:55 +00:00
tools rename option for consistency with -mcpu -mattr etc 2005-12-16 05:19:55 +00:00
utils Now support instructions with implicit write to non-flag registers. 2005-12-20 07:37:41 +00:00
win32 Turn on string pooling for smaller binaries. 2005-12-17 00:14:47 +00:00
Xcode Remove the lowerconstantexprs pass 2005-10-29 05:34:40 +00:00
.cvsignore Ignore the configure.out file generated by "make reconfigure" 2005-06-18 23:01:25 +00:00
configure Added the llvm-kernel project to the list of automatically configured 2005-12-19 20:27:24 +00:00
CREDITS.TXT add Evan and Jim. Please edit your entries as desired. 2005-11-29 00:57:06 +00:00
LICENSE.TXT Remove extraneous colons after program names for consistency 2005-05-12 21:39:01 +00:00
llvm.spec Onward to LLVM-1.6 and beyond! 2005-05-18 20:23:20 +00:00
llvm.spec.in Onward to LLVM-1.6 and beyond! 2005-05-18 20:23:20 +00:00
Makefile For PR614: 2005-08-25 04:59:49 +00:00
Makefile.common Update comments to reflect new variable names. Patch contributed by 2005-02-14 16:02:19 +00:00
Makefile.config.in Two changes: 2005-04-22 17:14:14 +00:00
Makefile.rules Move some constant folding code shared by Analysis and Transform passes 2005-10-27 15:54:34 +00:00
README.txt Make the text of this file a little more useful. 2004-09-02 22:49:27 +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.