OSDN Git Service

* src/sparc/ffi.c (ffi_closure_sparc_inner_v9): Properly align 'long
[pf3gnuchains/gcc-fork.git] / libffi / ChangeLog
index a8a5481..517ac4e 100644 (file)
@@ -1,3 +1,164 @@
+2009-12-11  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * src/sparc/ffi.c (ffi_closure_sparc_inner_v9): Properly align 'long
+       double' arguments.
+
+2009-12-11  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * testsuite/libffi.call/ffitest.h: Define PRIuPTR on Solaris < 10.
+
+2009-12-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       PR libffi/40700
+       * src/closures.c [X86_64 && __sun__ && __svr4__]
+       (FFI_MMAP_EXEC_WRIT): Define.
+
+2009-12-08  David Daney  <ddaney@caviumnetworks.com>
+
+       * testsuite/libffi.call/stret_medium.c: Remove xfail for mips*-*-*
+       * testsuite/libffi.call/cls_align_longdouble_split2.c: Same.
+       * testsuite/libffi.call/stret_large.c: Same.
+       * testsuite/libffi.call/cls_align_longdouble_split.c: Same.
+       * testsuite/libffi.call/stret_large2.c: Same.
+       * testsuite/libffi.call/stret_medium2.c: Same.
+
+2009-12-07  David Edelsohn  <edelsohn@gnu.org>
+
+       * src/powerpc/aix_closure.S (libffi_closure_ASM): Fix tablejump
+       typo.
+
+2009-12-05  David Edelsohn  <edelsohn@gnu.org>
+
+       * src/powerpc/aix.S: Update AIX32 code to be consistent with AIX64
+       code.
+       * src/powerpc/aix_closure.S: Same.
+
+2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * include/Makefile.in: Regenerate.
+       * man/Makefile.in: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+
+2009-12-04  David Edelsohn  <edelsohn@gnu.org>
+
+       * src/powerpc/aix_closure.S: Reorganize 64-bit code to match
+        linux64_closure.S.
+
+2009-12-04  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR libffi/41908
+       * src/x86/ffi64.c (classify_argument): Update from
+       gcc/config/i386/i386.c.
+       (ffi_closure_unix64_inner): Do not use the address of two consecutive
+       SSE registers directly.
+       * testsuite/libffi.call/cls_dbls_struct.c (main): Remove xfail
+       for x86_64 linux targets.
+
+2009-12-04  David Edelsohn  <edelsohn@gnu.org>
+
+       * src/powerpc/ffi_darwin.c (ffi_closure_helper_DARWIN): Increment
+       pfr for long double split between fpr13 and stack.
+
+2009-12-03  David Edelsohn  <edelsohn@gnu.org>
+
+       * src/powerpc/ffi_darwin.c (ffi_prep_args): Increment next_arg and
+       fparg_count twice for long double.
+
+2009-12-03  David Edelsohn  <edelsohn@gnu.org>
+
+       PR libffi/42243
+       * src/powerpc/ffi_darwin.c (ffi_prep_args): Remove extra parentheses.
+
+2009-12-03  Uros Bizjak  <ubizjak@gmail.com>
+
+       * testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.
+       Remove xfails for x86 linux targets.
+
+2009-12-02  David Edelsohn  <edelsohn@gnu.org>
+
+       * src/powerpc/ffi_darwin.c (ffi_prep_args): Fix typo in INT64
+       case.
+
+2009-12-01  David Edelsohn  <edelsohn@gnu.org>
+
+       * src/powerpc/aix.S (ffi_call_AIX): Convert to more standard
+       register usage.  Call ffi_prep_args directly.  Add long double
+       return value support.
+       * src/powerpc/ffi_darwin.c (ffi_prep_args): Double arg increment
+       applies to FFI_TYPE_DOUBLE.  Correct fpr_base increment typo.
+       Separate FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases.
+       (ffi_prep_cif_machdep): Only 16 byte stack alignment in 64 bit
+       mode.
+       (ffi_closure_helper_DARWIN): Remove nf and ng counters.  Move temp
+       into case.
+       * src/powerpc/aix_closure.S: Maintain 16 byte stack alignment.
+       Allocate result area between params and FPRs.
+
+2009-11-30  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/35484
+       * src/powerpc/ffitarget.h (POWERPC64): Define for PPC64 Linux and
+       AIX64.
+       * src/powerpc/aix.S: Implement AIX64 version.
+       * src/powerpc/aix_closure.S: Implement AIX64 version.
+       (ffi_closure_ASM): Use extsb, lha and displament addresses.
+       * src/powerpc/ffi_darwin.c (ffi_prep_args): Implement AIX64
+       support.
+       (ffi_prep_cif_machdep): Same.
+       (ffi_call): Same.
+       (ffi_closure_helper_DARWIN): Same.
+
+2009-11-02  Andreas Tobler  <a.tobler@schweiz.org>
+
+       PR libffi/41908
+       * testsuite/libffi.call/testclosure.c: New test.
+
+2009-09-28  Kai Tietz  <kai.tietz@onevision.com>
+
+       * src/x86/win64.S (_ffi_call_win64 stack): Remove for gnu
+       assembly version use of ___chkstk.
+
+2009-09-23  Matthias Klose  <doko@ubuntu.com>
+
+       PR libffi/40242, PR libffi/41443
+       * src/arm/sysv.S (__ARM_ARCH__): Define for processors
+       __ARM_ARCH_6T2__, __ARM_ARCH_6M__, __ARM_ARCH_7__,
+       __ARM_ARCH_7A__, __ARM_ARCH_7R__, __ARM_ARCH_7M__.
+       Change the conditionals to __SOFTFP__ || __ARM_EABI__
+       for -mfloat-abi=softfp to work.
+
+2009-09-17  Loren J. Rittle  <ljrittle@acm.org>
+
+       PR testsuite/32843 (strikes again)
+       * src/x86/ffi.c (ffi_prep_cif_machdep): Add X86_FREEBSD to
+       enable proper extension on char and short.
+
+2009-09-15  David Daney  <ddaney@caviumnetworks.com>
+
+       * src/java_raw_api.c (ffi_java_raw_to_rvalue): Remove special
+       handling for FFI_TYPE_POINTER.
+       * src/mips/ffitarget.h (FFI_TYPE_STRUCT_D_SOFT,
+       FFI_TYPE_STRUCT_F_SOFT, FFI_TYPE_STRUCT_DD_SOFT,
+       FFI_TYPE_STRUCT_FF_SOFT, FFI_TYPE_STRUCT_FD_SOFT,
+       FFI_TYPE_STRUCT_DF_SOFT, FFI_TYPE_STRUCT_SOFT): New defines.
+       (FFI_N32_SOFT_FLOAT, FFI_N64_SOFT_FLOAT): New ffi_abi enumerations.
+       (enum ffi_abi): Set FFI_DEFAULT_ABI for soft-float.
+       * src/mips/n32.S (ffi_call_N32): Add handling for soft-float
+       structure and pointer returns.
+       (ffi_closure_N32): Add handling for pointer returns.
+       * src/mips/ffi.c (ffi_prep_args, calc_n32_struct_flags,
+       calc_n32_return_struct_flags): Handle soft-float.
+       (ffi_prep_cif_machdep):  Handle soft-float, fix pointer handling.
+       (ffi_call_N32): Declare proper argument types.
+       (ffi_call, copy_struct_N32, ffi_closure_mips_inner_N32): Handle
+       soft-float.
+
+2009-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * configure.ac (AC_PREREQ): Bump to 2.64.
+
 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
        * Makefile.am (install-html, install-pdf): Remove.