2017-10-10  Release Manager

	* GCC 5.5.0 released.

2016-06-03  Release Manager

	* GCC 5.4.0 released.

2016-05-23  Thomas Schwinge  <thomas@codesourcery.com>

	Backport trunk r236594:

	PR libffi/65567
	* testsuite/lib/libffi.exp (libffi_feature_test): Fix, and simply.

2015-12-04  Release Manager

	* GCC 5.3.0 released.

2015-10-26  John David Anglin  <danglin@gcc.gnu.org>

	PR libffi/65441
	* testsuite/lib/libffi.exp: Load target-supports-dg.exp.
	* testsuite/libffi.call/float2.c: Don't run on hppa*-*-hpux*.

2015-07-16  Release Manager

	* GCC 5.2.0 released.

2015-04-22  Release Manager

	* GCC 5.1.0 released.

2015-03-29  John David Anglin  <danglin@gcc.gnu.org>

	PR libffi/65567
	* testsuite/lib/libffi.exp (libffi_feature_test): Use split to ensure
	lindex is applied to a list.

2015-02-10  Andrew Pinski  <apinski@cavium.com>

	* src/aarch64/ffitarget.h (ffi_arg): Use unsigned long long for ILP32.
	(FFI_SIZEOF_ARG): Define to 64 for ILP32.
	(ffi_sarg): Use signed long long for ILP32.

	* src/aarch64/sysv.S (PTR_REG): New macro.
	(PTR_SIZE): New macro.
	(ffi_closure_SYSV): Load cif, fn and user_data using PTR_REG.
	(ffi_go_closure_SYSV): Load cif and fn using PTR_REG.

2015-01-29  Jack Howarth  <howarth.at.gcc@gmail.com>

	PR libffi/64855
	* testsuite/lib/libffi.exp: Don't set targetabis on darwin.

2015-01-28  Richard Henderson  <rth@redhat.com>

	PR libffi/64779
	PR libffi/64799
	* Merge to upstream commit db1b34b7e1f5e473d17557e454a29933dfecd1af.

2015-01-27  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* testsuite/lib/libffi.exp: Load target-supports.exp.
	(run-many-tests): Only set targetabis for ia32.

2015-01-19  Richard Henderson  <rth@redhat.com>

	PR libffi/64581
	* testsuite/lib/libffi.exp (libffi_target_compile): Don't switch
	to C++ mode when compiling C++ source code.

2015-01-19  Richard Henderson  <rth@redhat.com>

	* Merge to upstream commit 3ac1610aa33c887ea9b14935208943925714a33e.

2015-01-19  Richard Henderson  <rth@redhat.com>

	PR libffi/64607
	* testsuite/lib/libffi.exp (libffi-init): Append -L for the
	just built libstdc++.

2015-01-15  Dominique d'Humieres  <dominiq@lps.ens.fr>
	    Richard Henderson  <rth@redhat.com>

	PR libffi/64607
	* Makefile.am (AM_MAKEFLAGS): Use double quotes on subvariables.
	* Makefile.in: Rebuilt.

2015-01-15  Richard Henderson  <rth@redhat.com>

	PR libffi/64572
	* include/ffi.h.in (FFI_TYPE_LAST): Set to COMPLEX only if complex
	numbers are supported by the backend.

2015-01-13  Kaz Kojima  <kkojima@gcc.gnu.org>

	* configure.host: Remove extra brackets for sh.

2015-01-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/64575
	* configure.host (TARGET): Set to X86_64 if __x86_64__ is defined.

2015-01-12  Richard Henderson  <rth@redhat.com>

	PR libffi/64572
	* src/x86/ffitarget.h (FFI_GO_CLOSURES): Do not define for darwin.
	(FFI_TARGET_HAS_COMPLEX_TYPE): Likewise.

2015-01-12  Richard Henderson  <rth@redhat.com>

	* src/x86/ffi.c (ffi_raw_call): Fill in frame.

2015-01-12  Richard Henderson  <rth@redhat.com>

	Merge to upstream commit c82cc159426d8d4402375fa1ae3f045b9cf82e16.

2014-11-21  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/63784
	* configure: Regenerated.

2014-11-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>

	PR target/63610
	* configure: Regenerate.

2014-10-15  Ian Lance Taylor  <iant@google.com>

	* configure.ac: If the compiler supports -Qunused-arguments, use
	it when running the compiler on .s files.
	* configure: Regenerated.

2014-09-11  Jakub Jelinek  <jakub@redhat.com>

	* src/powerpc/linux64.S: Emit .note.GNU-stack even when
	POWERPC64 is not defined.
	* src/powerpc/linux64_closure.S: Likewise.  Also test _CALL_ELF == 2.

2014-07-21  Uros Bizjak  <ubizjak@gmail.com>

	* src/alpha/ffi.c: Do not include stdlib.h.
	(ffi_closure_osf_inner) <default>: Use FFI_ASSERT instead of abort.

2014-07-04  Thomas Schwinge  <thomas@codesourcery.com>

	* testsuite/lib/libffi.exp (libffi-dg-runtest): Change interface
	match to dg-runtest's.

2014-05-20  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* testsuite/lib/libffi.exp (load_gcc_lib): Register loaded libs.

2014-05-13  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	Fix current cygwin-64 build problems.
	* src/java_raw_api.c: Remove if !defined(FFI_NO_RAW_API).
	* src/x86/ffi.c: Add if defined(__CYGWIN__).
	* src/x86/win64.S (ffi_closure_win64, ffi_call_win64): Added
	handling for FFI_TYPE_UINT64, FFI_TYPE_POINTER and FFI_TYPE_INT.
	Added SEH information.  Fixed formatting.

