LLVM backend for 6502
Go to file
Josh Magee cde5c26c46 [stackprotector] Implement the sspstrong rules for stack layout.
This changes the PrologueEpilogInserter and LocalStackSlotAllocation passes to
follow the extended stack layout rules for sspstrong and sspreq.

The sspstrong layout rules are:
 1. Large arrays and structures containing large arrays (>= ssp-buffer-size)
are closest to the stack protector.
 2. Small arrays and structures containing small arrays (< ssp-buffer-size) are
2nd closest to the protector.
 3. Variables that have had their address taken are 3rd closest to the
protector.


Differential Revision: http://llvm-reviews.chandlerc.com/D2546


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200601 91177308-0d34-0410-b5e6-96231b3b80d8
2014-02-01 01:36:16 +00:00
autoconf Introduce line editor library. 2014-01-31 23:46:14 +00:00
bindings
cmake Introduce line editor library. 2014-01-31 23:46:14 +00:00
docs [stackprotector] Implement the sspstrong rules for stack layout. 2014-02-01 01:36:16 +00:00
examples
include Implement inalloca codegen for x86 with the new inalloca design 2014-01-31 23:50:57 +00:00
lib [stackprotector] Implement the sspstrong rules for stack layout. 2014-02-01 01:36:16 +00:00
projects llvm/projects/CMakeLists.txt: Add dragonegg. 2014-01-24 12:53:08 +00:00
test [stackprotector] Implement the sspstrong rules for stack layout. 2014-02-01 01:36:16 +00:00
tools Simplify getSymbolFlags. 2014-01-31 20:57:12 +00:00
unittests Introduce line editor library. 2014-01-31 23:46:14 +00:00
utils Separate x86 opcode maps and 0x66/0xf2/0xf3 prefixes from each other in the TSFlags. This greatly simplifies the switch statements in the disassembler tables and the code emitters. 2014-01-31 08:47:06 +00:00
.arcconfig
.clang-format
.gitignore Added .DS_Store entry in .gitignore for ignoring .DS_Store files in the source 2014-01-25 15:15:16 +00:00
CMakeLists.txt [CMake] Move libgtest for external projects. 2014-01-31 17:32:46 +00:00
CODE_OWNERS.TXT
configure Introduce line editor library. 2014-01-31 23:46:14 +00:00
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile Fix bad variable syntax in r199413 2014-01-17 00:40:39 +00:00
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 documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

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