This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libffi/31937] libffi doesn't support ppc without FPU
- From: "andreast at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 1 Dec 2007 21:00:18 -0000
- Subject: [Bug libffi/31937] libffi doesn't support ppc without FPU
- References: <bug-31937-14549@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #7 from andreast at gcc dot gnu dot org 2007-12-01 21:00 -------
Subject: Bug 31937
Author: andreast
Date: Sat Dec 1 21:00:04 2007
New Revision: 130559
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=130559
Log:
2007-12-01 Andreas Tobler <a.tobler@schweiz.org>
PR libffi/31937
* src/powerpc/ffitarget.h: Introduce new ABI FFI_LINUX_SOFT_FLOAT.
Add local FFI_TYPE_UINT128 to handle soft-float long-double-128.
* src/powerpc/ffi.c: Distinguish between __NO_FPRS__ and not and
set the NUM_FPR_ARG_REGISTERS according to.
Add support for potential soft-float support under hard-float
architecture.
(ffi_prep_args_SYSV): Set NUM_FPR_ARG_REGISTERS to 0 in case of
FFI_LINUX_SOFT_FLOAT, handle float, doubles and long-doubles according
to the FFI_LINUX_SOFT_FLOAT ABI.
(ffi_prep_cif_machdep): Likewise.
(ffi_closure_helper_SYSV): Likewise.
* src/powerpc/ppc_closure.S: Make sure not to store float/double
on archs where __NO_FPRS__ is true.
Add FFI_TYPE_UINT128 support.
* src/powerpc/sysv.S: Add support for soft-float long-double-128.
Adjust copyright notice.
Modified:
trunk/libffi/ChangeLog
trunk/libffi/src/powerpc/ffi.c
trunk/libffi/src/powerpc/ffitarget.h
trunk/libffi/src/powerpc/ppc_closure.S
trunk/libffi/src/powerpc/sysv.S
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31937