2014-04-22  Jakub Jelinek  <jakub@redhat.com>

	PR other/43620
	* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
	* Makefile.in: Regenerated.
	* include/Makefile.in: Regenerated.
	* man/Makefile.in: Regenerated.
	* testsuite/Makefile.in: Regenerated.

2014-03-12  Yufeng Zhang  <yufeng.zhang@arm.com>

	* src/aarch64/sysv.S (ffi_closure_SYSV): Use x29 as the
	main CFA reg; update cfi_rel_offset.

2014-02-17  Eric Botcazou  <ebotcazou@adacore.com>

	PR libffi/60073
	* src/sparc/v8.S: Assemble only if !SPARC64.
	* src/sparc/v9.S: Remove obsolete comment.
	* src/sparc/ffitarget.h (enum ffi_abi): Add FFI_COMPAT_V9.
	(V8_ABI_P): New macro.
	(V9_ABI_P): Likewise.
	(FFI_EXTRA_CIF_FIELDS): Define only if SPARC64.
	* src/sparc/ffi.c (ffi_prep_args_v8): Compile only if !SPARC64.
	(ffi_prep_args_v9): Compile only if SPARC64.
	(ffi_prep_cif_machdep_core): Use V9_ABI_P predicate.
	(ffi_prep_cif_machdep): Guard access to nfixedargs field.
	(ffi_prep_cif_machdep_var): Likewise.
	(ffi_v9_layout_struct): Compile only if SPARC64.
	(ffi_call): Deal with FFI_V8PLUS and FFI_COMPAT_V9 and fix warnings.
	(ffi_prep_closure_loc): Use V9_ABI_P and V8_ABI_P predicates.
	(ffi_closure_sparc_inner_v8): Compile only if !SPARC64.
	(ffi_closure_sparc_inner_v9): Compile only if SPARC64.  Guard access
	to nfixedargs field.

2014-02-13  Eric Botcazou  <ebotcazou@adacore.com>

	PR libffi/60073
	* src/sparc/ffitarget.h (FFI_TARGET_SPECIFIC_VARIADIC): Define.
	(FFI_EXTRA_CIF_FIELDS): Likewise.
	(FFI_NATIVE_RAW_API): Move around.
	* src/sparc/ffi.c (ffi_prep_cif_machdep_core): New function from...
	(ffi_prep_cif_machdep): ...here.  Call ffi_prep_cif_machdep_core.
	(ffi_prep_cif_machdep_var): New function.
	(ffi_closure_sparc_inner_v9): Do not pass anonymous FP arguments in
	FP registers.
	* doc/libffi.texi (Introduction): Fix inaccuracy.

2013-12-10  Alan Modra  <amodra@gmail.com>

	* src/powerpc/ffitarget.h: Import from upstream.
	* src/powerpc/ffi_powerpc.h: Likewise.
	* src/powerpc/ffi.c: Likewise.
	* src/powerpc/ffi_sysv.c: Likewise.
	* src/powerpc/ffi_linux64.c: Likewise.
	* src/powerpc/sysv.S: Likewise.
	* src/powerpc/ppc_closure.S: Likewise.
	* src/powerpc/linux64.S: Likewise.
	* src/powerpc/linux64_closure.S: Likewise.
	* src/types.c: Likewise.
	* Makefile.am (EXTRA_DIST): Add new src/powerpc files.
	(nodist_libffi_la_SOURCES <POWERPC, POWERPC_FREEBSD>): Likewise.
	* configure.ac (HAVE_LONG_DOUBLE_VARIANT): Define for powerpc.
	* include/ffi.h.in (ffi_prep_types): Declare.
	* src/prep_cif.c (ffi_prep_cif_core): Call ffi_prep_types.
	* configure: Regenerate.
	* fficonfig.h.in: Regenerate.
	* Makefile.in: Regenerate.
	* man/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

2013-11-18  Alan Modra  <amodra@gmail.com>

	* src/powerpc/ppc_closure.S: Don't bl .Luint128.

	* src/powerpc/ffitarget.h: Import from upstream.
	* src/powerpc/ffi.c: Likewise.
	* src/powerpc/linux64.S: Likewise.
	* src/powerpc/linux64_closure.S: Likewise.
	* doc/libffi.texi: Likewise.
	* testsuite/libffi.call/cls_double_va.c: Likewise.
	* testsuite/libffi.call/cls_longdouble_va.c: Likewise.

2013-09-20  Alan Modra  <amodra@gmail.com>

	* configure: Regenerate.

2013-06-25  Alan Modra  <amodra@gmail.com>

	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Move var declaration
	before statements.
	(ffi_prep_args64): Support little-endian.
	(ffi_closure_helper_SYSV, ffi_closure_helper_LINUX64): Likewise.
	* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Likewise.
	* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Likewise.

2013-05-22  Dominique d'Humieres  <dominiq@lps.ens.fr>
	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	PR libffi/56033
	* testsuite/libffi.call/cls_struct_va1.c (test_fn): Cast resp to
	ffi_arg *.
	* testsuite/libffi.call/cls_uint_va.c (cls_ret_T_fn): Likewise.
	* testsuite/libffi.call/va_1.c (main): Change res to ffi_arg.
	* testsuite/libffi.call/va_struct1.c (main): Likewise.

2013-03-22  Kai Tietz  <ktietz@redhat.com>

	* src/x86/win64.S: Make use of ffi_closure_win64_inner
	symbol pc-relative.

