LLVM backend for 6502
Go to file
Derek Schuff ddc693bd22 Fix fastcc structure return with fast-isel on x86-32
On x86-32, structure return via sret lets the callee pop the hidden
pointer argument off the stack, which the caller then re-pushes.
However if the calling convention is fastcc, then a register is used
instead, and the caller should not adjust the stack. This is
implemented with a check of IsTailCallConvention
X86TargetLowering::LowerCall but is now checked properly in
X86FastISel::DoSelectCall.

(this time, actually commit what was reviewed!)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155825 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-30 16:57:15 +00:00
autoconf
bindings
cmake [CMake] Restructure how Clang, Polly and other external projects get included. 2012-04-26 19:43:35 +00:00
docs Remove a docs reference to the CBackend. 2012-04-27 16:29:22 +00:00
examples
include Second attempt at PR12573: 2012-04-30 10:44:54 +00:00
lib Fix fastcc structure return with fast-isel on x86-32 2012-04-30 16:57:15 +00:00
projects Update config.sub in the sample project. 2012-04-27 10:27:32 +00:00
runtime Switch to c-style comments in a C file. 2012-04-27 19:30:29 +00:00
test Fix fastcc structure return with fast-isel on x86-32 2012-04-30 16:57:15 +00:00
tools Remove redundant line (the memory manager is set above to the same object 2012-04-29 11:14:59 +00:00
unittests SmallVector: Don't rely on having an assignment operator around in push_back for POD-like types. 2012-04-29 10:53:29 +00:00
utils
.gitignore
CMakeLists.txt
configure
CREDITS.TXT Update the documentation of CellSPU, in case it gets removed in 3.1. 2012-04-29 20:00:55 +00:00
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt LLVMBuild: Introduce a common section which currently has a list of the 2011-12-12 22:45:54 +00:00
Makefile
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 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.