LLVM backend for 6502
Go to file
Bill Schmidt a867f37897 This patch addresses PR13947.
For function calls on the 64-bit PowerPC SVR4 target, each parameter
is mapped to as many doublewords in the parameter save area as
necessary to hold the parameter.  The first 13 non-varargs
floating-point values are passed in registers; any additional
floating-point parameters are passed in the parameter save area.  A
single-precision floating-point parameter (32 bits) must be mapped to
the second (rightmost, low-order) word of its assigned doubleword
slot.

Currently LLVM violates this ABI requirement by mapping such a
parameter to the first (leftmost, high-order) word of its assigned
doubleword slot.  This is internally self-consistent but will not
interoperate correctly with libraries compiled with an ABI-compliant
compiler.

This patch corrects the problem by adjusting the parameter addressing
on both sides of the calling convention.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165714 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-11 15:38:20 +00:00
autoconf
bindings
cmake
docs GettingStarted.rst: s/&/&/g 2012-10-11 01:10:37 +00:00
examples
include llvm/Analysis/Passes.h: Fix copypasto in createDependenceAnalysisPass(). 2012-10-11 08:26:52 +00:00
lib This patch addresses PR13947. 2012-10-11 15:38:20 +00:00
projects
runtime
test This patch addresses PR13947. 2012-10-11 15:38:20 +00:00
tools Add a new interface to allow IR-level passes to access codegen-specific information. 2012-10-10 22:04:55 +00:00
unittests
utils tblgen: Compile TableGen without RTTI. 2012-10-10 20:27:18 +00:00
.gitignore
CMakeLists.txt
CODE_OWNERS.TXT Add the list of code owners to the top level of the LLVM source tree to 2012-07-26 08:04:09 +00:00
configure
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile Remove dead variable. 2012-10-10 18:20:49 +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 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.