]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR libffi/31937 (libffi doesn't support ppc without FPU)
authorAndreas Tobler <a.tobler@schweiz.org>
Sat, 1 Dec 2007 21:00:04 +0000 (21:00 +0000)
committerAndreas Tobler <andreast@gcc.gnu.org>
Sat, 1 Dec 2007 21:00:04 +0000 (22:00 +0100)
commit162871481ad35e10abf02b053a2c31d3bcf0ea7c
tree73196b5cf4cff2f63d926463844136cb3c56797e
parente78b91ce0e473db3da75800ece2f106bac3f4c1c
re PR libffi/31937 (libffi doesn't support ppc without FPU)

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.

From-SVN: r130559
libffi/ChangeLog
libffi/src/powerpc/ffi.c
libffi/src/powerpc/ffitarget.h
libffi/src/powerpc/ppc_closure.S
libffi/src/powerpc/sysv.S