LLVM backend for 6502
Go to file
Lang Hames bb5b3f3359 Add a natural stack alignment field to TargetData, and prevent InstCombine from
promoting allocas to preferred alignments that exceed the natural
alignment. This avoids some potentially expensive dynamic stack realignments.

The natural stack alignment is set in target data strings via the "S<size>"
option. Size is in bits and must be a multiple of 8. The natural stack alignment
defaults to "unspecified" (represented by a zero value), and the "unspecified"
value does not prevent any alignment promotions. Target maintainers that care
about avoiding promotions should explicitly add the "S<size>" option to their
target data strings.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141599 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-10 23:42:08 +00:00
autoconf We're no longer going to bother supporting platforms that don't 2011-09-23 00:53:10 +00:00
bindings ocaml/C bindings: type->isSized() 2011-10-06 12:13:28 +00:00
cmake Build system infrastructure for multiple tblgens. 2011-10-06 01:51:51 +00:00
docs Add a natural stack alignment field to TargetData, and prevent InstCombine from 2011-10-10 23:42:08 +00:00
examples Changed comments on foreign C++ exceptions (generated with type info 7), 2011-09-28 10:53:56 +00:00
include Add a natural stack alignment field to TargetData, and prevent InstCombine from 2011-10-10 23:42:08 +00:00
lib Add a natural stack alignment field to TargetData, and prevent InstCombine from 2011-10-10 23:42:08 +00:00
projects Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
runtime Include direct.h for _mkdir on mingw32 too. 2011-10-08 15:49:19 +00:00
test Revert r141569 and r141576. 2011-10-10 23:18:02 +00:00
tools Add support for dumping section headers to llvm-objdump. This uses the same 2011-10-10 21:21:34 +00:00
unittests Fix APInt::operator*= so that it computes the correct result for large integers where there is unsigned overflow. Fix APFloat::toString so that it doesn't depend on the incorrect behavior in common cases (and computes the correct result in some rare cases). Fixes PR11086. 2011-10-07 23:40:49 +00:00
utils Emit full ED initializers even for pseudo-instructions. 2011-10-10 20:15:49 +00:00
.gitignore Revert change made in .gitignore. 2011-09-24 01:37:58 +00:00
build-for-llvm-top.sh
CMakeLists.txt Build system infrastructure for multiple tblgens. 2011-10-06 01:51:51 +00:00
configure We're no longer going to bother supporting platforms that don't 2011-09-23 00:53:10 +00:00
CREDITS.TXT Claimed. 2011-09-19 05:34:10 +00:00
LICENSE.TXT Happy new year. 2011-06-12 15:26:54 +00:00
llvm.spec.in
Makefile Add clang-tblgen to OPTIONAL_DIRS when building native tools for the 2011-10-08 00:27:38 +00:00
Makefile.common
Makefile.config.in Remove the rest of the compiler checking from the top level configure 2011-09-21 00:53:42 +00:00
Makefile.rules Build system infrastructure for multiple tblgens. 2011-10-06 01:51:51 +00:00
ModuleInfo.txt Remove trailing space. This is just an excuse to poke the 2010-10-05 20:32:15 +00:00
README.txt Test commit 2011-09-21 03:34:31 +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.

If you're writing a package for LLVM, see docs/Packaging.html for our
suggestions.