2013-03-07  Dave Korn  <dave.korn.cygwin@gmail.com>

	* src/closures.c (is_emutramp_enabled [!FFI_MMAP_EXEC_EMUTRAMP_PAX]):
	Move default definition outside enclosing #if scope.

2013-02-06  Andreas Tobler  <andreast@fgznet.ch>

	* src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix case where
	DOUBLE equal LONGDOUBLE.

2013-01-07  Thorsten Glaser <tg@mirbsd.org>

	* testsuite/libffi.call/cls_uchar_va.c,
	testsuite/libffi.call/cls_ushort_va.c,
	testsuite/libffi.call/va_1.c: Testsuite fixes.

2012-12-29  Andreas Schwab  <schwab@linux-m68k.org>

	* Makefile.am (ACLOCAL_AMFLAGS, TEXINFO_TEX, MAKEINFOFLAGS)
	(STAMP_GENINSRC, STAMP_BUILD_INFO, CLEANFILES)
	(MAINTAINERCLEANFILES): Define.
	(all-local, stamp-geninsrc, stamp-build-info): New targets.
	(doc/libffi.info): Depend on $(STAMP_BUILD_INFO)
	* configure.ac: Check for modern makeinfo.  Add support for
	--enable-generated-files-in-srcdir.
	* libffi/mdate-sh: New file.
	* testsuite/lib/libffi.exp (load_gcc_lib): Load from gcc testsuite
	lib dir.
	(libffi-init): Properly set library paths for multilibs and add
	path to libstdc++.
	* configure: Regenerate.
	* aclocal.m4: Regenerate.
	* Makefile.in: Regenerate.
	* doc/stamp-vti: Regenerate.
	* doc/version.texi: Regenerate.
	* fficonfig.h.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* man/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

2012-10-31  Alan Modra  <amodra@gmail.com>

	* src/powerpc/linux64_closure.S: Add new ABI support.
	* src/powerpc/linux64.S: Likewise.

2012-10-30  Magnus Granberg  <zorry@gentoo.org>
	    Pavel Labushev  <pavel.labushev@runbox.ru>

	* configure.ac: New options pax_emutramp
	* configure, fficonfig.h.in: Regenerated
	* src/closures.c: New function emutramp_enabled_check() and
	checks.

2012-10-30  Frederick Cheung  <frederick.cheung@gmail.com>

	* configure.ac: Enable FFI_MAP_EXEC_WRIT for Darwin 12 (mountain
	lion) and future version.
	* configure: Rebuild.

2012-10-30  James Greenhalgh  <james.greenhalgh at arm.com>
            Marcus Shawcroft  <marcus.shawcroft at arm.com>

	* README: Add details of aarch64 port.
	* src/aarch64/ffi.c: New.
	* src/aarch64/ffitarget.h: Likewise.
	* src/aarch64/sysv.S: Likewise.
	* Makefile.am: Support aarch64.
	* configure.ac: Support aarch64.
	* Makefile.in, configure: Rebuilt.

2012-10-30  James Greenhalgh  <james.greenhalgh at arm.com>
            Marcus Shawcroft  <marcus.shawcroft at arm.com>

	* testsuite/lib/libffi.exp: Add support for aarch64.
	* testsuite/libffi.call/cls_struct_va1.c: New.
	* testsuite/libffi.call/cls_uchar_va.c: Likewise.
	* testsuite/libffi.call/cls_uint_va.c: Likewise.
	* testsuite/libffi.call/cls_ulong_va.c: Likewise.
	* testsuite/libffi.call/cls_ushort_va.c: Likewise.
	* testsuite/libffi.call/nested_struct11.c: Likewise.
	* testsuite/libffi.call/uninitialized.c: Likewise.
	* testsuite/libffi.call/va_1.c: Likewise.
	* testsuite/libffi.call/va_struct1.c: Likewise.
	* testsuite/libffi.call/va_struct2.c: Likewise.
	* testsuite/libffi.call/va_struct3.c: Likewise.

2012-10-12  Walter Lee  <walt@tilera.com>

	* Makefile.am: Add TILE-Gx/TILEPro support.
	* configure.ac: Likewise.
	* Makefile.in: Regenerate.
	* configure: Likewise.
	* src/prep_cif.c (ffi_prep_cif_core): Handle TILE-Gx/TILEPro.
	* src/tile: New directory.
	* src/tile/ffi.c: New file.
	* src/tile/ffitarget.h: Ditto.
	* src/tile/tile.S: Ditto.

2012-10-12  Matthias Klose  <doko@ubuntu.com>

	* generate-osx-source-and-headers.py: Normalize whitespace.

2012-09-14  David Edelsohn  <dje.gcc@gmail.com>

	* configure: Regenerated.

2012-08-26  Andrew Pinski  <apinski@cavium.com>

	PR libffi/53014
	* src/mips/ffi.c (ffi_prep_closure_loc): Allow n32 with soft-float and n64 with
	soft-float.

2012-08-08  Uros Bizjak  <ubizjak@gmail.com>

	* src/s390/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
	just return FFI_BAD_ABI when things are wrong.

2012-07-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR libffi/53982
	PR libffi/53973
	* src/x86/ffitarget.h: Check __ILP32__ instead of __LP64__ for x32.
	(FFI_SIZEOF_JAVA_RAW): Defined to 4 for x32.

2012-05-16  H.J. Lu  <hongjiu.lu@intel.com>

	* configure: Regenerated.

2012-05-05  Nicolas Lelong

	* libffi.xcodeproj/project.pbxproj: Fixes.
	* README: Update for iOS builds.

