LLVM backend for 6502
Go to file
David Majnemer 92d1637e2f X86, Win64: Allow 'mov' to restore the stack pointer if we have a FP
The Win64 epilogue structure is very restrictive, it permits a very
small number of opcodes and none of them are 'mov'.

This means that given:
  mov %rbp, %rsp
  pop %rbp

The mov isn't the epilogue, only the pop is.  This is problematic unless
a frame pointer is present in which case we are free to do whatever we'd
like in the "body" of the function.  If a frame pointer is present,
unwinding will undo the prologue operations in reverse order regardless
of the fact that we are at an instruction which is reseting the stack
pointer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230543 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-25 21:13:37 +00:00
autoconf Fix some bashims. More information on https://wiki.ubuntu.com/DashAsBinSh. Reported initially on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772302 & https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772301 2015-02-01 14:55:43 +00:00
bindings [PM] Remove the old 'PassManager.h' header file at the top level of 2015-02-13 10:01:29 +00:00
cmake [CMake] Fix the clang-cl self host build. 2015-02-25 20:42:19 +00:00
docs fix a typo 2015-02-25 17:28:41 +00:00
examples [Orc][Kaleidoscope] Clean up the Orc/Kaleidoscope tutorials to minimize the diffs 2015-02-25 20:58:28 +00:00
include LowerBitSets: Align referenced globals. 2015-02-25 20:42:41 +00:00
lib X86, Win64: Allow 'mov' to restore the stack pointer if we have a FP 2015-02-25 21:13:37 +00:00
projects
test X86, Win64: Allow 'mov' to restore the stack pointer if we have a FP 2015-02-25 21:13:37 +00:00
tools llvm-dis: Stop crashing when dropping debug info 2015-02-25 01:10:03 +00:00
unittests LowerBitSets: Align referenced globals. 2015-02-25 20:42:41 +00:00
utils AVX-512: Gather and Scatter patterns 2015-02-25 09:46:31 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt [CMake] Set policy CMP0051 to OLD globally. 2015-02-24 23:32:47 +00:00
CODE_OWNERS.TXT
configure Fix some bashims. More information on https://wiki.ubuntu.com/DashAsBinSh. Reported initially on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772302 & https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772301 2015-02-01 14:55:43 +00:00
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile [configure/make] Propagate names of build host tools when making BuildTools 2014-03-25 21:45:41 +00:00
Makefile.common
Makefile.config.in
Makefile.rules
README.txt Revert test commit 2015-02-04 18:46:00 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for LLVM,
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.