2012-04-23  Alexandre Keunecke I. de Mendonca <alexandre.keunecke@gmail.com>

	* configure.ac: Add Blackfin/sysv support
	* Makefile.am: Add Blackfin/sysv support
	* src/bfin/ffi.c:  Add Blackfin/sysv support
	* src/bfin/ffitarget.h: Add Blackfin/sysv support

2012-04-11  Anthony Green  <green@moxielogic.com>

	* Makefile.am (EXTRA_DIST): Add new script.
	* Makefile.in: Rebuilt.

2012-04-11  Zachary Waldowski  <zwaldowski@gmail.com>

	* generate-ios-source-and-headers.py,
	libffi.xcodeproj/project.pbxproj: Support a Mac static library via
	Xcode. Set iOS compatibility to 4.0.  Move iOS trampoline
	generation into an Xcode "run script" phase.  Include both as
	Xcode build scripts. Don't always regenerate config files.

2012-04-10  Anthony Green  <green@moxielogic.com>

	* src/powerpc/ffi_darwin.c (ffi_prep_args): Add missing semicolon.

2012-04-06  Anthony Green  <green@moxielogic.com>

	* Makefile.am (EXTRA_DIST): Add new iOS/xcode files.
	* Makefile.in: Rebuilt.

2012-04-06  Mike Lewis  <mikelikespie@gmail.com>

	* generate-ios-source-and-headers.py: New file.
	* libffi.xcodeproj/project.pbxproj: New file.
	* README: Update instructions on building iOS binary.
	* build-ios.sh: Delete.

2012-04-06  Anthony Green  <green@moxielogic.com>

	* src/x86/ffi64.c (UINT128): Define differently for Intel and GNU
	compilers, then use it.

2012-04-06  H.J. Lu  <hongjiu.lu@intel.com>

	* m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.

2012-04-06  Anthony Green  <green@moxielogic.com>

	* testsuite/Makefile.am (EXTRA_DIST): Add missing test cases.
	* testsuite/Makefile.in: Rebuilt.

2012-04-05  Zachary Waldowski  <zwaldowski@gmail.com>

	* include/ffi.h.in: Add missing trampoline table fields.
	* src/arm/sysv.S: Fix ENTRY definition, and wrap symbol references
	in CNAME.
	* src/x86/ffi.c: Wrap Windows specific code in ifdefs.

2012-03-29  Peter Rosin  <peda@lysator.liu.se>

	* src/x86/win32.S (ffi_closure_raw_THISCALL): Unify the frame
	generation, fix the ENDP label and remove the surplus third arg
	from the 'lea' insn.

2012-03-29  Peter Rosin  <peda@lysator.liu.se>

	* src/x86/win32.S (ffi_closure_raw_SYSV): Make the 'stubraw' label
	visible outside the PROC, so that ffi_closure_raw_THISCALL can see
	it.  Also instruct the assembler to add a frame to the function.

2012-03-23  Peter Rosin  <peda@lysator.liu.se>

	* Makefile.am (AM_CPPFLAGS): Add -DFFI_BUILDING.
	* Makefile.in: Rebuilt.
	* include/ffi.h.in [MSVC]: Add __declspec(dllimport) decorations
	to all data exports, when compiling libffi clients using MSVC.

2012-03-29  Peter Rosin  <peda@lysator.liu.se>

	* src/x86/ffitarget.h (ffi_abi): Add new ABI FFI_MS_CDECL and
	make it the default for MSVC.
	(FFI_TYPE_MS_STRUCT): New structure return convention.
	* src/x86/ffi.c (ffi_prep_cif_machdep): Tweak the structure
	return convention for FFI_MS_CDECL to be FFI_TYPE_MS_STRUCT
	instead of an ordinary FFI_TYPE_STRUCT.
	(ffi_prep_args): Treat FFI_TYPE_MS_STRUCT as FFI_TYPE_STRUCT.
	(ffi_call): Likewise.
	(ffi_prep_incoming_args_SYSV): Likewise.
	(ffi_raw_call): Likewise.
	(ffi_prep_closure_loc): Treat FFI_MS_CDECL as FFI_SYSV.
	* src/x86/win32.S (ffi_closure_SYSV): For FFI_TYPE_MS_STRUCT,
	return a pointer to the result structure in eax and don't pop
	that pointer from the stack, the caller takes care of it.
	(ffi_call_win32): Treat FFI_TYPE_MS_STRUCT as FFI_TYPE_STRUCT.
	(ffi_closure_raw_SYSV): Likewise.

2012-03-22  Peter Rosin  <peda@lysator.liu.se>

	* testsuite/libffi.call/closure_stdcall.c [MSVC]: Add inline
	assembly version with Intel syntax.
	* testsuite/libffi.call/closure_thiscall.c [MSVC]: Likewise.

2012-03-23  Peter Rosin  <peda@lysator.liu.se>

	* testsuite/libffi.call/ffitest.h: Provide abstration of
	__attribute__((fastcall)) in the form of a __FASTCALL__
	define.  Define it to __fastcall for MSVC.
	* testsuite/libffi.call/fastthis1_win32.c: Use the above.
	* testsuite/libffi.call/fastthis2_win32.c: Likewise.
	* testsuite/libffi.call/fastthis3_win32.c: Likewise.
	* testsuite/libffi.call/strlen2_win32.c: Likewise.
	* testsuite/libffi.call/struct1_win32.c: Likewise.
	* testsuite/libffi.call/struct2_win32.c: Likewise.

2012-03-22  Peter Rosin  <peda@lysator.liu.se>

	* src/x86/win32.S [MSVC] (ffi_closure_THISCALL): Remove the manual
	frame on function entry, MASM adds one automatically.

2012-03-22  Peter Rosin  <peda@lysator.liu.se>

	* testsuite/libffi.call/ffitest.h [MSVC]: Add kludge for missing
	bits in the MSVC headers.

2012-03-22  Peter Rosin  <peda@lysator.liu.se>

	* testsuite/libffi.call/cls_12byte.c: Adjust to the C89 style
	with no declarations after statements.
	* testsuite/libffi.call/cls_16byte.c: Likewise.
	* testsuite/libffi.call/cls_18byte.c: Likewise.
	* testsuite/libffi.call/cls_19byte.c: Likewise.
	* testsuite/libffi.call/cls_1_1byte.c: Likewise.
	* testsuite/libffi.call/cls_20byte.c: Likewise.
	* testsuite/libffi.call/cls_20byte1.c: Likewise.
	* testsuite/libffi.call/cls_24byte.c: Likewise.
	* testsuite/libffi.call/cls_2byte.c: Likewise.
	* testsuite/libffi.call/cls_3_1byte.c: Likewise.
	* testsuite/libffi.call/cls_3byte1.c: Likewise.
	* testsuite/libffi.call/cls_3byte2.c: Likewise.
	* testsuite/libffi.call/cls_4_1byte.c: Likewise.
	* testsuite/libffi.call/cls_4byte.c: Likewise.
	* testsuite/libffi.call/cls_5_1_byte.c: Likewise.
	* testsuite/libffi.call/cls_5byte.c: Likewise.
	* testsuite/libffi.call/cls_64byte.c: Likewise.
	* testsuite/libffi.call/cls_6_1_byte.c: Likewise.
	* testsuite/libffi.call/cls_6byte.c: Likewise.
	* testsuite/libffi.call/cls_7_1_byte.c: Likewise.
	* testsuite/libffi.call/cls_7byte.c: Likewise.
	* testsuite/libffi.call/cls_8byte.c: Likewise.
	* testsuite/libffi.call/cls_9byte1.c: Likewise.
	* testsuite/libffi.call/cls_9byte2.c: Likewise.
	* testsuite/libffi.call/cls_align_double.c: Likewise.
	* testsuite/libffi.call/cls_align_float.c: Likewise.
	* testsuite/libffi.call/cls_align_longdouble.c: Likewise.
	* testsuite/libffi.call/cls_align_longdouble_split.c: Likewise.
	* testsuite/libffi.call/cls_align_longdouble_split2.c: Likewise.
	* testsuite/libffi.call/cls_align_pointer.c: Likewise.
	* testsuite/libffi.call/cls_align_sint16.c: Likewise.
	* testsuite/libffi.call/cls_align_sint32.c: Likewise.
	* testsuite/libffi.call/cls_align_sint64.c: Likewise.
	* testsuite/libffi.call/cls_align_uint16.c: Likewise.
	* testsuite/libffi.call/cls_align_uint32.c: Likewise.
	* testsuite/libffi.call/cls_align_uint64.c: Likewise.
	* testsuite/libffi.call/cls_dbls_struct.c: Likewise.
	* testsuite/libffi.call/cls_pointer_stack.c: Likewise.
	* testsuite/libffi.call/err_bad_typedef.c: Likewise.
	* testsuite/libffi.call/huge_struct.c: Likewise.
	* testsuite/libffi.call/nested_struct.c: Likewise.
	* testsuite/libffi.call/nested_struct1.c: Likewise.
	* testsuite/libffi.call/nested_struct10.c: Likewise.
	* testsuite/libffi.call/nested_struct2.c: Likewise.
	* testsuite/libffi.call/nested_struct3.c: Likewise.
	* testsuite/libffi.call/nested_struct4.c: Likewise.
	* testsuite/libffi.call/nested_struct5.c: Likewise.
	* testsuite/libffi.call/nested_struct6.c: Likewise.
	* testsuite/libffi.call/nested_struct7.c: Likewise.
	* testsuite/libffi.call/nested_struct8.c: Likewise.
	* testsuite/libffi.call/nested_struct9.c: Likewise.
	* testsuite/libffi.call/stret_large.c: Likewise.
	* testsuite/libffi.call/stret_large2.c: Likewise.
	* testsuite/libffi.call/stret_medium.c: Likewise.
	* testsuite/libffi.call/stret_medium2.c: Likewise.
	* testsuite/libffi.call/struct1.c: Likewise.
	* testsuite/libffi.call/struct1_win32.c: Likewise.
	* testsuite/libffi.call/struct2.c: Likewise.
	* testsuite/libffi.call/struct2_win32.c: Likewise.
	* testsuite/libffi.call/struct3.c: Likewise.
	* testsuite/libffi.call/struct4.c: Likewise.
	* testsuite/libffi.call/struct5.c: Likewise.
	* testsuite/libffi.call/struct6.c: Likewise.
	* testsuite/libffi.call/struct7.c: Likewise.
	* testsuite/libffi.call/struct8.c: Likewise.
	* testsuite/libffi.call/struct9.c: Likewise.
	* testsuite/libffi.call/testclosure.c: Likewise.

2012-03-21  Peter Rosin	 <peda@lysator.liu.se>

	* testsuite/libffi.call/float_va.c (float_va_fn): Use %f when
	printing doubles (%lf is for long doubles).
	(main): Likewise.

2012-03-21  Peter Rosin  <peda@lysator.liu.se>

	* testsuite/lib/target-libpath.exp [*-*-cygwin*, *-*-mingw*]
	(set_ld_library_path_env_vars): Add the library search dir to PATH
	(and save PATH for later).
	(restore_ld_library_path_env_vars): Restore PATH.

2012-03-20  Peter Rosin  <peda@lysator.liu.se>

	* testsuite/libffi.call/strlen2_win32.c (main): Remove bug.
	* src/x86/win32.S [MSVC] (ffi_closure_SYSV): Make the 'stub' label
	visible outside the PROC, so that ffi_closure_THISCALL can see it.

2012-03-20  Peter Rosin  <peda@lysator.liu.se>

	* testsuite/libffi.call/strlen2_win32.c (main): Remove bug.
	* src/x86/win32.S [MSVC] (ffi_closure_SYSV): Make the 'stub' label
	visible outside the PROC, so that ffi_closure_THISCALL can see it.

2012-03-19  Alan Hourihane  <alanh@fairlite.co.uk>

	* src/m68k/ffi.c: Add MINT support.
	* src/m68k/sysv.S: Ditto.

2012-03-19  chennam  <csit@axway.com>

	* src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
	support.

2012-03-06  Chung-Lin Tang  <cltang@codesourcery.com>

	* src/arm/ffi.c (ffi_call): Add __ARM_EABI__ guard around call to
	ffi_call_VFP().
	(ffi_prep_closure_loc): Add __ARM_EABI__ guard around use of
	ffi_closure_VFP.
	* src/arm/sysv.S: Add __ARM_EABI__ guard around VFP code.

2012-04-02  Peter Bergner  <bergner@vnet.ibm.com>

	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
	Silence casting pointer to integer of different size warning.
	Delete goto to previously deleted label.
	(ffi_call): Silence possibly undefined warning.
	(ffi_closure_helper_SYSV): Declare variable type.

2012-04-02  Peter Rosin  <peda@lysator.liu.se>

	* src/x86/win32.S (ffi_call_win32): Sign/zero extend the return
	value in the Intel version as is already done for the AT&T version.
	(ffi_closure_SYSV): Likewise.
	(ffi_closure_raw_SYSV): Likewise.
	(ffi_closure_STDCALL): Likewise.

2012-03-13  Kaz Kojima  <kkojima@gcc.gnu.org>

	* src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
	just return FFI_BAD_ABI when things are wrong.
	* src/sh64/ffi.c (ffi_prep_closure_loc): Ditto.

2012-03-09  David Edelsohn  <dje.gcc@gmail.com>

	* src/powerpc/aix_closure.S (ffi_closure_ASM): Adjust for Darwin64
	change to return value of ffi_closure_helper_DARWIN and load type
	from return type.

2012-03-03  H.J. Lu  <hongjiu.lu@intel.com>

	* src/x86/ffi64.c (ffi_call): Cast the return value to unsigned
	long.
	(ffi_prep_closure_loc): Cast to 64bit address in trampoline.
	(ffi_closure_unix64_inner): Cast return pointer to unsigned long
	first.

	* src/x86/ffitarget.h (FFI_SIZEOF_ARG): Defined to 8 for x32.
	(ffi_arg): Set to unsigned long long for x32.
	(ffi_sarg): Set to long long for x32.

2012-03-03  H.J. Lu  <hongjiu.lu@intel.com>

	* src/prep_cif.c (ffi_prep_cif_core): Properly check bad ABI.

2012-03-03  Andoni Morales Alastruey  <ylatuya@gmail.com>

	* configure.ac: Add -no-undefined for both 32- and 64-bit x86
	windows-like hosts.
	* configure: Rebuilt.

2012-02-27  Mikael Pettersson  <mikpe@it.uu.se>

	PR libffi/52223
	* Makefile.am (FLAGS_TO_PASS): Define.
	* Makefile.in: Regenerate.

2012-02-23  Anthony Green  <green@moxielogic.com>

	* src/*/ffitarget.h: Ensure that users never include ffitarget.h
	directly.

2012-02-23  Kai Tietz  <ktietz@redhat.com>

	PR libffi/52221
	* src/x86/ffi.c (ffi_closure_raw_THISCALL): New
	prototype.
	(ffi_prep_raw_closure_loc): Use ffi_closure_raw_THISCALL for
	thiscall-convention.
	(ffi_raw_call): Use ffi_prep_args_raw.
	* src/x86/win32.S (ffi_closure_raw_THISCALL): Add
	implementation for stub.

2012-02-10  Kai Tietz  <ktietz@redhat.com>

	* configure.ac (AM_LTLDFLAGS): Add -no-undefine for x64
	windows target.
	* configure: Regenerated.

2012-02-08  Kai Tietz  <ktietz@redhat.com>

	* src/prep_cif.c (ffi_prep_cif): Allow for X86_WIN32
	also FFI_THISCALL.
	* src/x86/ffi.c (ffi_closure_THISCALL): Add prototype.
	(FFI_INIT_TRAMPOLINE_THISCALL): New trampoline code.
	(ffi_prep_closure_loc): Add FFI_THISCALL support.
	* src/x86/ffitarget.h (FFI_TRAMPOLINE_SIZE): Adjust size.
	* src/x86/win32.S (ffi_closure_THISCALL): New closure code
	for thiscall-calling convention.
	* testsuite/libffi.call/closure_thiscall.c: New test.

2012-01-28  Kai Tietz  <ktietz@redhat.com>

	* src/libffi/src/x86/ffi.c (ffi_call_win32): Add new
	argument to prototype for specify calling-convention.
	(ffi_call): Add support for stdcall/thiscall convention.
	(ffi_prep_args): Likewise.
	(ffi_raw_call): Likewise.
	* src/x86/ffitarget.h (ffi_abi): Add FFI_THISCALL and
	FFI_FASTCALL.
	* src/x86/win32.S (_ffi_call_win32): Add support for
	fastcall/thiscall calling-convention calls.
	* testsuite/libffi.call/fastthis1_win32.c: New test.
	* testsuite/libffi.call/fastthis2_win32.c: New test.
	* testsuite/libffi.call/fastthis3_win32.c: New test.
	* testsuite/libffi.call/strlen2_win32.c: New test.
	* testsuite/libffi.call/many2_win32.c: New test.
	* testsuite/libffi.call/struct1_win32.c: New test.
	* testsuite/libffi.call/struct2_win32.c: New test.

2012-01-23  Uros Bizjak  <ubizjak@gmail.com>

	* src/alpha/ffi.c (ffi_prep_closure_loc): Check for bad ABI.

2012-01-23  Anthony Green  <green@moxielogic.com>
	    Chris Young  <cdyoung@ntlworld.com>

	* configure.ac: Add Amiga support.
	* configure: Rebuilt.

2012-01-23  Dmitry Nadezhin  <dmitry.nadezhin@gmail.com>

	* include/ffi_common.h (LIKELY, UNLIKELY): Fix definitions.

2012-01-23  Andreas Schwab  <schwab@linux-m68k.org>

	* src/m68k/sysv.S (ffi_call_SYSV): Properly test for plain
	mc68000.  Test for __HAVE_68881__ in addition to __MC68881__.

2012-01-19  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/48496
	* src/ia64/ffi.c (ffi_call): Fix up aliasing violations.

2012-01-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* configure.ac (i?86-*-*): Set TARGET to X86_64.
	* configure: Regenerate.

2011-12-07  Andrew Pinski  <apinski@cavium.com>

	PR libffi/50051
	* src/mips/n32.S: Add ".set mips4".

2011-11-21  Andreas Tobler  <andreast@fgznet.ch>

	* configure: Regenerate.

2011-11-12  David Gilbert <david.gilbert@linaro.org>

	* doc/libffi.texi, include/ffi.h.in, include/ffi_common.h,
	man/Makefile.am, man/ffi.3, man/ffi_prep_cif.3,
	man/ffi_prep_cif_var.3, src/arm/ffi.c, src/arm/ffitarget.h,
	src/cris/ffi.c, src/prep_cif.c,
	testsuite/libffi.call/cls_double_va.c,
	testsuite/libffi.call/cls_longdouble_va.c,
	testsuite/libffi.call/float_va.c: Many changes to support variadic
	function calls.

2011-11-12  Kyle Moffett <Kyle.D.Moffett@boeing.com>

	* src/powerpc/ffi.c, src/powerpc/ffitarget.h,
	src/powerpc/ppc_closure.S, src/powerpc/sysv.S: Many changes for
	softfloat powerpc variants.

2011-11-12  Petr Salinger <Petr.Salinger@seznam.cz>

	* configure.ac (FFI_EXEC_TRAMPOLINE_TABLE): Fix kfreebsd support.
	* configure: Rebuilt.

2011-11-12  Timothy Wall  <twall@users.sf.net>

	* src/arm/ffi.c (ffi_prep_args, ffi_prep_incoming_args_SYSV): Max
	alignment of 4 for wince on ARM.

2011-11-12  Kyle Moffett <Kyle.D.Moffett@boeing.com>
	    Anthony Green <green@moxielogic.com>

	* src/ppc/sysv.S, src/ppc/ffi.c: Remove use of ppc string
	instructions (not available on some cores, like the PPC440).

2011-11-12  Kimura Wataru  <kimuraw@i.nifty.jp>

	* m4/ax_enable_builddir: Change from string comparison to numeric
	comparison for wc output.
	* configure.ac: Enable FFI_MMAP_EXEC_WRIT for darwin11 aka Mac OS
	X 10.7.
	* configure: Rebuilt.

2011-11-12  Anthony Green  <green@moxielogic.com>

	* Makefile.am (AM_CCASFLAGS): Add -g option to build assembly
	files with debug info.
	* Makefile.in: Rebuilt.

2011-11-12  Jasper Lievisse Adriaanse <jasper@openbsd.org>

	* README: Update list of supported OpenBSD systems.

2011-11-12  Anthony Green  <green@moxielogic.com>

	* libtool-version: Update.
	* Makefile.am (nodist_libffi_la_SOURCES): Add src/debug.c if
	FFI_DEBUG.
	(libffi_la_SOURCES): Remove src/debug.c
	(EXTRA_DIST): Add src/debug.c
	* Makefile.in: Rebuilt.
	* README: Update for 3.0.11.

2011-11-10  Richard Henderson  <rth@redhat.com>

	* configure.ac (GCC_AS_CFI_PSEUDO_OP): Use it instead of inline check.
	* configure, aclocal.m4: Rebuild.

2011-09-04  Iain Sandoe  <iains@gcc.gnu.org>

	PR libffi/49594
	* src/powerpc/darwin_closure.S (stubs): Make the stub binding
	helper reference track the architecture pointer size.

2011-08-25  Andrew Haley  <aph@redhat.com>

	* src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Remove hard-coded assembly
	instructions.
	* src/arm/sysv.S (ffi_arm_trampoline): Put them here instead.

2011-07-11  Andrew Haley  <aph@redhat.com>

	* src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Clear icache.

2011-06-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* testsuite/libffi.call/cls_double_va.c: Move PR number to comment.
	* testsuite/libffi.call/cls_longdouble_va.c: Likewise.

2011-06-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	PR libffi/46660
	* testsuite/libffi.call/cls_double_va.c: xfail dg-output on
	mips-sgi-irix6*.
	* testsuite/libffi.call/cls_longdouble_va.c: Likewise.

2011-06-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* testsuite/libffi.call/huge_struct.c (test_large_fn): Use PRIu8,
	PRId8 instead of %hhu, %hhd.
	* testsuite/libffi.call/ffitest.h [__alpha__ && __osf__] (PRId8,
	PRIu8): Define.
	[__sgi__] (PRId8, PRIu8): Define.

2011-04-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* src/alpha/osf.S (UA_SI, FDE_ENCODING, FDE_ENCODE, FDE_ARANGE):
	Define.
	Use them to handle ELF vs. ECOFF differences.
	[__osf__] (_GLOBAL__F_ffi_call_osf): Define.

2011-03-30  Timothy Wall  <twall@users.sf.net>

	* src/powerpc/darwin.S: Fix unknown FDE encoding.
	* src/powerpc/darwin_closure.S: ditto.

2011-02-25  Anthony Green  <green@moxielogic.com>

	* src/powerpc/ffi.c (ffi_prep_closure_loc): Allow for more
	32-bit ABIs.

2011-02-15  Anthony Green  <green@moxielogic.com>

	* m4/ax_cc_maxopt.m4: Don't -malign-double or use -ffast-math.
	* configure: Rebuilt.

2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* configure: Regenerate.

2011-02-13  Anthony Green  <green@moxielogic.com>

	* include/ffi_common.h (UNLIKELY, LIKELY): Define.
	* src/x86/ffi64.c (UNLIKELY, LIKELY): Remove definition.
	* src/prep_cif.c (UNLIKELY, LIKELY): Remove definition.

	* src/prep_cif.c (initialize_aggregate): Convert assertion into
	FFI_BAD_TYPEDEF return.  Initialize arg size and alignment to 0.

	* src/pa/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
	just return FFI_BAD_ABI when things are wrong.
	* src/arm/ffi.c (ffi_prep_closure_loc): Ditto.
	* src/powerpc/ffi.c (ffi_prep_closure_loc): Ditto.
	* src/mips/ffi.c (ffi_prep_closure_loc): Ditto.
	* src/ia64/ffi.c (ffi_prep_closure_loc): Ditto.
	* src/avr32/ffi.c (ffi_prep_closure_loc): Ditto.

2011-02-11  Anthony Green  <green@moxielogic.com>

	* src/sparc/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
	just return FFI_BAD_ABI when things are wrong.

2011-02-11  Eric Botcazou  <ebotcazou@adacore.com>

	* src/sparc/v9.S (STACKFRAME): Bump to 176.

2011-02-09  Stuart Shelton  <srcshelton@gmail.com>

	http://bugs.gentoo.org/show_bug.cgi?id=286911
	* src/mips/ffitarget.h: Clean up error messages.
	* src/java_raw_api.c (ffi_java_translate_args): Cast raw arg to
	ffi_raw*.
	* include/ffi.h.in: Add pragma for SGI compiler.

2011-02-09  Anthony Green  <green@moxielogic.com>

	* configure.ac: Add powerpc64-*-darwin* support.

2011-02-09  Anthony Green <green@moxielogic.com>

	* README: Mention Interix.

2011-02-09  Jonathan Callen  <abcd@gentoo.org>

	* configure.ac: Add Interix to win32/cygwin/mingw case.
	* configure: Ditto.
	* src/closures.c: Treat Interix like Cygwin, instead of as a
	generic win32.

2011-02-09  Anthony Green <green@moxielogic.com>

	* testsuite/libffi.call/err_bad_typedef.c: Remove xfail.
	* testsuite/libffi.call/err_bad_abi.c: Remove xfail.
	* src/x86/ffi64.c (UNLIKELY, LIKELY): Define.
	(ffi_prep_closure_loc): Check for bad ABI.
	* src/prep_cif.c (UNLIKELY, LIKELY): Define.
	(initialize_aggregate): Check for bad types.

2011-02-09  Landon Fuller <landonf@plausible.coop>

	* Makefile.am (EXTRA_DIST): Add build-ios.sh, src/arm/gentramp.sh,
	src/arm/trampoline.S.
	(nodist_libffi_la_SOURCES): Add src/arc/trampoline.S.
	* configure.ac (FFI_EXEC_TRAMPOLINE_TABLE): Define.
	* src/arm/ffi.c (ffi_trampoline_table)
	(ffi_closure_trampoline_table_page, ffi_trampoline_table_entry)
	(FFI_TRAMPOLINE_CODELOC_CONFIG, FFI_TRAMPOLINE_CONFIG_PAGE_OFFSET)
	(FFI_TRAMPOLINE_COUNT, ffi_trampoline_lock, ffi_trampoline_tables)
	(ffi_trampoline_table_alloc, ffi_closure_alloc, ffi_closure_free):
	Define for FFI_EXEC_TRAMPOLINE_TABLE case (iOS).
	(ffi_prep_closure_loc): Handl FFI_EXEC_TRAMPOLINE_TABLE case
	separately.
	* src/arm/sysv.S: Handle Apple iOS host.
	* src/closures.c: Handle FFI_EXEC_TRAMPOLINE_TABLE case.
	* build-ios.sh: New file.
	* fficonfig.h.in, configure, Makefile.in: Rebuilt.
	* README: Mention ARM iOS.

2011-02-08  Oren Held  <orenhe@il.ibm.com>

