commit f6303b8b0dd6353c6a5bb4de2e855a13b86f22cf
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 09:54:12 2026 -0400

    ci: publish a release (source tarball + MSVC binaries) on version tags
    
    Add release.yml: on a v* tag it verifies the tag matches configure.ac, builds
    the source distribution via 'make dist', extracts the matching section of
    README.md as the release notes, and publishes a GitHub release with the tarball.
    
    Also add a 'tags: v[0-9]*' trigger to build.yml so the full matrix runs at the
    tagged commit and the existing MSVC 'Upload to GitHub Release' step (gated on
    github.ref_type == 'tag') attaches the 32-bit and 64-bit Windows MSVC binaries
    to the same release.
    
    No signing yet; mingw/cygwin binaries are not published.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 4e537ca4a37d1401598834b40aa1406dcf4997b4
Merge: ce9904d6 78417bf2
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 09:45:29 2026 -0400

    Merge pull request #981 from libffi/dlmalloc-builtin-clz-all-arches
    
    dlmalloc: use __builtin_clz/ctz bit-index on all GNU compilers (#754)

commit ce9904d6aec8dc6bb536a901a71c1e445eae7ec6
Merge: b32ddaf7 2f61bf22
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 09:44:59 2026 -0400

    Merge pull request #982 from emiltayl/msvc-atomics
    
    Add atomic intrinsics for MSVC to dlmalloc.c

commit b32ddaf73a16f0ddb8055908b829682eb5c73eeb
Merge: 0bff58c1 ad506b70
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 09:43:53 2026 -0400

    Merge pull request #983 from libffi/ci-drop-mingw-ansi-stdio
    
    ci: drop ineffective __USE_MINGW_ANSI_STDIO from Win64 mingw test run

commit ad506b7055ce76f7254c821a68149e4e38807da0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 08:36:41 2026 -0400

    ci: drop ineffective __USE_MINGW_ANSI_STDIO from the Win64 mingw test run
    
    The RUNTESTFLAGS="TOOL_OPTIONS=-D__USE_MINGW_ANSI_STDIO=1" added to silence the
    long double %Lf/%Lg -Wformat warnings on x86_64-w64-mingw32 does not actually
    work: the flag reaches the compile line but gcc's -Wformat still uses the MS
    printf archetype with the mingw headers on the runner, so the ~10 long double
    '(test for excess errors)' failures persist regardless.  The rlgl policy already
    XFAILs those as the environmental printf-format issue they are, so the
    ineffective flag is just noise -- remove it and let the baseline handle them.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 78417bf2e6ca007fe4c9ff9cb74b31a55a2f3cae
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 08:16:29 2026 -0400

    dlmalloc: use __builtin_clz/ctz bit-index on all GNU compilers (#754)
    
    Upstream 2.8.6 already replaced the old x86 'bsrl' inline asm in
    compute_tree_index/compute_bit2idx with __builtin_clz/__builtin_ctz, but gated
    the intrinsic path to __i386__/__x86_64__; every other GNU-compatible target
    fell back to the generic C bit-twiddling (or ffs()).  __builtin_clz/__builtin_ctz
    are target-independent, so enable the intrinsic path for any __GNUC__ compiler.
    This lowers to a hardware bit-count instruction on aarch64 (clz / rbit+clz),
    riscv, power, s390x, etc. instead of the open-coded idiom.
    
    Also drop the now-unused USE_BUILTIN_FFS define in closures.c (and thus the
    <strings.h> include for ffs), since the intrinsic path no longer needs it.
    
    Implements the optimization from #754 (whose diff predated the 2.8.6 update).
    Verified: x86_64 closures suite 588/0 (unchanged); the macros compile and emit
    clz/ctz instructions for aarch64/riscv64/ppc64le/s390x/arm/mips64/sparc64.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 2f61bf2213bbda7b348f13c1d58947c5fa33f858
Author: Emil Taylor Bye <phptph@gmail.com>
Date:   Sat Jun 20 14:05:16 2026 +0200

    Add atomic intrinsics for MSVC to dlmalloc.c

commit 0bff58c1043064d7cb0e825107ba79946c2bae51
Merge: 2388f6dc ad447103
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 08:06:46 2026 -0400

    Merge pull request #978 from libffi/prep-3.6.0-release
    
    Prepare libffi 3.6.0 release

commit 2388f6dcfac3c434472668d32c805ec34a08ce2d
Merge: 68be2150 72ce9313
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 08:02:26 2026 -0400

    Merge pull request #980 from libffi/doc-closure-free-safety
    
    doc: note that freeing an in-use closure is unsafe (#835)

commit 68be21507f1008e069e572b585dee75d48249528
Merge: bc0ebb2e f554e4ce
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 08:01:59 2026 -0400

    Merge pull request #979 from libffi/portability-c99-clang-asm
    
    Portability: strict-C99 and clang-assembler fixes (#795, #851, #947)

commit 72ce931309653640ddd4e687a30a8293b95f909c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 04:35:17 2026 -0400

    doc: note that freeing a closure in use is unsafe (#835)
    
    Clarify in the ffi_closure_free documentation that a closure must not be freed
    while it may still be invoked -- including from within its own callback -- since
    that frees the executable trampoline still in use.  (It may appear to work by
    luck on some targets, but is not safe in general.)
    
    Fixes #835
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit f554e4ce0cb10ace600819e08beefd6593cdedc0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 04:33:36 2026 -0400

    x86: use pc-relative label difference for clang's assembler (#947)
    
    When HAVE_AS_X86_PCREL is not defined (e.g. builds that don't run libffi's
    autoconf checks, such as the meson port), the unwind tables fall back to the
    'X@rel' relocation variant, which clang's integrated assembler rejects with
    "invalid variant 'rel'".  The pc-relative label difference 'X - .' assembles
    on clang and GNU as alike, so prefer it for clang.  The gcc/other path (which
    may target Sun as on Solaris) is left on @rel.  Verified end-to-end with clang.
    
    Fixes #947
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 2760a1e2c828a9d7ab2169ff31c0c495a0c5f2d4
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 04:33:36 2026 -0400

    use __asm__ instead of the asm keyword for strict C99 (#851)
    
    Clang (e.g. the Android NDK) only provides the 'asm' keyword in GNU modes; under
    a strict -std=c99 it errors with "use of undeclared identifier 'asm'".  Replace
    the bare 'asm' keyword with the always-available __asm__ spelling across the
    affected backends (aarch64, alpha, frv, ia64, moxie, or1k, pa, riscv, sh64,
    sparc).  This is a pure spelling change with identical semantics on GNU
    compilers; verified the __asm__/__asm__ volatile/register-__asm__ forms compile
    under gcc and clang -std=c99 -pedantic.
    
    Fixes #851
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 08487a6214d4419430b0e8e7dcb3ec967caf8f6f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 04:33:36 2026 -0400

    ffi.h: avoid -Wpedantic warning on the anonymous union under C99 (#795)
    
    The ffi_closure struct uses an anonymous union, which is C11 (a GNU extension
    in C99).  Including <ffi.h> with -std=c99 -pedantic warned (and broke -Werror
    users).  Prefix the union with __extension__ on GNU compilers so the field
    names are kept without the pedantic diagnostic; MSVC accepts anonymous unions
    natively.  Verified with gcc and clang under -std=c99 -pedantic -Werror.
    
    Fixes #795
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit ad4471039fa55c7e001aef031da297df30c952ae
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 03:47:51 2026 -0400

    Prepare libffi 3.6.0 release
    
    Bump version to 3.6.0, libtool version-info to 11:1:3 (revision++; no public
    interface change since 3.5.2), set the release date, and record the dlmalloc
    2.8.6 update and the #873 ThreadSanitizer fix in the history.
    
    NOTE: the release date (June 20, 2026) is a placeholder -- adjust to the actual
    tag date before merging.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit bc0ebb2e04c39fa750c3c6ebd93755f9b4762d77
Merge: d3f96bee fc67b31a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 03:36:07 2026 -0400

    Merge pull request #977 from libffi/dlmalloc-tsan-clean
    
    dlmalloc: make mparams init and spin-lock peek TSAN-clean (fix #873)

commit fc67b31ab8c0871dd94385f018fc55413bc034b5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 03:30:59 2026 -0400

    dlmalloc: make mparams init and spin-lock peek TSAN-clean
    
    dlmalloc reads two lock-free locations on every allocation that race with
    writes elsewhere; ThreadSanitizer flags both (libffi issue #873).  The 2.8.6
    update did not fix #873 -- confirmed with a -fsanitize=thread build of the
    libffi.threads/tsan.c 20-thread test, which reported two data races on global
    'mparams', plus (newly, since 2.8.6 uses spin locks instead of 2.8.3's pthread
    mutexes) a race on the spin-lock word.
    
    1. mparams init (#873): ensure_initialization() reads mparams.magic without a
       lock to decide if one-time init already ran, racing the write in
       init_mparams().  Upstream writes magic through a `volatile` cast, which is
       not a synchronizing operation.  Use an acquire load for the read and a
       release store for the write, so a thread that observes magic != 0 is
       guaranteed to see the other init writes (page_size, mflags, ...) too.
    
    2. spin-lock peek: spin_acquire_lock()'s `*(volatile int *)sl != 0` lock-free
       peek races CLEAR_LOCK's atomic release.  Read it with a relaxed atomic load
       instead -- still just a hint (CAS_LOCK provides the acquire on success).
    
    Both use __atomic_* builtins (work in any -std, no _Atomic field churn) with the
    original volatile access as a fallback when they are unavailable (e.g. MSVC),
    and are marked as libffi-local patches so they survive the next dlmalloc sync.
    
    After the fix the tsan.c test reports zero data races across 20 runs; the normal
    testsuite is unaffected (the atomic accesses read/write the same values).
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit d3f96bee061158b0934a08ca2355e4e92fcc4b98
Merge: 5e3eeaff 97006e1a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 20 03:03:43 2026 -0400

    Merge pull request #975 from libffi/update-dlmalloc-2.8.6
    
    dlmalloc: update bundled allocator 2.8.3 → 2.8.6

commit 97006e1a2d7f846b02e19411672c09a0f4aae56b
Merge: 26a1c8cd 5e3eeaff
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 21:55:11 2026 -0400

    Merge remote-tracking branch 'origin/master' into update-dlmalloc-2.8.6

commit 5e3eeaffbf7cf98e6991fe3995ab0826a461545e
Merge: 17bce72a 2aabe7eb
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 20:08:41 2026 -0400

    Merge pull request #976 from libffi/x86_64-android-binary128-longdouble
    
    x86: support IEEE binary128 long double on x86_64 (Android)

commit 2aabe7eb739a16197ed0fcaacb45eeba76149c19
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 20:04:09 2026 -0400

    x86: support IEEE binary128 long double on x86_64 (e.g. Android)
    
    On most x86_64 targets `long double` is the 80-bit x87 type, which the SysV
    psABI classifies X87/X87UP, passes in memory, and returns in st(0).  But some
    x86_64 targets -- notably Android (bionic), and anything built with
    -mlong-double-128 -- make `long double` the IEEE binary128 quad type, which the
    psABI passes and returns in SSE registers exactly like __float128 (class
    SSE/SSEUP, i.e. one %xmm register; _Complex binary128 is 32 bytes -> memory).
    
    libffi's x86_64 backend hardcoded the x87 path, so every long double call/return
    on x86_64 Android produced garbage (sizeof(long double)==16 for both formats, so
    the configure check could not tell them apart).  This was misdiagnosed as a QEMU
    or bionic-on-host issue; it is a real ABI bug -- the binaries run natively, the
    ABI is simply different.  Confirmed via the compiler: x86_64-linux-android sets
    __LDBL_MANT_DIG__=113 (binary128) and emits __addtf3/%xmm, vs 64/fldt on glibc.
    
    Detect binary128 long double at compile time (__LDBL_MANT_DIG__ == 113) and:
      - classify scalar long double as SSE/SSEUP, returned in %xmm0 (new
        UNIX64_RET_XMM128 store/load path: movups %xmm0);
      - classify _Complex long double as memory (passed/returned via hidden pointer);
      - copy the SSEUP eightbyte (the high half of the same %xmm register) in both
        the call and closure argument marshalling, which previously dropped it.
    
    Everything is gated on the compile-time check, so x87 targets (glibc, *BSD,
    macOS) are byte-for-byte unchanged.
    
    Validated by building with `-mlong-double-128` on x86_64 glibc (which reproduces
    the Android ABI: __addtf3/%xmm) and round-tripping a full-precision binary128
    value through both ffi_call and a closure -- both preserve all 113 mantissa bits.
    x87 long double regression is clean (full testsuite, 0 unexpected failures).
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 26a1c8cddcbdbbd1b5bae43e89c9deb20477d99e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 19:16:38 2026 -0400

    dlmalloc: drop FORCEINLINE on win32 mmap helpers (fix mingw build)
    
    The Win64 mingw build failed:
    
      dlmalloc.c: error: multiple storage classes in declaration specifiers
      (at static FORCEINLINE win32mmap / win32direct_mmap / win32munmap)
    
    mingw-w64's <windows.h> (included in dlmalloc's WIN32 block) defines
    FORCEINLINE with an 'extern' storage class, so the upstream-2.8.6
    'static FORCEINLINE' on these helpers expands to 'static extern' -- rejected by
    gcc. MSVC's FORCEINLINE is __forceinline (no storage class), so MSVC was fine.
    
    libffi's previous 2.8.3 dlmalloc used plain 'static' for these win32 helpers;
    restore that (keeping the PAGE_EXECUTE_READWRITE change). They are trivial
    wrappers, so dropping the forced-inline hint has no practical effect.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 17bce72aa5e2c396983b3c4ffa83a15e1cf453fa
Merge: a00d2dd3 7e93373f
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 18:36:28 2026 -0400

    Merge pull request #973 from libffi/ci-win64-mingw-real-tests
    
    ci: make Win64 mingw job actually run the testsuite

commit a00d2dd3b650e4d7d1b19008e1879179fa7dd315
Merge: 22c1a3e6 9db3ee0b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 18:35:56 2026 -0400

    Merge pull request #974 from libffi/ci-fix-dist-hook-readme
    
    build: fix make dist failure from missing README "was released on" line

commit 326fff39c41a3c076c63f18b216fb0a44104edf4
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 18:33:50 2026 -0400

    dlmalloc: always define malloc_getpagesize (fix MSVC Win64 build)
    
    The MSVC Win64 build failed compiling the ported dlmalloc:
    
      dlmalloc.c: error C2065: 'malloc_getpagesize': undeclared identifier
    
    Upstream 2.8.6 defines malloc_getpagesize only under #ifndef WIN32 (WIN32
    builds use GetSystemInfo in init_mparams), and the init_mparams reference is
    likewise guarded by #if !defined(WIN32) -- so on a normal cl.exe build with
    _WIN32 defined the reference is preprocessed out. MSVC nonetheless reports the
    symbol undeclared, so add an unconditional fallback definition (the same
    ((size_t)4096U) the upstream block already uses as its deepest fallback).
    
    This is a no-op on every platform that already defines the symbol; on WIN32 the
    value is never used (GetSystemInfo supplies the page size), so behavior is
    unchanged. It just guarantees the translation unit compiles.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 7e93373fb08960df21ded627b5380a27b7ccc091
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 17:36:22 2026 -0400

    ci: fix Win64 mingw long double tests via __USE_MINGW_ANSI_STDIO
    
    With the testsuite now actually running on x86_64-w64-mingw32, 5 long double
    tests (float2, cls_longdouble, cls_align_longdouble_split{,2}, huge_struct)
    failed "(test for excess errors)" -- not real bugs, just -Wformat warnings:
    
      warning: format '%Lf' expects argument of type 'double',
               but argument has type 'long double'
    
    mingw-w64 gcc/clang default to the MS C runtime printf, where the %L length
    modifier means double rather than long double. Pass __USE_MINGW_ANSI_STDIO=1 so
    the tests use mingw's ISO-C99 printf, where %Lf/%Lg handle long double
    correctly -- clearing the warnings and producing correct output (e.g.
    huge_struct's output-pattern check). No-op on the Cygwin targets.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 2a0b4b52cad6715cb1fe6ab5a8189ebdeaea7c74
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 17:31:36 2026 -0400

    dlmalloc: update bundled allocator from 2.8.3 to 2.8.6
    
    Re-bases libffi's bundled dlmalloc on Doug Lea's pristine 2.8.6 (the last
    upstream release) instead of the heavily-diverged 2.8.3 fork we carried.
    
    Method: rather than line-merging 2.8.3->2.8.6 onto our fork (which silently
    duplicated/stranded code where upstream's restructuring didn't align), this
    re-applies libffi's small, well-understood patch set on top of clean 2.8.6.
    The bundled file is now pristine 2.8.6 + ~100 lines of clearly-isolated libffi
    changes, so future syncs are a tractable rebase rather than archaeology.
    
    libffi-local changes carried forward (adapted to 2.8.6):
      * FFI_MMAP_EXEC_WRIT machinery: per-segment exec_offset, get/set_segment_flags
        and check_segment_merge abstractions, add/sub_segment_exec_offset.  The
        2.8.3 IS_MMAPPED_BIT is spelled USE_MMAP_BIT in 2.8.6.
      * Windows: win32mmap/win32direct_mmap allocate PAGE_EXECUTE_READWRITE so
        closures are executable (closures.c calls these directly, not via dlmmap).
      * OS/2 support: DosAllocMem mmap shims wired into 2.8.6's *_DEFAULT scheme,
        page size/granularity in init_mparams.  OS/2 locking now rides 2.8.6's
        spin locks (the old HMTX mutex block is unnecessary in the new framework).
      * _GNU_SOURCE for Linux mremap, conflicting-malloc.h undefs, dlmalloc_stats
        prototype, an extra corruption check, and assorted warning/typo cleanups.
    
    What 2.8.6 buys us: CAS spin locks instead of pthread mutexes for closure
    alloc/free (lower overhead, no implicit pthread dep), stronger FOOTERS/RTCHECK
    heap-corruption detection, __builtin_ctz bit indexing instead of fragile x86
    asm/ffs, cleaner _MSC_VER/x86_64/WIN32_LEAN_AND_MEAN handling, and ~7 years of
    upstream bug fixes.
    
    Validated natively on x86_64-pc-linux-gnu: closures 588/0, full suite 2468/0.
    Draft pending the full CI matrix to exercise the W^X paths cross-platform.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 9db3ee0b8041127ec1c97e424b6845ed2d41096e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 16:52:51 2026 -0400

    build: don't let dist-hook fail when README has no "was released on" line
    
    The dist-hook trims README.md by locating the "<version> was released on ..."
    line and tail'ing from just above it. Commit 35f3a8f replaced that line with a
    "This is WIP repo ..." banner in preparation for 3.6.0, so the awk now returns
    empty, $((s-1)) becomes -1, and `tail -n +-1` aborts `make dist`:
    
      tail: invalid number of lines: '+-1'
      make[4]: *** [Makefile:2107: dist-hook] Error 1
    
    This broke the snapshot-dist-tarball workflow on every master push. Fall back to
    copying README.md verbatim when the marker is absent; tagged releases that
    restore a "was released on" line still get the original trimming behavior.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 9aeda2a51a55a2a64ec4b74f23c9ab8fc0519ffe
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 16:46:53 2026 -0400

    ci: give Win64 mingw job a Cygwin-hosted toolchain so tests actually run
    
    The x86_64-w64-mingw32 job has been green since 3.5.0-pre0 but exercised
    nothing: every one of its ~310 testsuite compiles failed with
    
      ffitest.h:8:10: fatal error: ffi.h: No such file or directory
    
    even though configure generates ffi.h at x86_64-w64-mingw32/include/ffi.h and
    the test compile's -I points right at it. The cause is path translation:
    DejaGnu runs under Cygwin and emits Cygwin POSIX include paths
    (-I/cygdrive/d/.../include), but the x86_64-w64-mingw32-gcc being resolved is a
    native (non-Cygwin) mingw driver that can't read /cygdrive/... paths, so no -I
    directory resolves and the first #include <ffi.h> dies. Result: 0 real passes,
    310 compile failures -- all masked GREEN by the rlgl baseline. The 32-bit jobs
    work because they use genuine *-pc-cygwin compilers that translate the paths.
    
    Install Cygwin's own mingw64-x86_64 cross toolchain. Its driver lives in
    /usr/bin (ahead of the native Windows toolchain in the login-shell PATH) and is
    a Cygwin process, so it translates the POSIX paths and the test programs compile
    and run for the first time.
    
    This is expected to surface real Win64 mingw test results that were previously
    invisible; the rlgl-policy baseline will need refreshing for whatever shows up.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 22c1a3e67a06c498c94dd5fca85692f9ae80dd8f
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 16:29:12 2026 -0400

    ci: don't route native x86 Android tests through qemu-x86_64
    
    The Android job's "Set up QEMU (binfmt)" step used docker/setup-qemu-action's
    default, which runs `tonistiigi/binfmt --install all` and registers binfmt
    handlers for every arch -- including x86_64/i686, with the F (fix-binary) flag.
    That forced the statically-linked x86_64 Android test binaries (native to the
    host) through qemu-x86_64 instead of running them directly as intended.
    
    qemu-user's x87 80-bit extended-precision long double emulation is inaccurate,
    so all 26 long double tests on x86_64-linux-android failed (float/float2/float3,
    return_ldl, every *longdouble* complex/closure test, and huge_struct's output
    pattern from its long double fields). i686 was unaffected because its long
    double is 64-bit (== double, HAVE_LONG_DOUBLE=0), and aarch64/armv7 pass under
    their own qemu.
    
    Pin platforms: arm64,arm so only the genuinely foreign binaries run under
    emulation; the x86 Android binaries run natively on real x87 hardware.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit e815b3683e53f4af8b04b635617c72ec3112ff55
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 16:24:56 2026 -0400

    ci: cave workflow note — privileged is opt-in (privileged: true)

commit 69378c94a7d4bfc08f2f158544148e7268ac4999
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 16:17:20 2026 -0400

    ci: cave workflow note — job containers are privileged (nested containers ok)

commit 1af78f88eb3b923d89817a33fd30ed4f8fa030d9
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 16:15:04 2026 -0400

    ci: add cave workflow for the cave.moxielogic.com mirror
    
    Clean native x86_64 build + dejagnu test gated by rlgl, in cave's workflow
    format (.cave/workflows), so the libffi mirror's CI runs on cave's
    self-hosted runners. GitHub Actions ignores .cave/; cave's pull-mirror sync
    picks it up and runs it on the cave runner.

commit d6cea487cd19841eb083e2d2a8e0b7d7e6aee14d
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 15:59:14 2026 -0400

    ci: actually execute Android tests (static + qemu-user)
    
    Android tests were cross-compiled but never run (dejagnu exec'd them on the
    ubuntu host), so all ~722 execution tests failed and were baselined. Link the
    test binaries statically (--target_board=unix/-static) so they need no bionic
    loader/sysroot, register qemu-user binfmt, and let them execute: x86_64/i686
    run on the host (Android is a Linux kernel), aarch64/armv7 under qemu-user.

commit c8cf0cda7d66c4bc8a72078be914eb2cf0a2152a
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 15:36:36 2026 -0400

    testsuite: skip complex_i128 on clang (no _Complex __int128)
    
    clang defines __SIZEOF_INT128__ but rejects _Complex __int128, so the test
    failed to compile (excess-errors FAIL + UNRESOLVED execution) on clang
    targets. Exclude __clang__ from the guard so clang falls through to the
    trivial main(), the same no-op path already used on platforms without
    int128/complex support; gcc still runs the full test.

commit 88243588b3e6f5318ad3fcf49a626b96c1ea6820
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 15:26:48 2026 -0400

    ci: publish rlgl's original-report log so report links resolve
    
    The rlgl HTML report links to a sibling rlgl-report-original.<ext> file that
    rlgl writes next to it, but we only uploaded/published rlgl-report.html, so
    the link 404'd on Pages. Upload both via the rlgl-report* glob and copy the
    original log next to index.html when publishing.

commit 7b159e655916249e827fbd30a17748309d278d2d
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 15:20:39 2026 -0400

    ci: add x86_64 macOS coverage via Rosetta on Apple Silicon
    
    GitHub's free Intel macOS runners are gone, so test the x86_64 ABI by building
    x86_64 on a macos-14 (arm64) runner with clang -arch x86_64 and running the
    dejagnu testsuite under Rosetta 2. New MACOS_X86 env flag routes build.sh to
    build_linux (dejagnu + rlgl) with --host=x86_64-apple-darwin, bypassing the
    legacy xcodebuild build_macosx path.

commit 9d942dae34df4135958044ff67e051a7c43829f1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 15:16:28 2026 -0400

    ci: drop macOS-13 (Intel) job
    
    GitHub's free Intel macOS runners are effectively unavailable (jobs sit queued
    for hours, then time out). Test only the Apple-Silicon runners (macos-14/15).

commit 35a3dd28132fc93508ddb8a4a6e5f8d6181732b1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 08:59:27 2026 -0400

    ci: use correct Debian cross triple for mips64el (gnuabi64)
    
    The N64 mips64el cross package is gcc-mips64el-linux-gnuabi64, not
    gcc-mips64el-linux-gnu (which doesn't exist -> 'Unable to locate package').
    Use HOST=mips64el-linux-gnuabi64.

commit 57f7790aec8a08bea0f12077d9f336f1ddf28320
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 08:30:49 2026 -0400

    ci: expand QEMU coverage (riscv64, armv7, sparc64, mips64el) + fixes
    
    - Env-driven QEMU dispatch in build.sh (FOREIGN_IMAGE -> foreign container;
      CROSS_QEMU -> cross+qemu-user) instead of fragile HOST-triple globs, which
      failed to match the cross triples (powerpc-linux-gnu fell through to
      build_linux, so QEMU_LD_PREFIX was never set and every execution test
      failed with "Could not open /lib/ld.so.1").
    - build_cross_qemu now exports QEMU_LD_PREFIX so qemu-user finds the target
      loader; install.sh installs gcc-$HOST + qemu-user-static when CROSS_QEMU set.
    - Add foreign-container targets riscv64 and armv7 (official multi-arch debian
      image, since fedora lacks them); add cross+qemu targets sparc64 and mips64el.

commit 7ed781614757ed3f6b7f15c8bbd25f4d6019f2a0
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 08:17:14 2026 -0400

    ci: add more QEMU non-native targets (s390x, big-endian PowerPC)
    
    Extend QEMU coverage beyond ppc64le:
    
    - s390x: another build-qemu matrix entry using the official multi-arch fedora
      image (Containerfile.s390x, --platform linux/s390x), same foreign-container
      path as ppc64le.
    
    - powerpc64 (big-endian) and 32-bit powerpc: no ready foreign-arch container
      image exists, so add a build-cross-qemu job that cross-compiles with the
      Debian gcc-<HOST> toolchain and runs the testsuite under qemu-user (binfmt).
      build.sh gains build_cross_qemu + dispatch; install.sh installs the cross
      toolchain + qemu-user-static for these hosts.
    
    Both new jobs feed the rlgl report publisher.

commit 5b1c6fa30b55f153d135ddd77b3ac784908a61eb
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 07:41:58 2026 -0400

    ci: fix dejagnu site.exp for modern Tcl; tolerate make dist failure
    
    The QEMU ppc64le container ships a newer Tcl that removed the `case` command,
    so `make check` died with 'invalid command name "case"' and produced no
    libffi.log. Convert site.exp's case to `switch -glob` (equivalent, works on
    all Tcl versions). Also make `make dist` non-fatal in the emulated container
    build, since it builds the PDF manual (needs TeX) which isn't installed and is
    irrelevant to testing.

commit 223a1a01256f6c1a9d8d8e5c9a964d51d9d32315
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 07:25:59 2026 -0400

    ci: build the ppc64le QEMU image with --platform linux/ppc64le
    
    docker build defaulted to linux/amd64 and ppc64le/fedora has no amd64
    variant (no match for platform in manifest). Use the official multi-arch
    fedora base and pass --platform linux/ppc64le so buildx builds the ppc64le
    image under QEMU.

commit 4bf3406cfd146e90a7a3ab3482057736c63919b4
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 07:24:22 2026 -0400

    ci: reintroduce QEMU-emulated non-native testing (PowerPC)
    
    GitHub offers no ppc64le/s390x/etc. runners, so test these under QEMU: a new
    build-qemu job registers binfmt (docker/setup-qemu-action), builds the
    foreign-arch container from .ci/Containerfile.<arch>, and runs the libffi
    testsuite natively inside it via build_foreign_linux; rlgl evaluates the
    results on the host. Starts with powerpc64le; add a matrix entry + a
    Containerfile to cover more architectures. build.sh gains a ppc64le dispatch
    case driven by FOREIGN_IMAGE.

commit 260e301c811fe0bc912aa1c219c0c79bdfc1a26b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 19 07:16:45 2026 -0400

    ci: fetch rlgl via direct release URL, not the GitHub API
    
    download_rlgl resolved the asset through api.github.com/releases/latest, which
    is unauthenticated and rate-limited (60 req/hr/IP). Under the CI matrix (~20+
    jobs each calling it) it returns 403, leaving rlgl undownloaded and the build
    step dying with "./rlgl: No such file" (exit 127). Release-asset downloads are
    not rate-limited, so fetch a direct, version-pinned URL
    (v2.0.4, which includes the Intel macOS binary) instead. Also drop the
    best-effort "|| true" on macOS, which now evaluates results with rlgl.

commit 56bff074d23555fc856c7fc24e3aa9c635491210
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 18 19:37:13 2026 -0400

    ci: make rlgl.exe executable after unzip on Windows
    
    unzip does not set the execute bit, so cygwin refused to run ./rlgl.exe
    ("Permission denied", exit 126). chmod +x it after extraction, matching the
    tar-based Linux/macOS path.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 5532b1ee260ddc3ad8249c448bbf6fb609abed80
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 18 13:17:18 2026 -0400

    ci: deploy rlgl reports via GitHub Actions Pages flow
    
    The gh-pages branch is configured as a "workflow" Pages source, and pushes
    made with GITHUB_TOKEN don't trigger the legacy branch build, so committing
    reports to gh-pages alone never updated the live site. Have the publish job
    deploy the assembled site with actions/upload-pages-artifact + deploy-pages
    (keeping the gh-pages branch as the persistent store). Adds pages/id-token
    permissions and the github-pages environment, and guards deploy on whether
    any reports were published.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 062af85f0d8cf908dae022e12a7d4d5812733e07
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 18 12:55:34 2026 -0400

    ci: publish rlgl HTML reports to GitHub Pages
    
    Each report-producing job now uploads its rlgl-report.html as a uniquely
    named artifact and emits a ::notice:: with the report's Pages URL. A
    publish-reports job in each workflow (serialized across workflows via the
    gh-pages-publish concurrency group) collects the artifacts and commits them
    to the gh-pages branch under reports/<run-id>/<job>/, regenerating an index
    page that lists every run. Reports are thus viewable at
    https://libffi.github.io/libffi/ and persist across runs.
    
    Publishing is gated to pushes on the canonical repo (fork PRs lack the write
    token); the reports are still produced and uploaded as artifacts otherwise.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 07e977a4aadd8d327b035cbfa601d4effe088306
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 18 08:55:03 2026 -0400

    ci: use the new client-side rlgl from GitHub releases
    
    rlgl is now a self-contained client-side tool rather than a thin client for
    the hosted rl.gl server, so update CI accordingly:
    
    - Download the rlgl binary from its GitHub releases, selecting the asset by
      the runner's own OS/arch (rlgl runs on the runner, not the build target).
    - Drop the "rlgl l --key=... https://rl.gl" login step and the policy-bound
      API key; evaluation now happens entirely locally against the git-hosted
      policy.
    - Windows jobs fetch the release zip and run ./rlgl.exe (was ./rlgl/rlgl.exe).
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

commit 9cb5c4c139be925672cd2e035708b896b416c67a
Merge: e5cefe94 4355ecc4
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 18 06:52:19 2026 -0400

    Merge pull request #972 from kxxt/rv64d
    
    riscv64: fix float marshal for ABI_FLEN >= 64

commit 4355ecc40541f07b2cd8bafa3102f0947b7da1fd
Author: Levi Zim <rsworktech@outlook.com>
Date:   Tue Jun 16 22:04:31 2026 +0800

    riscv64: fix float marshal for ABI_FLEN >= 64
    
    The original code tries to use asm to reinterpret floats as doubles.
    However, that does not work since the float is converted to double
    instead.
    
    This patch fixes it by manually copying the 32-bit float bits and
    perform the required NaN-boxing when storing a narrower float type
    inside a wider float type.

commit e5cefe9499b801647b3b198923b5d86795e3826e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 6 05:46:08 2026 -0400

    Add security policy

commit 30c03c63aca3d1f5d7e9ce43de5b2edce930b0e5
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 5 08:03:23 2026 -0400

    README: note recent 3.6.0 changes
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

commit f0ca1577b0145854c486931b11aded99f610d5b3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 5 07:54:04 2026 -0400

    powerpc64: support FFI_TYPE_COMPLEX under ELFv2 (#970)
    
    The reporter of #962 hits a 1-slot drift on ppc64le when passing a
    float _Complex argument followed by an int: the C callee, compiled by
    GCC, treats the complex per ELFv2 §2.2.3.2.2 (split_complex_arg) and
    reserves *two* GPR shadow slots for the two halves, while libffi has
    no complex support for PowerPC and sees only the user's surrogate
    struct{float;float;} (one GPR shadow slot under HFA packing). All
    subsequent integer args land in the wrong register.
    
    Add FFI_TYPE_COMPLEX support for the LINUX64 / ELFv2 path:
    
      * ffitarget.h: define FFI_TARGET_HAS_COMPLEX_TYPE for POWERPC64 +
        _CALL_ELF == 2 so prep_cif accepts the type and types.c emits the
        ffi_type_complex_{float,double,longdouble} symbols.
    
      * ffi_linux64.c, arg path (prep_cif + prep_args64 + closure helper):
        each half of a _Complex argument is now passed independently —
        float/double halves go to consecutive FPRs and consume one GPR
        shadow slot each; integer halves go to consecutive GPR slots
        sign-/zero-extended to doublewords. This matches what GCC's
        split_complex_arg emits and fixes the 1-slot drift.
    
      * ffi_linux64.c, return path: float/double complex are returned via
        the existing 2-element FP-HFA assembly path (PPC64_LD_FLOAT_HOMOG /
        PPC64_LD_DOUBLE_HOMOG, FLAG_RETURNS_SMST + FLAG_RETURNS_FP).
        Integer complex are returned via .Lsmall_struct with FLAG_RETURNS_SMST
        only; ffi.c repacks the bounce buffer (real in slot 0, imag in
        slot 8) into the caller's natural packed layout, and the closure
        helper repacks the user-written packed value into two doublewords
        before returning PPC_LD_R3R4.
    
      * discover_homogeneous_aggregate now recurses through FFI_TYPE_COMPLEX
        of float/double, so a struct containing _Complex float/double members
        is recognised as an FP HFA (matches GCC's HFA rule for aggregates
        containing complex). The top-level complex arg/return paths bypass
        this and use their own switch cases.
    
    64-bit long double complex is treated as _Complex double. IBM-128 and
    IEEE-binary128 _Complex are explicitly rejected (FFI_BAD_TYPEDEF) and
    left as follow-up work; the same applies to PPC32 SysV and ELFv1.
    
    Fixes #962.
    
    Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

commit 547449d705258ea490aa8787dc084c5b38dbe722
Author: Muhammad Kamran <muhammad.kamran@arm.com>
Date:   Fri Jun 5 12:48:36 2026 +0100

    aarch64: add feature build attributes (#969)
    
    Emit AArch64 feature build attributes when assembler support is
    available, and keep using GNU property notes as the fallback.
    
    Rename the feature bit macros so they can be shared by both metadata
    formats.
    
            * src/aarch64/internal.h (AARCH64_POINTER_AUTH): Rename from
            GNU_PROPERTY_AARCH64_POINTER_AUTH.
            * src/aarch64/sysv.S (AARCH64_BTI): Rename from
            GNU_PROPERTY_AARCH64_BTI.
            (AARCH64_GCS): Rename from GNU_PROPERTY_AARCH64_GCS.
            (GNU_PROPERTY): New macro.
            (FEATURE_1_AND_MARK): New macro.
            Emit feature build attributes when __ARM_BUILDATTR64_FV is defined.

commit 11ef568167fb84bfcfefbb79bfb3ae4429fcb0e2
Author: Stewart X Addison <6487691+sxa@users.noreply.github.com>
Date:   Fri Jun 5 11:11:23 2026 +0100

    Fix erroneous semi colon in FFI_EXTRA_CIF_FIELDS on some platforms (#968)
    
    Signed-off-by: Stewart X Addison <sxa@ibm.com>

commit 4639c933db028a883cc8e7e36f8b97fb6df804e7
Author: hudsonzuo <zuohsh@163.com>
Date:   Fri Jun 5 18:10:53 2026 +0800

    add NULL check in sys_trim (#966)
    
    * add NULL check in sys_trim
    
    * space
    
    * Update dlmalloc.c

commit c937c979f70596ba502b142c420286dd3da00e40
Author: pietro <pietro@users.noreply.github.com>
Date:   Fri Jun 5 06:09:17 2026 -0400

    Use absolute paths for tests include paths (#965)
    
    Co-authored-by: Pietro Monteiro <pietro@sociotechnical.xyz>

commit c5abbdad2f930f806791942776ccd45beeff1613
Author: Jakub Jelínek <jakub@redhat.com>
Date:   Fri May 22 17:58:01 2026 +0200

    Fix two comment typos. (#961)

commit 9760868682cc9a33008761f158d86481d56738aa
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Apr 21 05:33:31 2026 -0400

    Remove nios ii credit (port was removed in 3.4.7)
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 0b1690778700480bbf94ce7288defb3d831cacf1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Apr 21 05:32:39 2026 -0400

    Add Meng Qinggang to LoongArch credits for LoongArch32 port
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 35f3a8f4a0f38f788f47bbc34e72abb9f2894a0a
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Apr 21 05:29:59 2026 -0400

    Update README.md in preparation for libffi 3.6.0
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

commit 70e6c2615d7deb0529568b013b1c274fc5e24375
Author: cloud <mengqinggang@loongson.cn>
Date:   Tue Apr 21 17:24:49 2026 +0800

    Add support for LoongArch32 (#957)
    
    * Add support for LoongArch32
    
    Change src/loongarch64 to src/loongarch.
    
    Change __loongarch64 to __loongarch_grlen.
    __loongarch64 is uesd for compatibility with legacy code,
    new programs should not assume existence of this macro.[1]
    And there is no __loongarch32 macro for LoongArch32.
    
    Add ilp32s, ilp32f, ilp32d abi.
    Add ADDI macro.
    
    [1] https://github.com/loongson/la-toolchain-conventions?tab=readme-ov-file#cc-preprocessor-built-in-macro-definitions
    
    * LoongArch: Fix libffi.closures/cls_longdouble.c
    
    CHECK(a8 == 8) fail on LoongArch32.
    
    long double passed by reference on LoongArch32 ilp32 ABI.
    If a argument register is available, the address is passed
    in the argument register; otherwise, it is passed on the stack[1].
    
    The address of return value and a1-a7 arguments of cls_ldouble_fn
    passed by a0-a7 argument registers. The address of a8 argument need
    to be passed by stack.
    
    But ffi_call_int only allocates cif->bytes(sizeof(long double)*8)
    bytes space for stack. Both the address of a8 argument and a8 argument
    are saved at sp+0 address. The lowest 4-byte of a8 argument are overwritten
    by the address of a8 argument.
    
    Allocates extra conservative estimate space like RISC-V.
    
    [1] https://github.com/loongson/la-abi-specs/blob/release/lapcs.adoc#passing-arguments

commit 10056e7e6a0d40d2a21af63484b99f08898dde9e
Author: Ryan VanderMeulen <rvandermeulen@mozilla.com>
Date:   Fri Apr 10 17:59:07 2026 -0400

    x86: add FFI_ASAN_NO_SANITIZE to ffi_call_int in ffiw64.c (#959)
    
    ffi_call_int in ffiw64.c uses the same alloca-as-stack trick as
    ffi_call_int in ffi64.c and ffi.c: it alloca's a block and passes it
    to ffi_call_win64() which uses it as its own stack frame. This
    confuses ASan's shadow memory tracking.
    
    ffi64.c and ffi.c already have FFI_ASAN_NO_SANITIZE on their
    ffi_call_int (added alongside the macro definition in ffi_common.h),
    but ffiw64.c was missed. Add it for consistency.

commit 70cb813f2bb2a8eb30c619666d289f59aacbecba
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 26 12:27:46 2026 -0400

    README: merge autogen.sh note into configure paragraph (#955)
    
    Folds the git-build note directly into the configure paragraph so
    readers who skip ahead see the autogen.sh requirement without having
    to notice a separate paragraph. Suggested by @gitonthescene in #954.
    
    Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

commit 11141fba1dcc69bdb98a8d63e7eb2c8109507c34
Author: bobo215 <bobo@atgreen.org>
Date:   Sun Mar 8 08:58:40 2026 -0400

    sh: Fix linker errors by applying __USER_LABEL_PREFIX__ in CNAME (#953)
    
    The CNAME macro in src/sh/sysv.S was defined as a no-op (#define CNAME(x) x),
    which ignores __USER_LABEL_PREFIX__. On targets where this prefix is set (e.g.
    an underscore on some platforms), the assembler emits symbols without the
    expected prefix, causing linker errors when C code references them.
    
    Fix this by using the C1/C2 two-level macro concatenation pattern (as used in
    x86/sysv.S) to properly prepend __USER_LABEL_PREFIX__ to symbol names.
    
    This replaces the approach proposed in #809.
    
    Co-authored-by: bobo215 <266481280+bobo215@users.noreply.github.com>
    Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

commit 21519b700380f9f4206c57ae44ca3c7e3e4ac18c
Author: pietro <pietro@users.noreply.github.com>
Date:   Sun Mar 8 07:57:22 2026 -0400

    Define `WIN32_LEAN_AND_MEAN` before including windows.h (#937)
    
    From GCC commit 902c7559 "Always define `WIN32_LEAN_AND_MEAN` before <windows.h>"
    
    This is already done in src/arm/ffi.c and src/dlmalloc.c, so do it in
    src/aarch64/ffi.c too.
    
    Co-authored-by: Pietro Monteiro <pietro@sociotechnical.xyz>

commit 840add3b6a1cd405d9ba59da7c507f75f71c808f
Author: Richard Henderson <richard.henderson@linaro.org>
Date:   Sun Mar 8 22:50:54 2026 +1100

    Add conditional target support for __int128 (#951)
    
    * powerpc: Move ffi_aix_trampoline_struct to ffi_darwin.c
    
    This is not required for the user of the library, and by
    placing it in the file in which it is used, we can also
    remove some ifdefs.
    
    * powerpc: Disconnect closure assembly from FFI_TYPE constants
    
    Define a set of PPC_LD_* constants private to the implementation.
    This allows some duplicate cases to be removed, as well as
    handling the more complex structure cases in C instead of asm.
    
    Hoist the 'mtlr r0' before the jump table, allowing two useful
    insns per case instead of one.
    
    * Detect __int128_t and add ffi_type_[us]int128
    
    * testsuite: Add trivial smoke test for int128
    
    * testsuite: Add trivial smoke test for complex int128
    
    * x86: Fix irregularly sized structure passing for win64
    
    Sizes 1, 2, 4, 8 are passed in integer registers;
    sizes 3, 5, 6, 7 are passed by reference.
    C.f. the switch just below in which we install the arguments.
    
    * x86: Support FFI_TARGET_HAS_INT128
    
    * aarch64: Support FFI_TARGET_HAS_INT128
    
    * alpha: Support FFI_TARGET_HAS_INT128
    
    * loongarch64: Support FFI_TARGET_HAS_INT128
    
    The marshal and unmarshal routines already correctly
    handle __int128 based on size.
    
    * riscv64: Support FFI_TARGET_HAS_INT128
    
    The marshal and unmarshal routines already correctly
    handle __int128 based on size.
    
    * s390x: Support FFI_TARGET_HAS_INT128

commit e17e7806123d336fa1dfc134fd1e97c82c74a032
Author: Julian Ospald <hasufell@posteo.de>
Date:   Sun Mar 8 19:45:26 2026 +0800

    Fix comments that trip up some toolchains (#950)
    
    This caused "error: invalid preprocessing directive #Load"
    on my ubuntu loongarch cross toolchain.

commit 2263d6037f8ef6b8d5bef14117ad1a17c32a20b9
Author: Emil Taylor Bye <phptph@gmail.com>
Date:   Fri Dec 26 16:04:51 2025 +0100

    Fix closures using FFI_REGISTER ABI (#949)
    
    * Fix closures using FFI_REGISTER ABI
    
    ffi_closure_REGISTER had the positions of the closure and return address
    switched, resulting in a segfault when calling a closure created with
    the FFI_REGISTER ABI.
    
    * Fix comment and remove redundant assembly
    
    * After fixing closures using FFI_REGISTER ABI, the comments were
      incorrect, not reflecting the value that was actually loaded into eax
      and ecx.
    * Additionally, ecx was loaded with the data at esp + closure_FS only
      to write it back to esp + closure_FS. Both commands were removed as
      they end up not having any effect as ecx is overwritten during
      FFI_CLOSURE_COPY_TRAMP_DATA.

commit f067aef6493c827f0bbbee44cc1b6e62b756afa4
Author: Jianfeng Liu <liujianfeng1994@gmail.com>
Date:   Fri Dec 19 04:38:42 2025 +0800

    add CFLAGS -mcmodel=medium for loongarch64 (#945)
    
    The default code model of gcc for loongarch64 platform provides
    256MiB PC-relative addressing space[1], which is not enough for
    linking large binaries like chromium. Setting it to medium can
    let libffi_pic.a get linked to large binaries successfully.
    
    [1] https://github.com/loongson/la-abi-specs/blob/release/laelf.adoc#code_models

commit 3276df05a758f8081adb6a910abf8de627ebda46
Author: jonhermansen <github.com@jh86.org>
Date:   Wed Nov 5 23:28:02 2025 +0000

    fix tsan tests on FreeBSD by linking to pthread (#944)

commit d6005499c262604596e93330f962ad0587b1eca2
Author: pietro <pietro@users.noreply.github.com>
Date:   Sat Oct 25 07:25:08 2025 -0400

    Remove debugging output (#940)
    
    Co-authored-by: Pietro Monteiro <pietro@sociotechnical.xyz>

commit 205fc530b049a3ac58e3470873d04f0fda3c7e82
Author: ggardet <guillaume.gardet@opensuse.org>
Date:   Sat Oct 25 13:24:40 2025 +0200

    aarch64: support GCS in assembly (#943)
    
    Signed-off-by: Guillaume Gardet <guillaume.gardet@arm.com>

commit 2835f72cc7ee57edfc987da4b88b1f4c7c0386c3
Author: Martin Storsjö <martin@martin.st>
Date:   Fri Aug 22 11:24:57 2025 +0300

    arm: Fix compilation for Windows ARM targets (#936)
    
    The .arch directive is only relevant for ELF targets, it is
    unsupported for COFF and MachO targets.
    
    Before 170bab47c90626a33cd08f2169034600cfd9589c, this was
    not an issue as the directive was filtered out by the
    ifndef __clang__.

commit 170bab47c90626a33cd08f2169034600cfd9589c
Author: Vyacheslav Chigrin <vyacheslav.chigrin@yandex.ru>
Date:   Thu Aug 21 11:36:06 2025 +0300

    Fix compilation for Cortex-A53 (#934)
    
    When cross-compiling with clang and flags "--target=armv7-linux-gnueabihf -mcpu=cortex-a53"
    compilation failed on instructions, used coprocessor.

commit c3a2b65748c83ed7b17310eab0b2b374a01622b3
Author: Vyacheslav Chigrin <vyacheslav.chigrin@yandex.ru>
Date:   Thu Aug 21 11:34:22 2025 +0300

    Fix test compilation for some Android platforms (#935)

commit c9b2a8a4ceb2fa1f46c0200592562677214084fd
Author: Peter Bergner <bergner@tenstorrent.com>
Date:   Thu Aug 7 06:40:35 2025 -0500

    riscv: Add static trampoline support (#931) (#933)
    
    Add static trampoline support to riscv32 and riscv64 Linux ABIs.
    The implementation follows the s390x and powerpc implementations
    which does not introduce a ffi_closure_*_alt function, but rather
    jumps directly to the ffi_closure_asm function itself.

commit e2eda0cf72a0598b44278cc91860ea402273fa29
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Aug 2 08:56:01 2025 +0200

    feat: Update libffi version to 3.5.2 with wasm64 and DragonFly BSD support

commit b53b0042c2637162ba8ea55f382264a0841359a7
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Aug 2 08:52:25 2025 +0200

    Fix for systems without O_CLOEXEC

commit 20eacb22e9e9cdd6402cb75278dede2b36051e53
Author: Kohei Tokunaga <43872416+ktock@users.noreply.github.com>
Date:   Sat Aug 2 15:28:46 2025 +0900

    Emscripten: Add wasm64 target (#927)
    
    * src/wasm32: Allow building with Emscripten with 64bit support
    
    MEMORY64 enables 64bit pointers so this commit updates the accessors for the
    libffi data structures accordingly.
    
    Each JS functions in ffi.c receives pointers as BigInt (i64) values and with
    casts them to Numer (i53) using bigintToI53Checked. While memory64 supports
    64bit addressing, the maximum memory size is currently limited to 16GiB
    [1]. Therefore, we can assume that the passed pointers are within the
    Number's range.
    
    [1] https://webassembly.github.io/memory64/js-api/#limits
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    * Add wasm64 target to the build scripts
    
    This commit adds support for the wasm64 target via the configure
    script. Emscripten supports two modes of the -sMEMORY64 flag[1] so the
    script allows users specifying the value through a configuration variable.
    
    Additionally, "src/wasm32" directory has been renamed to the more generic
    "src/wasm" because it's now shared between both 32bit and 64bit builds.
    
    [1] https://emscripten.org/docs/tools_reference/settings_reference.html#memory64
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    * GitHub Actions: Add wasm64 tests
    
    This commit adds a test matrix for wasm32, wasm64 and wasm64 with the
    -sMEMORY64=2 flag, using the latest version of Emscripten. -Wno-main is
    added to suppress the following warning in unwindtest.cc and
    unwindtest_ffi_call.cc.
    
    > FAIL: libffi.closures/unwindtest_ffi_call.cc -W -Wall -O2 (test for excess errors)
    > Excess errors:
    > ./libffi.closures/unwindtest_ffi_call.cc:20:5: warning: 'main' should not be 'extern "C"' [-Wmain]
    >    20 | int main (void)
    >       |     ^
    > 1 warning generated.
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    * testsuite: Fix types of main function
    
    test_libffi.py calls each test's main function without arguments, but some
    tests define the main function with parameters. This signature mismatch
    causes a runtime error with the recent version of Emscripten.
    
    This commit resolves this issue by updating the function signatures to match
    the way they are called.
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    * README: Add document about WASM64
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    ---------
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>

commit b7885ace59999564aec38c812156093cf0bfac02
Author: Weitian LI <liweitianux@live.com>
Date:   Sat Aug 2 14:27:51 2025 +0800

    fix: enable FFI_MMAP_EXEC_WRIT for DragonFly BSD (#930)
    
    Similar to PR #265 [1], we need to enable FFI_MMAP_EXEC_WRIT to use
    explicit write+exec mapping on DragonFly BSD.
    
    Without this fix, we were having segfaults with Meld [2]; it would crash
    with SIGSEGV after 5 diff operations.  The crash was caused by it
    attempting to execute code from non-execute memory region.  Moreover, if
    we set the `machdep.pmap_nx_enable=2` tunable (i.e., strict NX mode),
    Meld would crash upon the first diff operation.
    
    Fix the `configure.ac` script to enable `FFI_MMAP_EXEC_WRIT` for
    DragonFly BSD.  In addition, add it to the supported platforms table.
    
    [1] https://github.com/libffi/libffi/pull/265
    [2] https://meldmerge.org/

commit 60671187688ae3b295ab0e1dd77a8d6dd7a805a2
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 11 03:17:18 2025 -0400

    fix(tramp): ensure file descriptor is closed on exec.  Thanks to Florian Weimer.
    
    c# Please enter the commit message for your changes. Lines starting

commit d0f831bca60ea74b55a3155b929f195a971a3cac
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 21 16:05:31 2025 -0400

    feat: add QUESTION to .gail-labels

commit e28a0d5b0708ade04979e2a1d5c2a2d3acc749ec
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 10 16:17:58 2025 -0400

    ci: add fail-if-no-assets option in tarball workflow

commit 90220e51bcb2040d24b1f06581f0805a3091acda
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 10 16:03:47 2025 -0400

    Update version.

commit 330467d55c5f983d16cb2b03703a149db21d07ce
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 10 16:01:56 2025 -0400

    Move new symbols to new symbol versioning.

commit 517310ddbf7046a743af035ce61f2b304802bd00
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 19:03:49 2025 -0400

    ci: update compiler versions in github workflow

commit d994395ce74026f67b50957e6ce899e8ddbe5028
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 18:43:40 2025 -0400

    ci: update gcc version to 15 in build process

commit 26d7be77cc151acb458ef84f66859ef5300ce432
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 18:23:15 2025 -0400

    ci: update build.sh for Linux build process

commit a18d4e95d39d4b2b155abdea4ff1ac0006c12a6f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 13:35:29 2025 -0400

    feat(.github/workflows): add step to wipe old snapshot assets in tarball.yml

commit b9b837855666636645bd3e00ce60d082ad8cc713
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 13:29:03 2025 -0400

    fix(github-actions): correct regex in version extraction

commit 7ac6f14591d174a314bf45a8b02d136525cd86f9
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 13:08:02 2025 -0400

    ci: change packages installed during workflow

commit ceab352dfa55745ab058a289e59faee925508d10
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 13:01:50 2025 -0400

    ci: add installation of necessary tools to tarball workflow

commit 1f73aa507ed8e8bc49864c99ff21d82dd454cb55
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:56:19 2025 -0400

    refactor(.github/workflows/tarball): remove repeated job blocks

commit 7f5375d7c75805d02f95516875107e9eb345ae8c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:55:09 2025 -0400

    chore(workflows): update snapshot release description in tarball.yml

commit 2a5195bb2a633f7c9cc3b787d16ddb940c2a719d
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:54:55 2025 -0400

    chore(.github/workflows): update tarball.yml indentation

commit 2f535b8f747eea5c3336ecf20a3ecc9c0d523f62
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:52:43 2025 -0400

    chore(ci): update tarball workflow in GitHub Actions

commit 172bfb41f4f27cac939537e907106ef37abae701
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:22:35 2025 -0400

    chore(.github/workflows): update tarball workflow to use softprops/action-gh-release

commit 0947743f691bbd9d034a8ebe178ca8cb81e7fcd7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 11:53:15 2025 -0400

    Make tarballs (#924)
    
    * Create tarballs in CI

commit a46977da5056cc7f23eee6db544d88cd5a88b9f4
Author: Kleis Auke Wolthuizen <github@kleisauke.nl>
Date:   Mon Jun 9 15:55:02 2025 +0200

    Downgrade Autoconf requirement to version 2.68 (#922)
    
    * Downgrade Autoconf requirement to version 2.68
    
    * CI: remove redundant Autoconf install scripts

commit 40a76827051bde95e20cc4edeba31a353c074321
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 09:49:00 2025 -0400

    Improve CI test coverage (#923)
    
    Add CI testing on Windows with both gcc and clang.

commit 64a42f618dcd555920756e84b0c8bfcec358c32e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 16:59:58 2025 -0400

    More CI testing (#921)
    
    * ci: add new build configuration in GitHub Actions
    
    * ci: add Windows clang build workflow
    
    * ci: add additional packages to GitHub workflows build
    
    * ci: optimize build workflow and improve commenting
    
    * ci: remove unused MSVC dev command from build workflow
    
    * ci: modify build workflow to support multiple compilers
    
    * build(github-actions): use matrix.compiler for CC and CXX variables

commit d2c78d2ebbd9e65401095c6a2f281fe5132f028b
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 08:16:42 2025 -0400

    feat(testsuite): exclude wasm from pthreads testing in libffi

commit 668e2162e8185c007c3876c0de6723fb56aee0a1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 08:00:36 2025 -0400

    refactor(threads): don't run tests on windows

commit 5be311bed5e93305ed3f31bd29bcdcfe4baaa00c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:56:37 2025 -0400

    refactor: add POSIX barriers to libffi.threads testsuite

commit 70b34efece027faa843520709b300242e0526154
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:53:00 2025 -0400

    feat(testsuite): add -lpthread flag for wasm32 targets

commit f530522ce48922178b25af9b5467cacc41c21de6
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:52:25 2025 -0400

    chore: disable color diagnostics in libffi tests

commit 5fd812149e4740346341c1c9a8c355cc05f411c3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:47:04 2025 -0400

    chore: update documentation date and add test files to Makefile

commit a5d465029ce1ffce4860c75c2aa3fa0d1a8e18be
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:40:39 2025 -0400

    feat(testsuite): add new threading tests to libffi test suite

commit 074c423f86b30fa895f391230bdbedf076053fa3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:30:54 2025 -0400

    feat: Add ffi_get_default_abi and ffi_get_closure_size functions

commit b14d43793a83aabe79cae4ac6a39b6183f25c8aa
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 06:53:12 2025 -0400

    Update version

commit c8225fb03db49dfa04403a28091ab99b0998fffe
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 06:51:58 2025 -0400

    chore: update libffi version to 3.5.0

commit cb424c6d41401bb93c59a553849d32c34bfff765
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 06:50:47 2025 -0400

    docs: Update README with release details for version 3.5.0

commit 8b0eab28cb45c6862b30f5cadfc1a7fe996b072c
Author: JupiterRider <60042618+JupiterRider@users.noreply.github.com>
Date:   Sun Jun 8 12:16:38 2025 +0200

    Update License date and improve rcedit DLL metadata (#919)
    
    * rcedit add architecture and original filename
    
    * Update LICENSE to 2025

commit 8b30fe51d46ad29608d928c9920ca69f93394092
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 7 08:51:52 2025 -0400

    ci: add user configuration for DejaGNU tests in ppc64le container

commit 58f9179009b61ff563279fcd6ea489eda94b5260
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 7 08:48:41 2025 -0400

    ci: add diffutils and gawk to ppc64le container dependencies

commit d796b1ba066358f57e02a2337e3c1451ba900016
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 7 08:47:04 2025 -0400

    feat(.ci): add libtool to ppc64le container setup

commit 024cbc252c534419573ea775706c8b272e7159ef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 7 08:35:15 2025 -0400

    feat(.ci): add Containerfile for ppc64le architecture

commit e3cbebffcc397ce2121a32887ffbc06070a3c024
Author: JupiterRider <60042618+JupiterRider@users.noreply.github.com>
Date:   Fri Jun 6 22:40:40 2025 +0200

    use rcedit to add metainfo to DLL (#918)
    
    * use rcedit to add metainfo to DLL
    
    * remove trailing backslash in build.yml
    
    * build.yml: add rcedit execute permission
    
    * build.yml: cd to the right directory

commit 9bb21f1d291235c7aa2627b1175b4a085858396c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 6 13:48:25 2025 -0400

    fix: correct path in LDFLAGS line of build.yml workflow

commit c2ae66fc45dbfc18afe1244663bb5d97937c7976
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 6 13:41:56 2025 -0400

    fix(build): change version.o to version.obj in build.yml

commit d326a4c025a379ea590a9926a55bd39dcc8d9ae3
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 09:35:47 2025 -0400

    refactor: simplify versioning in .github/workflows/build.yml

commit d241e510196393c4ec8a7a8f1e456d2695802ff6
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 09:22:10 2025 -0400

    chore(build): update build script to use object file for versioning

commit c07b0c4ddc99d6be9d3d4fbe2c39ca86e9af4dc4
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 08:52:41 2025 -0400

    fix(github workflows): correct LDFLAGS path in build.yml

commit ec22d0fe7bd9db7629a7540a7ba12a2ec6a28889
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 08:44:36 2025 -0400

    build(.github/workflows): include build number in version info

commit e133ee847de50b710072aae1a478208c0a56c8f9
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 07:42:52 2025 -0400

    chore(build): add command to log version information in build script

commit c8d929fc45bae3192666c06b1c83e53afe7e639d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 07:33:57 2025 -0400

    ci: add version logging in build workflow

commit d6029210d795258c99e0606753556060d233109e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 07:11:43 2025 -0400

    ci: refactor version retrieval in build workflow

commit 49c70cab94981600b471a480048f497fccf03239
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 06:57:20 2025 -0400

    fix(build): correct variables for FILEVERSION and PRODUCTVERSION

commit 27f93a7038925797eaca6dea34375fd1b9909307
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 06:50:12 2025 -0400

    feat(build): add version information resource to build script and update documentation version

commit 1b6b176a289d923e7cf4c19f17eeadac67c5bd02
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 06:17:56 2025 -0400

    Update README.md to mention SH targets

commit bac99f2f3f3c7b368cd304d14188e473975e129f
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 06:12:10 2025 -0400

    Release candidate 1 for 3.5.0.  Windows build fixes. (#916)
    
    * refactor(ci): improve wget retry logic in .ci/install.sh
    
    * build(github-actions): use static runtime library in build
    
    * refactor(ffi.h.in): export version API
    
    * chore: update libffi version to 3.5.0-rc1

commit 3c54639eb81b68115f6ff3dcc562857d67d4136d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 4 19:20:37 2025 -0400

    refactor(ci): improve wget retry logic in .ci/install.sh (#915)

commit d6b1f3423278f52cf01f4ddc24b432a0875fbb00
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 4 11:24:11 2025 -0400

    refactor: move and modify unix-noexec.exp and site.exp files

commit d38abaf9db7cb4f9ddd8a18083f0d1f86a8c3312
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 4 07:57:21 2025 -0400

    feat(testsuite): add Emscripten support to libffi.closures tests

commit 2d8868ace7419b377587adf6b63fb276411931dd
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 4 07:04:53 2025 -0400

    Update generate-darwin-source-and-headers.py (#914)

commit 5ad529fb0dabeec863bec8d6c5f6b3502b45d6c1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 3 19:12:49 2025 -0400

    Many CI testing fixes and improvements. (#913)

commit 2529b40dbd9b5d1c5bff8123dfc7568635f5c900
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 2 20:42:47 2025 -0400

    chore: update version to 3.5.0-rc0 in documentation and configuration files

commit 3ee0dc41b681814e3789867d7d4ff31b6fd9ab99
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 2 20:41:27 2025 -0400

    chore: update version to 3.5.0-pre0 in version.texi

commit 55d84b0cb9e2561bfbbb4c8a7d3e731a45543c76
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 2 20:40:44 2025 -0400

    docs: update README with new libffi release information

commit 854ce7be85da6ab571b2f73390be20f57c5afc9b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 2 20:18:46 2025 -0400

    Make 3.5.0-pre0 release. Build and publish Windows binaries. Clean up testing. (#912)
    
    This commit removes many platforms from the testing workflow.
    They will be added back in future commits.

commit 022929b1fc06082389862816f08308f222de9389
Author: JupiterRider <60042618+JupiterRider@users.noreply.github.com>
Date:   Sun Jun 1 13:30:51 2025 +0200

    doc now shows the correct calculation for version number (#911)

commit dcc9e93b8ab1990ae0b598d083e19b6c47eb89cc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed May 28 14:32:02 2025 -0400

    Add Issue labeler Action

commit 9ee7341dbaec04d8c79685fb55703fc9453d0e55
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:19:32 2025 -0400

    feat(README): add details for next version release in history section

commit 4094362f545cdfe07f65b00c8c0db82b9b96b34b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:19:15 2025 -0400

    refactor: enhance assembler pseudo-ops and compiler flag checking

commit be4e59e3990142905bb55ffe94950f0f2201cde5
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:19:00 2025 -0400

    chore: update version to 3.5.0 and libtool version to 10:0:2

commit dc9b1332f7b74513a24c87051fa8334e7b461074
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:18:40 2025 -0400

    chore: update Makefile.am configurations

commit c9a3a06f9be8f32da3eac132ff6754ec74feb42a
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:18:13 2025 -0400

    feat(libffi): upgrade to version 3.5.0 and add version API

commit 64d5e122f747c9b761b311f85cfc5d99c02fe959
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 25 16:09:59 2025 -0400

    docs: update required installations in README.md

commit 5b253476d10e12291e96671ff5bf275737928ffd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 25 13:33:51 2025 -0400

    chore(testsuite): remove mingw64-align.c from Makefile and delete file

commit f9c60855da770a8465ad0fe7149ad86d1a6f900b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 24 08:11:37 2025 -0400

    Add custom github issue labels for gail

commit c6f1610509d3d146017d6cc30020ce334bde8425
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 27 08:59:12 2025 -0400

    feat(testsuite): add mingw64-align.c to test alignment in structs

commit 571177adcb2b604739a0432b7392f1b83294decf
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 27 08:30:35 2025 -0400

    feat(testsuite): add longjmp test to Makefile and implement longjmp test code

commit 562cb53b5ddc97020291927d47823f210c5f3486
Author: David Tenty <daltenty@ibm.com>
Date:   Fri Apr 25 05:07:57 2025 -0400

    Add initializer (#904)

commit aea22de28ec92a69cab9198de479263fe8b1a637
Author: Peter Bergner <bergner@linux.ibm.com>
Date:   Fri Apr 18 10:09:45 2025 -0500

    powerpc: Fix closures on powerpc64-linux when statically linking (#900) (#902)
    
    Closures on powerpc64-linux using static trampolines do not work when
    statically linking libffi.  The problem is the usage of tramp_globals.text
    in libffi assumes it contains the entry point address of the first trampoline.
    Powerpc's ffi_tramp_arch code returns &trampoline_code_table which for ABIs
    that use function descriptors, ends up returning trampoline_code_table's
    function descriptor address instead of its entry point address.  Update
    the code to always return the entry point address for all ABIs.

commit a431b47822f06e3f16b2e16f3163fd209ac56b5f
Author: Sam James <sam@gentoo.org>
Date:   Tue Apr 15 10:30:27 2025 +0100

    pa: add .note.GNU-stack marker to linux.S (#899)
    
    Similarly to f515eac04cf8e5f594d5d9dee5fb7dfc3a186a4c, add a .note.GNU-stack
    marker to pa/linux.S as it doesn't need an executable stack. Absence of the
    note means that GNU Binutils will consider it as needing an executable stack
    and mark it as such automatically.
    
    When building libffi on HPPA with `-Wl,--warn-warn-execstack`, we get:
    ```
    ld: warning: src/pa/.libs/linux.o: missing .note.GNU-stack section implies executable stack
    ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
    ```
    
    That becomes more problematic with glibc-2.41 which forbids dlopen()
    of a library with an executable stack, and libffi is commonly dlopen()'d,
    especially by Python.
    
    I suspect the reason it didn't show up on Debian is that since February,
    Debian has been building Binutils with --disable-default-execstack.
    
    Bug: https://bugs.gentoo.org/953805
    Bug: https://github.com/libffi/libffi/issues/898

commit 6a99edb8082f75e523e0d6ebaba42218b80e10c8
Author: Sam James <sam@gentoo.org>
Date:   Thu Apr 10 03:44:45 2025 +0100

    testsuite: add two tests to Makefile.am (#893)
    
    * Add libffi.call/overread.c and libffi.call/x32.c to Makefile.am
      so they're included in dist tarballs
    
    * Fix indentation and rewrap

commit bfb5b005a08239c751db667f68a67aeb72a9b9ff
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Apr 9 10:32:42 2025 -0400

    feat: Update version of libffi to 3.4.8 with various fixes and enhancements

commit 3429ed6b9414dfbe9d9da7609ab043291a01a148
Author: Peter Bergner <bergner@linux.ibm.com>
Date:   Tue Apr 8 05:52:37 2025 -0500

    powerpc: Add static trampoline support (#894) (#895)
    
    Add static trampoline support to all three powerpc Linux ABIs, specifically
    powerpc-linux (32-bit SYSV BE), powerpc64-linux (64-bit ELFv1 BE) and
    powerpc64le-linux (64-bit ELFv2 LE).  This follows the s390x implementation
    and does not introduce a ffi_closure_*_alt function, but rather jumps
    directly to the ffi_closure_* function itself.  If compiling with
    --with-gcc-arch=power10 and pc-relative is enabled, we use a simpler and
    smaller trampoline that utilizes Power10's new pc-relative load instructions.

commit bb1a84ed9772ee65e00762dab1c4ae50100d5a27
Author: mikulas-patocka <94898783+mikulas-patocka@users.noreply.github.com>
Date:   Sun Mar 30 12:07:59 2025 +0200

    Add the "ABI_ATTR" attribute to called functions (#891) (#892)
    
    I accidentally omitted the "ABI_ATTR" attribute, so that the testsuite
    fails when testing the Microsoft ABI.
    
    Fixes: fe203ffbb2bd ("Fix bugs in the x86-64 and x32 target (#887) (#889)")
    
    Signed-off-by: Mikulas Patocka <mikulas@twibright.com>

commit fe203ffbb2bd7f93a86013d341aa767a406150bc
Author: mikulas-patocka <94898783+mikulas-patocka@users.noreply.github.com>
Date:   Thu Mar 27 01:31:49 2025 +0100

    Fix bugs in the x86-64 and x32 target (#887) (#889)
    
    This commit fixes two bugs in ffi in the x86-64 target. The bugs were
    introduced by the commit d21881f55ed4a44d464c9091871e69b0bb47611a ("Fix
    x86/ffi64 calls with 6 gp and some sse registers").
    
    The first bug is that when we pass an argument with less than 8 bytes,
    ffi will read memory beyond argument end, causing a crash if the argument
    is located just before the end of the mapped region.
    
    The second bug is in the x32 ABI - pointers in x32 are 4-byte, but GCC
    assumes that the pointer values in the registers are zero-extended. ffi
    doesn't respect this assumption, causing crashes in the called library.
    
    For example, when we compile this function for x32:
    int fn(int *a)
    {
            if (a)
                    return *a;
            return -1;
    }
    we get this code:
    fn:
            testq   %rdi, %rdi
            je      .L3
            movl    (%edi), %eax
            ret
    .L3:
            movl    $-1, %eax
            ret
    When we call this function using ffi with the argument NULL, the function
    crashes because top 4 bytes of the RDI register are not cleared.
    
    
    Fixes: d21881f55ed4 ("Fix x86/ffi64 calls with 6 gp and some sse registers (#848)")
    
    Signed-off-by: Mikulas Patocka <mikulas@twibright.com>

commit cf69efabcaefcb6803f6cefd970741d10c17cec1
Author: Nikita Samusev <127026067+Nikitf777@users.noreply.github.com>
Date:   Sat Mar 8 14:41:02 2025 +0300

    Update the Simple Example to fix a compile error (#886)
    
    Fixes the following error:
    candidate function not viable: no known conversion from 'int (const char *)' to 'void (*)()' for 2nd argument

commit 89c99d738fd564da61b7ec70ab08fede475ba351
Author: fossdd <fossdd@pwned.life>
Date:   Fri Feb 28 22:10:10 2025 +0100

    MIPS: Dont import asm/sgidefs.h on linux (#885)
    
    Removed from Linux since Linux 3.7
    
    Ref: https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=61730c538f8281efa7ac12596da9f3f9a31b9272

commit 5ceddf4071e8bce3bdb20f8795d57d5ef0bc5503
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Thu Feb 20 04:25:21 2025 -0600

    aarch64: add PAC to GNU Notes (#882)
    
    While PAC was enabled, the bit to indicate support in the GNU Notes
    section of the ELF was missing.
    
    Before:
    readelf -n ./aarch64-unknown-linux-gnu/.libs/libffi.so
    
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI
    
    This was caused by this file not having PAC indicated in GNU Notes and
    the linker discarding it:
    File: ./aarch64-unknown-linux-gnu/src/aarch64/sysv.o
    
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI
    
    Now it has it:
    File: ./aarch64-unknown-linux-gnu/src/aarch64/sysv.o
    
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI, PAC
    
    As well as the output shared object:
    readelf -n ./aarch64-unknown-linux-gnu/.libs/libffi.so
    
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI, PAC
    
    Fixes: #881
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit 1716f81e9a115d340429504563bc8e7fb2eeef2b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 8 11:32:05 2025 -0500

    feat: remove nios2 support
    
    Acked-by: Anthony Green <green@moxielogic.com>

commit 252c0f463641e6100169c3f0a4a590d7df438278
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 8 09:37:31 2025 -0500

    chore: Bump version to 3.4.7 and update change log

commit adfe4489c17b542216a502efaaf6b0156e2197ab
Author: Kleis Auke Wolthuizen <github@kleisauke.nl>
Date:   Fri Jan 31 21:41:56 2025 +0100

    Emscripten: remove support for `-sWASM_BIGINT=0` (#874)
    
    * Emscripten: cleanup
    
    * Emscripten: remove support for `-sWASM_BIGINT=0`
    
    * Emscripten: remove redundant CircleCI config
    
    * Emscripten: modernize CI
    
    * Ensure test helper methods are static
    
    Similar to #644.
    
    * Fix test failures in `cls_multi_{s,u}shortchar`

commit 2f34cf639cab60123a7725fc9488657766ba665d
Author: Matthew Flatt <mflatt@cs.utah.edu>
Date:   Fri Jan 31 13:40:40 2025 -0700

    x86 Darwin returns structs of size 1, 2, 4, and 8 in registers (#876)

commit a0d8074a672312dbc757320d8bc42e39aa5b3d9a
Author: zye2-sc <140619768+zye2-sc@users.noreply.github.com>
Date:   Fri Jan 31 21:40:00 2025 +0100

    Disable go closures on Android (#877)
    
    * x18 register shouldn't be used on Android due to the shadow call stack feature in llvm
    * https://source.android.com/docs/security/test/shadow-call-stack

commit d77b9fefa25f7f11dcc4e6380c661c4cf2960a85
Author: 杨萧玉 <yulingtianxia@users.noreply.github.com>
Date:   Fri Dec 13 18:38:01 2024 +0800

    Fix config.sub on Apple platforms (#860)
    
    * update config.sub
    
    * update config.sub

commit 593cb01a46e63d5361f2df803947cb657bb4e822
Author: Satadru Pramanik, DO, MPH, MEng <satadru@gmail.com>
Date:   Fri Dec 13 05:37:15 2024 -0500

    Add mold linker to linker checks. (#866)
    
    Signed-off-by: Satadru Pramanik <satadru@gmail.com>

commit f515eac04cf8e5f594d5d9dee5fb7dfc3a186a4c
Author: Icenowy Zheng <uwu@icenowy.me>
Date:   Fri Dec 13 18:36:02 2024 +0800

    MIPS: add .note.GNU-stack section to assembly sources (#872)
    
    To build ELF shared libraries that do not require executable stack on
    MIPS, every object file linked should have a .note.GNU-stack section,
    otherwise the linker defaults to executable stack.
    
    As libffi shouldn't require executable stack, add the .note.GNU-stack
    section to the assembly source files under src/mips, like other
    architectures.
    
    Signed-off-by: Icenowy Zheng <uwu@icenowy.me>

commit 458b2ae2829f1916ea3a3e07c944b4668732290f
Author: Eddy S. <fneddy@users.noreply.github.com>
Date:   Sat Nov 16 13:03:24 2024 +0100

    Add static trampoline support for s390 (#862)
    
    * added static trampoline support for s390
    
    * enable static tramp only for  s390x 64bit

commit 0859f8431242d5adff21420b9cab538d2af527b5
Author: Joseph Myers <jsm@polyomino.org.uk>
Date:   Thu Oct 24 18:26:58 2024 +0000

    Fix testsuite for C23 `va_start` (#861)
    
    In the C23 revision of the C standard, `va_start` ignores its second
    argument, which is no longer required (previously the last named
    function parameter - which the compiler knows anyway, so it's
    redundant information).
    
    This has the consequence for the libffi testsuite, when making GCC
    default to `-std=gnu23`, of making two tests fail with warnings about
    an unused function argument (only passed to `va_start` and not
    otherwise used).  Fix those test failures by explicitly casting the
    argument to `void`.

commit 8308bed5b2423878aa20d7884a99cf2e30b8daf7
Author: Ivan Tadeu Ferreira Antunes Filho <antunesi@google.com>
Date:   Fri Sep 20 06:01:23 2024 -0400

    Move cfi_startproc after CNAME(label) (#857)
    
    This is a fix for https://github.com/libffi/libffi/issues/852: error: invalid CFI advance_loc expression on apple targets.
    
    The CFI for darwin arm64 was broken because the CNAME macro was being used after the
    cfi_startproc macro.

commit 01db744b4af8665f9b7494d00cc2a1cc45ee9636
Author: KJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>
Date:   Fri Sep 20 20:00:49 2024 +1000

    Disable ASAN in ffi_call_int functions (#858)
    
    The pattern for several of the architectures is for ffi_call_int to
    stack-allocate some arguments + the registers, and then
    ffi_call_$ARCH will pop the top of that structure into registers, and
    then adjust the stack pointer such that the alloca'd buffer _becomes_
    the stack-passed arguments for the function being called.
    
    If libffi is compiled with ASAN, then there will be a redzone inserted
    after the alloca'd buffer which is marked as poisoned. This redzone
    appears beyond the end of $sp upon entry to the called function.
    
    If the called function does anything to use this stack memory, ASAN will
    notice that it's poisoned and report an error.
    
    This commit fixes the situation (on the architectures that I have access
    to) disabling instrumentation for ffi_call_int; that means there will be
    no alloca redzone left on the shadow-stack.

commit f7e4992789fa563b4cc74521c37ff703555da21c
Author: Sam James <sam@cmpct.info>
Date:   Fri Sep 20 10:58:06 2024 +0100

    testsuite: fix dejagnu directive typo (#859)

commit 084f36903f56b280283f3f4473a80b8e77727a29
Merge: 92d384df 348e70ef
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 15 12:32:58 2024 -0400

    Merge remote-tracking branch 'refs/remotes/origin/master'

commit 92d384df196a099fde384f9178864dbfe8c6b0fc
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 15 12:32:29 2024 -0400

    Fix floating point compare

commit 348e70ef1c785b85e194e47d47b7c4c2b1cec861
Author: Richard Barnes <rbarnes@umn.edu>
Date:   Sun Sep 15 07:39:51 2024 -0400

    Suppress unused variable warning in dlmalloc.c (#843)
    
    Allows `-Wunused-but-set-variable` to pass

commit 30e887f84e70c16df5c421983f074d07a93b4e58
Author: Yuriy Kolerov <ykolerov@synopsys.com>
Date:   Sun Sep 15 14:39:01 2024 +0300

    A series of fixes for ARC port (#844)
    
    * arc: Fix warnings
    
    These warnings are fixed:
    
    1. A series of "unused variables".
    2. Implicit conversion from a pointer to uint32_t.
    
    Signed-off-by: Yuriy Kolerov <ykolerov@synopsys.com>
    
    * arc: Do not use mov_s and movl_s instructions
    
    mov_s and movl_s instructions use a restricted set of registers.
    However, a list of available registers for such instructions for
    one ARC target may not match a list for another ARC targets. For
    example, it is applicable to ARC700 and ARC HS3x/4x - build
    fails because mov_s formats may be incompatible in some cases.
    
    The easiest and the most straightforward way to fix this issue
    is to use mov and movl instead of mov_s and movl_s.
    
    Signed-off-by: Yuriy Kolerov <ykolerov@synopsys.com>
    
    ---------
    
    Signed-off-by: Yuriy Kolerov <ykolerov@synopsys.com>

commit 377a13696928aabc6f0df378ecd25437a1ff1d17
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Sun Sep 15 07:38:22 2024 -0400

    Bump actions/download-artifact from 3 to 4.1.7 in /.github/workflows (#856)
    
    Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4.1.7.
    - [Release notes](https://github.com/actions/download-artifact/releases)
    - [Commits](https://github.com/actions/download-artifact/compare/v3...v4.1.7)
    
    ---
    updated-dependencies:
    - dependency-name: actions/download-artifact
      dependency-type: direct:production
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit c7437f671e20f8864fd98b06f167af6e8ab6514b
Author: Yury V. Zaytsev <yury@shurup.com>
Date:   Sun Sep 15 13:37:28 2024 +0200

    configure: fix shared build on Solaris 10 (#846)
    
    GNU tools are often installed with g-prefix on Solaris. Unfortunately, a check
    in configure was using grep directly instead of through a variable, which lead
    to wrong results due to missing option `-q`. Additionally, the check will fail
    silently if `readelf` is not on `PATH` instead of trying `greadelf`.

commit 63b925fe98058a433c7bda6a6c2c6330b8ac77cd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 15 07:32:50 2024 -0400

    feat(testsuite): add struct_int_float.c to Makefile.am

commit efb98a72d8b9bdb71b4f972efced073bee3b30fc
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 15 07:31:33 2024 -0400

    Robustify floating point comparison in test

commit d21881f55ed4a44d464c9091871e69b0bb47611a
Author: kellda <59569234+kellda@users.noreply.github.com>
Date:   Sun Sep 15 13:29:42 2024 +0200

    Fix x86/ffi64 calls with 6 gp and some sse registers (#848)
    
    * Fix x86/ffi64 calls with 6 gp and some sse registers
    
    * Add test demonstating issue when mixing gp and sse registers

commit 8a0d029244d9b0393db19898e603f24febfb53ee
Author: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Date:   Sun Sep 15 13:22:36 2024 +0200

    OpenRISC/or1k build fixes (#854)
    
    * src/or1k/ffi.c: fix prototype of ffi_call_SYSV()
    
    The current code base of libffi on OpenRISC (or1k) fails to build with
    GCC 14.x with the following error:
    
    ../src/or1k/ffi.c: In function 'ffi_call':
    ../src/or1k/ffi.c:167:34: error: passing argument 3 of 'ffi_call_SYSV' from incompatible pointer type [-Wincompatible-pointer-types]
      167 |       ffi_call_SYSV(size, &ecif, ffi_prep_args, rvalue, fn, cif->flags);
          |                                  ^~~~~~~~~~~~~
          |                                  |
          |                                  void * (*)(char *, extended_cif *)
    ../src/or1k/ffi.c:113:27: note: expected 'void * (*)(int *, extended_cif *)' but argument is of type 'void * (*)(char *, extended_cif *)'
      113 |                           void *(*)(int *, extended_cif *),
          |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    This is due to the fact that ffi_prep_args() is in fact defined as:
    
      void* ffi_prep_args(char *stack, extended_cif *ecif)
    
    so, let's fix the prototype of the function pointer, which anyway gets
    passed to assembly code, so the typing gets lost.
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
    
    * src/or1k/ffi.c: fix incompatible pointer type
    
    The current code base of libffi on OpenRISC (or1k) fails to build with
    GCC 14.x with the following error:
    
    ../src/or1k/ffi.c: In function 'ffi_closure_SYSV':
    ../src/or1k/ffi.c:183:22: error: initialization of 'char *' from incompatible pointer type 'int *' [-Wincompatible-pointer-types]
      183 |   char *stack_args = sp;
          |                      ^~
    
    Indeed:
    
      register int *sp __asm__ ("r17");
      [..]
      char *stack_args = sp;
    
    Adopt the same logic used for:
    
      char *ptr = (char *) register_args;
    
    which consists in casting to the desired pointer type. Indeed, later
    in the code stack_args is assigned to ptr (so they need to be the same
    pointer type), and some arithmetic is done on ptr, so changing its
    pointer type would change the behavior.
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
    
    ---------
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

commit 8e3ef965c2d0015ed129a06d0f11f30c2120a413
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 28 04:07:09 2024 -0400

    Fix struct args (Rainer Orth)

commit 9c9e8368e49804c4f7c35ac9f0d7c1d0d533308b
Author: Martin Storsjö <martin@martin.st>
Date:   Tue Jun 4 14:13:08 2024 +0300

    aarch64: Add a missing no-op define of SIGN_LR_LINUX_ONLY (#838)
    
    This is needed at least if building for Linux, with a toolchain
    that doesn't default to having PAC enabled, fixing build errors
    since 45d284f2d066cc3a080c5be88e51b4d934349797.

commit 6993bc14dad1cd24294d64bf91e4503a4d7835d6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 1 13:42:29 2024 -0400

    Import from upstream

commit 00bf6e679160886cfa12de617ae1640721455ca5
Author: Florian <florian.atteneder@gmail.com>
Date:   Sat Jun 1 19:39:24 2024 +0200

    A fix to the struct type example (#837)
    
    Section 2.3.2 Structures of the docs declare `ffi_type`'s  `elements` field to be of type `ffi_type **`.

commit 45d284f2d066cc3a080c5be88e51b4d934349797
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Sat Jun 1 12:34:53 2024 -0500

    aarch64: support pointer authentication (#834)
    
    * aarch64: fix callstack in ffi_call_SYSV
    
    The debug stack gets corrupted between the frame and stack pivots, update
    the CFI directives so the call stack stays correct in the debugger.
    
    str     x9, [x1, #32] // stack is ffi_call_SYSV() -> ffi_call_int() -> ffi_call_int() -> main() (good)
    mov     x29, x1       // stack is ffi_call_SYSV() -> ffi_call_int() -> ffi_call_int() -> ffi_call() -> main() (bad)
    mov     sp, x0        // stack is ffi_call_SYSV() -> ffi_call_int() -> ffi_call_int() -> main() (good)
    
    The CFA data needs to be updated around the pivots, after this patch the
    callstack stays correct.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * aarch64: remove uneeded CFI directive
    
    This directive doesn't actually set the CFA to anything valid, and
    during unwinding this isn't even used. Note that the PAC/Darwin usage
    is quite suspect as well, as the CFA is either x1 or x29 after the frame
    pivot, and the CFA address is what's used as the modifier when verifying
    the PAC. At least this is the behavior on Linux with PAC, I need to
    verify ARME ABI unwinding. So for now leave Darwin as is.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * ptrauth: rename define for clarity
    
    Rename the HAVE_PTRAUTH define for clarity that its associated with the
    ARM64E ABI and not the ARM64 ABI that can be supported on Linux and
    enabled with -mbranch-protection=standard.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * aarch64: add PAC support to ffi_call_SYSV
    
    Support AARCH64 Pointer Authentication Codes (PAC) within ffi_call_SYSV
    and support exception unwinding.
    
    The Linux ABI for PAC is to use paciasp/autiasp instructions which also
    have hint space equivelent instructions. They sign the LR (x30) with the
    A key and the current stack pointer as the salt. Note that this can also be
    configured to use the B key and will use pacibsp/autibsp hint instructions.
    
    The Linux ABI for exception frame data when PAC is enabled assumes that the
    Connonical Frame Address, or CFA is equal to the stack pointer. I.E sp is
    equal to x29 (fp). When the unwinder is invoked the cfa will point to
    the frame which will include the *signed* return address from the LR.
    This will then be passed to __builtin_aarch64_autia1716 where the CFA
    will be used as the salt and stored to register x16 and register x17
    will contain the signed address to demangle. This can be noted in:
      - https://github.com/gcc-mirror/gcc/blob/d6d7afcdbc04adb0ec42a44b2d7e05600945af42/libgcc/config/aarch64/aarch64-unwind.h#L56
    
    The other required portion of this is to indicate to the unwinder that
    this is a signed address that needs to go the special demangle route in
    the unwinder. This is accomplished by using CFI directive "cfi_window_save"
    which marks that frame as being signed.
    
    Putting all of this together is a bit tricky, as the internals of
    ffi_call_SYSV the callee allocates its stack and frame and passes it in
    arg1 (x0) and arg2 (x1) to the called function, where that function
    pivots its stack, so care must be taken to get the sp == fp before
    paciasp is called and also restore that state before autiasp is called.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    ---------
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit 38732240c125b6af9db66d940c0725a69292cc49
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Sat Jun 1 12:33:28 2024 -0500

    ffi: fix spelling mistake (#833)
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit f64141ee3f9e455a060bd09e9ab72b6c94653d7c
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Tue Mar 19 11:44:55 2024 -0500

    Fix bti support (#830)
    
    * bti: add identifier to ffi_closure_SYSV_V_alt
    
    This was missing BTI_C identifier.
    
    Old Code:
    ffi_closure_SYSV_V_alt:
    0000fffff7f70500:   ldr     x17, [sp, #8]
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * testsuite: fix whitespace in Makefile.am
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * aarch64: correct comment describing BTI
    
    The comment is incorrect, BTI is enabled per mapping via mprotect with
    PROT_BTI flag set, not per-process. When the loader loads the library,
    if the GNU Notes section is missing this, PROT_BTI will not be enabled
    for that mapping, but is independent of other mappings.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    ---------
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit 3d0ce1e6fcf19f853894862abcbac0ae78a7be60
Author: Anthony Green <green@moxielogic.org>
Date:   Sun Feb 18 09:22:51 2024 -0500

    chore: update version to 3.4.6 and fix long double regression on mips64 and alpha

commit 94eaedb40e67e26d2fa35d1c22d8818f4d9f4c2d
Author: Anthony Green <green@moxielogic.org>
Date:   Sun Feb 18 08:41:04 2024 -0500

    Update sparc64 host

commit e1dcf03b4642e75a1058799a3023e0ebd0024258
Author: Anthony Green <green@moxielogic.org>
Date:   Sun Feb 18 08:02:45 2024 -0500

    Update cfarm hostnames

commit cd78b539125ae615d76df5a57039fe70ebd56c27
Author: Anthony Green <green@moxielogic.org>
Date:   Sun Feb 18 07:48:51 2024 -0500

    Always define long double types.

commit 012fcaf96c87ab617ba34babce9b6b259188fcf0
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:35:02 2024 -0500

    Update

commit d1597239af492240770692b8e453f0dca70fc551
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:32:42 2024 -0500

    update copyright year in libffi.texi

commit 91739a1a912476adbf1e0e4dcb091b9a2c5007d9
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:30:09 2024 -0500

    Update version, copyright and testsuite info.

commit 9752a622d12e696eaf9a4c46d4f09b58bca6bb83
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:03:21 2024 -0500

    Fix test filename reference

commit 404355317b3314da14a9ead0c0a50c040212e1fc
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:01:43 2024 -0500

    docs(README): update release details for libffi-3.4.5

commit 04f6fa310ddec494cfcf32fd3685cefe35a8d2a2
Author: Xi Ruoyao <xry111@xry111.site>
Date:   Thu Feb 15 20:52:13 2024 +0800

    mips: Fix N32 ABI return value handling (#813)
    
    In N32 ABI, 8-bit or 16-bit integers should be extended following the
    signedness of the integer, but 32-bit integers should always be
    sign-extended to 64-bit (note that N32 ABI only works on 64-bit CPUs).
    
    So handling this in everything using libffi would be nasty.  And the
    libffi code for architectures with a similar rule (LoongArch & RISC-V)
    also properly handle this.  Let's do this work in libffi for MIPS N32
    too.
    
    This fixes two failures in Python 3.12.1 ctypes test.

commit 00c0c87773910a320d82f026bb481eea31b50206
Author: 杨屿杰 <30362409+scylaac@users.noreply.github.com>
Date:   Thu Feb 15 20:51:40 2024 +0800

    Fix loongarch64 soft-float build (#816) (#817)

commit b3091029ed85339c856224c243826022ae93c041
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Thu Feb 15 04:51:12 2024 -0800

    Emscripten: Don't unbox single element structs if they are larger than 16 bytes (#818)
    
    This arguably is a compensation for a Python ctypes bug / strange behavior
    described here:
    https://github.com/python/cpython/blob/a16a9f978f42b8a09297c1efbf33877f6388c403/Modules/_ctypes/stgdict.c#L718-L779
    
    If a struct is larger than 16 bytes, Python does not bother to accurately report
    its contents figuring that we don't need to know.

commit 98881ecb8eec6d5f2beaaced96d9f625b0dee499
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Thu Feb 15 06:50:40 2024 -0600

    aarch64: add BTI flag to ELF notes (#822)
    
    When a program is loaded and linked, the first ELF file that doesn't
    declare that BTI is supported in the GNU NOTES section disables BTI
    support.
    
    Example:
    readelf -n ./aarch64-unknown-linux-gnu/.libs/libffi.so
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI
    
    Fixes: #823
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit f9da12e944c947e797e5f3a98f3860c2a0ed055e
Author: Dan Horák <dan@danny.cz>
Date:   Thu Feb 15 13:50:13 2024 +0100

    don't skip ffi_type_longdouble symbols (#814) (#824)
    
    Seems there are configurations (ppc64 or ppc64le) that define
    HAVE_LONG_DOUBLE_VARIANT in fficonfig.h, but do not define
    HAVE_LONG_DOUBLE, and still want ffi_type_{,complex_}longdouble
    symbols. Update the condition in libffi.map.in accordingly.

commit f8ed78f1b2e65f2741455612d38477424e321850
Author: Xi Ruoyao <xry111@xry111.site>
Date:   Thu Feb 15 20:49:27 2024 +0800

    LoongArch: Fix a build error with GCC 14 (#825)
    
    Fix the build error with GCC 14:
    
        ../src/loongarch64/ffi.c: In function 'ffi_prep_closure_loc':
        ../src/loongarch64/ffi.c:525:7: error: implicit declaration of
        function 'ffi_tramp_set_parms' [-Wimplicit-function-declaration]

commit 0b1dd62bef4192b61153182f7687edf7e885611c
Author: bartoli <perso.olivier.barthelemy@gmail.com>
Date:   Thu Feb 1 04:54:57 2024 +0100

    Update README.md (#820)
    
    For cygwin/MSVC build, CXXCPP is also needed to pass configure checks

commit c07c40ee9444e029bc595860a669de32b7af282a
Author: Anthony Green <green@moxielogic.org>
Date:   Wed Jan 31 22:43:38 2024 -0500

    `feat(github-actions): add new build workflow for warp`

commit 622caabcd25f4e11f752241417d06c9062acdf1f
Author: Chongyun Lee <45286352+licy183@users.noreply.github.com>
Date:   Sun Dec 24 23:38:32 2023 +0800

    Put more optional symbols behind ifdefs (#812)

commit a1c391bd8e604c611c7e9c8f6705dc723d403eb5
Author: Виктор Чернякин <56512186+LocalSpook@users.noreply.github.com>
Date:   Fri Dec 22 03:30:50 2023 -0700

    Fix a variety of warnings (#811)

commit 3a62a08af7bd0b5d540a087590dc54cdc312416b
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Dec 21 15:19:44 2023 -0500

    Remove warnings

commit d96fa2117cc6ca2923de9a2f34311ef0219b7590
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Dec 21 14:04:19 2023 -0500

    Eliminate warning

commit 5b1944b4ce4b03e28a5843d36812756168d66b08
Author: Martin Storsjö <martin@martin.st>
Date:   Wed Nov 29 00:38:13 2023 +0200

    aarch64: Write the BTI instructions as "hint" instructions (#810)
    
    GNU binutils refuses to assemble the direct BTI instructions unless
    the target architecture explicitly supports BTI, ending up with errors
    such as
    
        ../src/aarch64/sysv.S: Assembler messages:
        ../src/aarch64/sysv.S:87: Error: selected processor does not support `bti c'
        ../src/aarch64/sysv.S:156: Error: selected processor does not support `bti j'
    
    Building with -march=armv8.5-a fixes building this.
    
    However, the BTI instructions assemble into hint instructions, that
    are ignored by processors that don't implement them. Therefore it is
    possible to assemble them for the baseline armv8.0-a target as well,
    by replacing "bti j" with "hint #36", "bti c" with "hint #34" and
    "bti jc" with "hint #38"; this assembles into the same instruction
    bits.

commit 11af2196d5f4e8c756758cf86e4ab79dda89f405
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Nov 23 09:22:20 2023 -0500

    Reference recent changes

commit d7f5e98b437a242ac712cda8df3e47b205339711
Author: David Tenty <daltenty.dev@gmail.com>
Date:   Thu Nov 23 09:16:56 2023 -0500

    Fix visibility check for AIX (#804)

commit 7f960d9a062fab0624302e9f63ef8b025f51dd10
Author: David Tenty <daltenty.dev@gmail.com>
Date:   Thu Nov 23 09:16:35 2023 -0500

    [powerpc][AIX] fix layout issues for nested struct types (#805)
    
    * [powerpc][AIX] fix layout issues for nested struct types
    
    On AIX under the default power alignment rules, the layout
    of struct types which are nested inside other structs may
    be different than the layout of those types on their own.
    
    Specifically the first member double rules which would
    apply an eight byte alignment if that type appears in the
    first position of a struct:
    
     1) apply recursively if the struct appear in the first member
        of another struct
     2) do not apply if that struct is itself a member of another struct
        and not the first member.
    
    The current implementation of the rules in libffi doesn't handle these
    cases, causing a mismatch with the compiler and causing some crashes
    we see when OpenJ9 is used with libffi on AIX.
    
    This PR corrects this and adds some representative test cases.
    
    * Fix code style
    
    * Add a size check
    
    * Add additional test
    
    * Fix padding in internal structs
    
    * Flip condition back to original form
    
    * Add a comment

commit d93c0be8a0f11f207e8232770c5f0590406efad1
Author: Tobias Heider <tobias.heider@stusta.de>
Date:   Thu Nov 23 15:15:29 2023 +0100

    Add bti intructions to aarch64 assembly to work with strict (#808)
    
    BTI enforcement on OpenBSD.

commit adbcf2b247696dde2667ab552cb93e0c79455c84
Author: Daily Price Depot Droid <anthony@atgreen.org>
Date:   Sat Oct 21 09:58:28 2023 -0400

    Disable firefox testing

commit 357755eef44735676de1cec458192c7784fb3aa8
Author: Daily Price Depot Droid <anthony@atgreen.org>
Date:   Sat Oct 21 09:05:48 2023 -0400

    Try logging

commit c23e9a1c81a84ea4804d001865845b25ff8d4c8a
Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
Date:   Sat Oct 21 20:44:24 2023 +0900

    Check if FFI_GO_CLOSURES is defined (#796)
    
    This macro is always defined to 1 if defined, or undefined.
    With `-Wundef` option, checking the value without checking if it is defined causes warnings:
    
    ```
    /opt/local/include/ffi.h:477:5: warning: 'FFI_GO_CLOSURES' is not defined, evaluates to 0 [-Wundef]
    #if FFI_GO_CLOSURES
        ^
    ```

commit a4be0b7210b5a7fd67770d2f4d63105900bc459a
Author: Yn0ga <ynoga@protonmail.com>
Date:   Sat Oct 21 13:43:43 2023 +0200

    Add support for Haikuos on PowerPC (#799)

commit dd90749505559d38abb339f1a1cd03791a9dc484
Author: Petr Sumbera <sumbera@volny.cz>
Date:   Sat Oct 21 13:42:11 2023 +0200

    Fix passing floating point arguments on 64bits SPARC (libffi#778) (#802)

commit 44f6fa3e526c920c61c8ac10661f447ccfe30872
Author: Alfred Wingate <parona@protonmail.com>
Date:   Fri Oct 20 15:02:37 2023 +0300

    Put optional symbols behind ifdefs (#800)
    
    Signed-off-by: Alfred Wingate <parona@protonmail.com>

commit 5c6e53db873767cd2266745cebc62551958f5bee
Author: Michael Osipov <1983-01-06@gmx.net>
Date:   Mon Sep 4 13:27:01 2023 +0200

    Fix build failures on HP-UX (#792)
    
    This fixes #328
    
    Co-authored-by: Chris Hunt <chrahunt@gmail.com>

commit 1b3e7569fe114fc7d7779e35704b8519fe65fd4d
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Mon Sep 4 19:26:11 2023 +0800

    Replace use of triple with target, and explicitly specify build host to force cross-compilation (#794)

commit 22b50e896a80171648439497041afe3b6dba1c08
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 31 16:31:42 2023 -0400

    Fix python and pyodide version

commit 4467a3bc350bca106aee2c55cbb19ffffb144d1b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 31 08:48:50 2023 -0400

    Upgrade pyodide version to match newer selenium API

commit 1d0a28ab5a2ee2e12b0650d69184d561cd1fd83c
Author: Ivan Tadeu Ferreira Antunes Filho <itadeufa@gmail.com>
Date:   Sat Aug 12 09:02:39 2023 -0400

    Make label private on apple (#788)
    
    Private labels on apple must start with L prefix, while on ELF they start with .L prefix.
    This makes the label start with L on apple instead of .L.

commit 9e8f1bd8de39ee90a73c6927e2df18a418f6da55
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Tue Jun 20 21:17:04 2023 -0700

    Emscripten build: Remove -sSTRICT_JS (#781)
    
    This rasies errors on newer versions of the emscripten compiler.

commit ac598b7f5272d536b75f4b3833a4610cf4cd9404
Merge: 2d63cee0 8bdd4716
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 3 08:20:32 2023 -0400

    Merge branch 'master' of github.com:/libffi/libffi

commit 2d63cee0e2154bb9027cff71f780cfaa2f543567
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 3 08:18:23 2023 -0400

    Add tests with homogeneous aggregate types

commit 8bdd4716e5974ee0b28b3c09db1eaa9e8833481e
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Sun Apr 2 19:54:22 2023 -0700

    More accurate explanation of wasm32 state in readme (#776)
    
    There are three main wasm32 target triples:
    * wasm32-unknown-unknown
    * wasm32-unknown-emscripten
    * wasm32-unknown-wasi
    
    The wasm32 port is only for the wasm32-unknown-emscripten target triple.
    (The other triples have no dynamic linking support so libffi would be both
    hard to port and of limited utility.)

commit f08493d249d2067c8b3207ba46693dd858f95db3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 17 20:35:44 2023 -0500

    Mention ARCv3 work

commit c4df19c99f8d8841942e3edaadbf331d30e298c8
Author: Claudiu Zissulescu <claziss@gmail.com>
Date:   Sat Feb 18 03:33:47 2023 +0200

    Update ARC's libffi port (#771)
    
    * Add support for ARC and ARC64
    
    Add support for ARC/ARC32/ARC64
    
    * Implementation of GO Closure for ARC/ARC32/ARC64 Architectures
    
    ---------
    
    Co-authored-by: Nuno Cardoso <cardoso@synopsys.com>
    Co-authored-by: Luis Silva <luiss@synopsys.com>

commit 237520649730cb21daf4ebff1cf9a0a64f8507f8
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 9 12:23:35 2023 -0500

    Normalize libffi labels

commit ca26801567e9ce19c83f132c6a116d3d25d3b8a1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 9 10:31:22 2023 -0500

    Use rlgl

commit 7d23c2d28e884ad5978e0974ad2443570940d393
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Thu Feb 9 06:01:37 2023 -0800

    Add emscripten gha workflow (#768)
    
    Resolves issue #767

commit 883f5ae665bf96008a7a56bf4d6c64cb05c68272
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 5 09:51:37 2023 -0500

    Rename label

commit 678dad5abe6c95ffa087b799922c2114b18c8541
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Thu Feb 2 14:48:07 2023 -0800

    Use libffi-dg-prune to handle Emscripten INFO messages rather than patching emcc.py (#766)

commit 7d03d3a3150c5c1ff70753edaa880bb5d57ae566
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 16:09:14 2023 -0500

    Mention wasm32

commit c267c72fa803316e95462f16bf1e3d6d5d55612c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 16:04:34 2023 -0500

    Modernize

commit 2687cfc5329d08d6bd4d397c1ca8eb0d171e22fd
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Thu Feb 2 09:10:00 2023 -0800

    Add wasm32 emscripten support (#763)
    
    * added build script
    
    * Apply libffi-emscripten patch
    
    * Some changes to wasm32/ffi.c
    
    * Remove exit(0); from test suites
    
    * Fix LONGDOUBLE argument type
    
    * Use more macros in ffi.c
    
    * Use switch statements instead of if chains
    
    * Implemented struct args
    
    * Finish struct implementation
    
    * Partially working closures
    
    * Got closures working (most of closures test suite passes)
    
    * Revert changes to test suite
    
    * Update .gitignore
    
    * Apply code formatter
    
    * Use stackSave and stackRestore rather than directly adjusting stack pointer
    
    * Add missing break
    
    * Fix visibility of ffi_closure_alloc and ffi_closure_free
    
    * Fix FFI_TYPE_STRUCT and FFI_TYPE_LONGDOUBLE when WASM_BIGINT is not used
    sig needs to be vi here for FFI_TYPE_STRUCT and FFI_TYPE_LONGDOUBLE, noticed this while running the test suite without WASM_BIGINT support.
    
    * Always use dynCall rather than direct wasmTable lookup (function pointer cast emulation changes dynCall)
    
    * Prevent closures.c from duplicating symbols
    
    * Try to set up CI
    
    * Add test with bigint
    
    * Make test methods static
    
    * Remove BigInt shorthand because it messes up terser
    
    * Add selenium tests
    
    * Update tests a bit to try to make CI work
    
    * WASM_BIGINT is a linker flag not a compile flag
    
    * Finish getting CI working (#1)
    
    * update gitignore
    
    * Avoid adding "use strict;" to generated JS
    
    This should be controlled by -s STRICT_JS in Emscripten.
    
    * Make JavaScript ES5 compliant
    
    * Remove redundant EXPORTED_RUNTIME_METHODS settings
    
    * Fix definition of DEREF_I16
    
    * Avoid marshalling FFI_TYPE_LONGDOUBLE when WASM_BIGINT is not used
    
    * Add missing FFI_TYPE_STRUCT signature
    
    * Improve test scripts
    
    * Remove redundant EXPORTED_RUNTIME_METHODS settings
    
    * Add missing EOL
    
    * Add struct unpacking tests
    
    * Update ci config to try to actually use WASM_BIGINT
    
    * Revert "Avoid marshalling FFI_TYPE_LONGDOUBLE when WASM_BIGINT is not used"
    
    This reverts commit 61bd5a3e20891623715604581b6e872ab3dfab80.
    
    * Fix single_entry_structs tests
    
    * Fix return from closure call
    
    * Fix 64 bit return from closures
    
    * only allocate as much space on stack for return pointer as needed
    
    * Revert "only allocate as much space on stack for return pointer as needed"
    
    This reverts commit e54a30faea3803e7ac33eed191bde9e573850fc1.
    
    * xfail two tests
    
    * Fix err_bad_abi test
    
    * Remove test logging junk
    
    * Try to set up long double marshalling for closures
    
    * xfail err_bad_abi
    
    * Fix reference errors in previous commit
    
    * Add missing argument pointer assignment
    
    * Fix signature of function pointer in cls_dbls_struct
    
    * Fix longdouble argument
    
    * Try some changes to bigint handling
    
    * Fix BigInt handling
    
    * Fix cls_longdouble test
    
    * Fix long double closure arg with no WASM_BIGINT
    
    * Use EM_JS to factor out js helpers
    
    * Support for varargs closure calls
    
    * Fix varargs calls
    
    * Fix err_bad_abi test
    
    * Fix typo in previous commit
    
    * Add more assertions to closures test suite
    
    * Fix some asserts
    
    * Add assertions to a few more tests
    
    * Fix some tests
    
    * Fix more floating point assertions
    
    * Update more tests
    
    * Var args for ffi_call
    
    * Don't do node tests
    
    * Macro for allocating on stack
    
    * Add some comments, simplify struct handling
    
    * Try again to fix varargs calls, add comments
    
    * Consolidate WASM_BIGINT conditionals into LOAD_U64 and STORE_U64 macros
    
    * A bit of cleanup
    
    * Fix another typo
    
    * Some fixes to the testsuite
    
    * Another testsuite fix
    
    * Fix varags with closures?
    
    * Another attempt at getting closure varargs to work
    
    * sig is initialized later
    
    * Allow libffi.closures tests to be run
    
    * Improve build script
    
    * Remove redundant semicolons
    
    * Fix a few libffi.closures test failures
    
    * Cleanup
    
    * Legacy dynCall API is no longer used
    
    * Fix FFI_TYPE_LONGDOUBLE offset
    
    * xfail 2 tests for WASM
    
    - closure_loc_fn0; not applicable -- codeloc doesn't point to closure.
    - huge_struct; function signature too long.
    
    * Revert some redundant dg-output/printf statements
    
    Helps Node.
    
    * Revert "Don't do node tests"
    
    This reverts commit a341ef4b.
    
    * Fix assertions in cls_24byte
    
    * More tiny formating fixes to test suite
    
    * Revert "Revert "Don't do node tests""
    
    This reverts commit 7722e685ea04e2420e042886816d8c4dd31f5dcb.
    
    * Fix 64 bit returns when WASM_BIGINT is absent
    
    * Fix print statement in cls_24byte
    
    * Add CALL_FUNC_PTR macro to allow pyodide to define custom calling behavior to handle fpcast
    
    * Update single_entry_structs tests
    
    * More explanations
    
    * Fix compile error in last commit
    
    * Add more support for pyodide fpcast emulation, update CI to try to test it
    
    * Clone via https
    
    * Fix path to pyodide emsdk_env
    
    * Add asserts to the rest of the test suite
    
    * Fix test compile errors
    
    * Fix some tests
    
    * Fix cls_ulonglong
    
    * Fix alignment of <4 byte args
    
    * fix cls_ulonglong again
    
    * Use snprintf instead of sprintf
    
    * Should assert than strncmp returned 0
    
    * Fix va_struct1 and va_struct3
    
    * Change double and long double tests
    
    These tests are failing because of a strange bug with prinft and doubles, but I am not convinced
    it necessarily has anything to do with libffi. This version casts the double to int before printing it and avoids the issue
    
    * Enable node tests
    
    * Revert "Change double and long double tests"
    
    This reverts commit 8f3ff89c6577dc99564181cd9974f2f1ba21f1e9.
    
    * Fix PYODIDE_FPCAST flag
    
    * add conftest.py back in
    
    * Fix emcc error: setting `EXPORTED_FUNCTIONS` expects `<class 'list'>` but got `<class 'str'>`
    
    See discussion on https://github.com/pyodide/pyodide/pull/1596
    
    * Remove test.html
    
    * Remove duplicate test file
    
    * More changes from upstream
    
    * Fix some whitespace
    
    * Add some basic debug logging statements
    
    * Reapply libffi.exp changes
    
    * Don't build docs (#7)
    
    Works around build issue makeinfo: command not found.
    
    * Update long double alignment
    
    Emscripten 2.0.26 reduces the aligmnet of long double to 8. Quoting
    from `ChangeLog.md`:
    
    > The alignment of `long double`, which is a 128-bit floating-point
    > value implemented in software, is reduced from 16 to 8. The lower
    > alignment allows `max_align_t` to properly match the alignment we
    > use for malloc, which is 8 (raising malloc's alignment to achieve
    > correctness the other way would come with a performance regression).
    > (#10072)
    
    * Update long double alignment
    
    Emscripten 2.0.26 reduces the aligmnet of long double to 8. Quoting
    from `ChangeLog.md`:
    
    > The alignment of `long double`, which is a 128-bit floating-point
    > value implemented in software, is reduced from 16 to 8. The lower
    > alignment allows `max_align_t` to properly match the alignment we
    > use for malloc, which is 8 (raising malloc's alignment to achieve
    > correctness the other way would come with a performance regression).
    > (#10072)
    
    * Improve error handling a bit (#8)
    
    * Fix handling of signed arguments to ffi_call (#11)
    
    * Fix struct argument handling in ffi_call (#10)
    
    * Remove fpcast emulation tests
    
    * Align the stack to MAX_ALIGN before making call (#12)
    
    * Increase MAX_ARGS
    
    * Cleanup (#14)
    
    * Fix Closure compiler error with -sASSERTIONS=1 (#15)
    
    * Remove function pointer cast emulation (#13)
    
    This reverts commit 593b402 and cbc54da, as it's no longer needed
    after PR pyodide/pyodide#2019.
    
    * Prefer the `__EMSCRIPTEN__` definition over `EMSCRIPTEN` (#18)
    
    "The preprocessor define EMSCRIPTEN is deprecated. Don't pass it to code
    in strict mode. Code should use the define __EMSCRIPTEN__ instead."
    https://github.com/emscripten-core/emscripten/blob/84a634167a1cd9e8c47d37a559688153a4ceace6/emcc.py#L887-L890
    
    * Install autoconf 2.71
    
    * Try again with installing autoconf 2.71
    
    * Fix compatibility with Emscripten 3.1.28
    
    * CI: remove use of `EM_CONFIG` env
    
    See commit:
    https://github.com/emscripten-core/emsdk/commit/3d87d5ea8143b3636f872fb05b896eb4a19a070b
    
    * Fix cls_multi_schar: cast rest_call to signed char
    
    * Remove test xfails (#17)
    
    * Fix long double when used as a varargs argument
    
    * Enable unwindtest and fix it
    
    * Add EM_JS_DEPS
    
    * Also require convertJsFunctionToWasm
    
    * Run tests very very verbose
    
    * Echo the .emscripten file
    
    * Remove --experimental-wasm-bigint insertion
    
    * Build with assertions
    
    * Move verbosity flags back out of LDFLAGS
    
    * Remove debug print statement
    
    * Use up to date pyodide docker image
    
    * Explicitly cast res_call to fix test failure
    
    * Put back name of main function in cls_longdouble_va.c
    
    * Fix alignment
    
    The stack pointer apparently needs to be aligned to 16. There were
    some terrible subtle bugs caused by not respecting this. stackAlloc
    knows that the stack should be 16 aligned, so we can use stackAlloc(0)
    to enforce this. This way if alignment requirements change, as long
    as Emscripten updates stackAlloc to continue to enforce them we should
    be okay.
    
    * Fix handling of systems with no Js bigint integration
    
    When we run the node tests we use node v14 tests (since node v14 is
    vendored with Emscripten). Node v14 has no Js bigint integration
    unless the --experimental-wasm-bigint flag is passed. So only the
    node tests really notice if we get this right. Turns out, it didn't
    work. We can't call a JavaScript function with 64 bit integer arguments
    without bigint integration.
    
    In ffi_call, we are trying to call a wasm function that takes 64 bit
    integer arguments. dynCall is designed to do this. We need to go back
    to tracking the signature when we don't have WASM_BIGINT, and then use
    dynCall. This works better now that emscripten can dynamically fill in
    extra dynCall wrappers:
    https://github.com/emscripten-core/emscripten/pull/17328
    
    On the other hand, for the closures we are not getting a function pointer
    as a first argument. We need to make our own wasm legalizer adaptor that
    splits 64 bit integer arguments and then calls the JavaScript trampoline,
    then the JavaScript trampoline reassembles them, calls the closure, then
    splits the result (if it's a 64 bit integer) and the adaptor puts it back
    together.
    
    * Improvements to emscripten test shell scripts (#21)
    
    This fixes the C++ unwinding tests and makes other minor improvements
    to the Emscripten test shell scripts.
    
    * Rename the test folder and move test files into emscripten test folder
    
    * Use docker image that has autoconf-2.71
    
    * Cleanup
    
    * Pin emscripten 3.1.30
    
    * Fix build.sh path
    
    * Rearrange ci pipeline
    
    * Fix bpo_38748 test
    
    * Cleanup
    
    * Improvements to comments, add static asserts, and update copyright
    
    * Use `*_js` instead of `*_helper` for EM_JS functions (#22)
    
    * Minor code simplification
    
    * Xfail first dejagnu test to work around emscripten cache messages
    
    See https://github.com/emscripten-core/emscripten/issues/18607
    
    * Remove unneeded xfails
    
    * Shorten conftest.py by using pytest-pyodide
    
    * Apply formatters and linters to emscripten directory
    
    * Fix Emscripten xfail hack
    
    * Fix build-tests script
    
    * Patch emscripten to quiet info messages
    
    * Clean up compiler flags in scripts and remove some settings from circleci config
    
    * Rename emscripten quiet script
    
    * Add missing export
    
    * Don't remove go.exp
    
    * Add reference to emscripten logging issue
    
    ---------
    
    Co-authored-by: Kleis Auke Wolthuizen <info@kleisauke.nl>
    Co-authored-by: Kleis Auke Wolthuizen <github@kleisauke.nl>
    Co-authored-by: Christian Heimes <christian@python.org>

commit ce077e5565366171aa1b4438749b0922fce887a4
Author: serge-sans-paille <serge.guelton@telecom-bretagne.eu>
Date:   Thu Feb 2 14:46:29 2023 +0000

    Forward declare open_temp_exec_file (#764)
    
    It's defined in closures.c and used in tramp.c.
    Also declare it as an hidden symbol, as it should be.
    
    Co-authored-by: serge-sans-paille <sguelton@mozilla.com>

commit abf211d1603da9d687455169646e0e9667be17c1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 07:06:02 2023 -0500

    Mention HPPA fixes

commit 222abd0c65babe2174b21753217145f5031a8b91
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 07:04:55 2023 -0500

    From Dave Anglin:
    
    This patch is derived from the work done in implementing libffi for 64-bit hppa64-hpux target. Currently, the 32-bit hppa targets do a linear search for the return type of an ffi_call. This is slow and inefficient. A jump table can used to jump directly to the code used to process the return value. In most common cases, the return value can be processed in the jump table itself.
    
    The patch also fixes return handling for FFI_TYPE_UINT8, FFI_TYPE_SINT8, FFI_TYPE_UINT16 and FFI_TYPE_SINT16.

commit e58e22b22386ed0e0a95e97eb8eed016e3f01b02
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 07:02:53 2023 -0500

    From Dave Anglin:
    
    A couple of years ago the 32-bit hppa targets were converted from using a trampoline executed on the stack to the function descriptor technique used by ia64. This is more efficient and avoids having to have an executable stack. However, function pointers on 32-bit need the PLABEL bit set in the pointer. It distinguishes between pointers that point directly to the executable code and pointer that point to a function descriptor. We need the later for libffi. But as a result, it is not possible to convert using casts data pointers to function pointers.
    
    The solution at the time was to set the PLABEL bit in hppa closure pointers using FFI_CLOSURE_PTR. However, I realized recently that this was a bad choice. Packages like python-cffi allocate their own closure pointers, so this isn't going to work well there.
    
    A better solution is to leave closure pointers unchanged and only set the PLABEL bit in pointers used to point to executable code.
    
    The attached patch drops the FFI_CLOSURE_PTR and FFI_RESTORE_PTR defines. This allows some cleanup in the hppa closure routines. The FFI_FN define is now used to set the PLABEL bit on hppa. ffi_closure_alloc is modified to set the PLABEL bit in the value set in *code.
    
    I also added a FFI_CL define to convert a function pointer to a closure pointer. It is only used in one test case.

commit baa6bbbc176b3c572eaf05b3fae0311df7e5f7b7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 06:59:46 2023 -0500

    Add HPPA64 support

commit e70dd1aa240159bd2050cb1eafffb49cdc1d8b22
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Thu Feb 2 11:44:13 2023 +0000

    libffi: Fix X86 32b Darwin build and EH frames. (#757)
    
    This addresses a number of issues in the X86 Darwin 32b port for libffi.
    
    1. The pic symbol stubs are weak definitions; the correct section placement
       for these depends on the linker version in use.  We do not have access
       to that information, but we can use the target OS version (assumes that
       the user has installed the latest version of xcode available).
       When a coalesced section is in use (OS versions earlier than Darwin12 /
       OSX 10.8), its name must differ from  __TEXT,__text since otherwise that
       would correspond to altering the attributes of the .text section (which
       produces a diagnostic from the assembler).
       Here we use __TEXT, __textcoal_nt for this which is what GCC emits for
       these stubs.
       For later versions than Darwin 12 (OS X 10.8) we can place the stubs in
       the .text section (if we do not we get a diagnostic from clang -cc1as
       saying that the use of coalesced sections for this is deprecated).
    
    2. The EH frame is specified manually, since there is no support for .cfi_
       directives in 'cctools' assemblers.  The implementation needs to provide
       offsets for CFA advance, code size and to the CIE as signed values
       rather than relocations. However the cctools assembler will produce a
       relocation for expressions like ' .long Lxx-Lyy' which then leads to a
       link-time error.  We correct this by forming the offset values using
       ' .set' directives and then assigning the results of them.
    
    3. The register numbering used by m32 X86 Darwin EH frames is not the same
       as the DWARF debug numbering (the Frame and Stack pointer numbers are
       swapped).
    
    4. The FDE address encoding used by the system tools is '0x10' (PCrel + abs)
       where the value provided was PCrel + sdata4.
    
    5. GCC does not use compact unwind at present, and it was not implemented
       until Darwin10 / OSX 10.6.  There were some issues with function location
       in 10.6 so that the solution here suppresses emitting the compact unwind
       section until Darwin11 / OSX 10.7.

commit 7effe99955b228ae828d06fa8d07dc546ef67b1a
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Thu Feb 2 11:42:46 2023 +0000

    Darwin: Search for both shared and convenience libraries in each path. (#761)
    
    For several Darwin linker versions, the default behaviour is to first traverse
    the set of library paths, looking for shared libraries, and then a second time
    looking for archives.
    
    This means that if the library is configured --disable-shared the installed
    system version /usr/lib/libffi.dylib will be found before the archive under
    test.
    
    Using the linker option '-search-paths-first' alters the strategy to search each
    path for dylib and then archive before moving on to the next.

commit ebbc5e14cdbfcc24bf3c9bb7b41ee10cd979c535
Author: serge-sans-paille <serge.guelton@telecom-bretagne.eu>
Date:   Thu Feb 2 11:40:17 2023 +0000

    Fix signed vs unsigned comparison (#765)
    
    As reported by -Wsign-compare. In the case of getting the result of
    comparing the result of sysconf (_SC_PAGESIZE) to other value, this also
    correctly handles edge cases where the above fails and returns -1.
    
    Co-authored-by: serge-sans-paille <sguelton@mozilla.com>

commit 7611bb4cfe90884b55ad225e0166136a1d2cf22b
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jan 8 09:01:00 2023 -0500

    Use checkout@v3, with nodejs 16

commit 3a8bb6bb7f51844b890ce6ae44fc6d7c4547fbd0
Author: YongKang Zhou <zhouyongkang4321@gmail.com>
Date:   Sun Jan 8 21:56:34 2023 +0800

    fix typo (#758)
    
    `mingW` -> `MinGW`

commit 00116b6d0171ba69ffe23d6b5c21c0fdb5907a48
Author: Alexander Kanavin <alex.kanavin@gmail.com>
Date:   Mon Dec 5 03:20:09 2022 +0100

    arm/sysv: reverted clang VFP mitigation (#747)
    
    Since commit e3d2812ce43940aacae5bab2d0e965278cb1e7ea,
    seperate instructions were used when compiling under clang,
    as clang didn't allow the directives at the time. This mitigation
    now causes compilation to fail under clang 10, as described by
    https://github.com/libffi/libffi/issues/607. Now that
    clang supports the LDC and SDC instructions, this mitigation
    has been reverted.
    
    Co-authored-by: Brett Warren <brett.warren@arm.com>

commit c50c16d0bcb58952840184aa83e62c6d912bf779
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 20 12:20:40 2022 -0500

    Fix large struct passing on PA-RISC

commit c6dc125afba294b9b9613392c492ae18df3ede84
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 25 10:28:19 2022 -0400

    Add missing test cases

commit 2b2f61f6e6a79d46fa277965745a8cd8bb5f04bc
Author: Xavier Claessens <xclaesse@gmail.com>
Date:   Mon Oct 24 20:39:04 2022 +0200

    Small build cleanup (#743)
    
    * configure.ac: Remove some unused checks
    
    * Fix FFI_API definition
    
    When doing a static build dllimport/dllexport should be disabled. It was
    also using 2 different macros FFI_BUILDING_DLL and FFI_BUILDING for no
    reason.

commit f24180be1367f942824365b131ae894b9c769c7d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 23 20:17:29 2022 -0400

    Update to version 3.4.4

commit 848052fabb207d6f56485c8c2c3509eddecbe828
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 23 11:25:10 2022 -0400

    More aarch64 fixes

commit af0f14cd6d932bd1c2f7c39c01e2df3b0ad19ea9
Author: Icecream95 <the.real.icecream95@gmail.com>
Date:   Mon Oct 24 04:08:10 2022 +1300

    Fix types of temporary variables in aarch64 extend_integer_type (#745)
    
    Fixes truncated values in weston-info output.

commit f7233db2a781b43e419a30edbec7639f74fa2a00
Author: musvaage <112724366+musvaage@users.noreply.github.com>
Date:   Mon Oct 17 17:26:17 2022 -0500

    typos (#742)

commit 45e492952e9f984a105ab281fb9433a4bbc12146
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 16 12:41:56 2022 -0400

    Add 32-bit cygwin test

commit 93cfb655200f34ab1b2b7d8955291c457b91ee9f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 10 14:32:35 2022 -0400

    Correction for older compilers

commit 77a0fb82b53087647a12334c6ddd590ea6215199
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Mon Oct 10 17:59:04 2022 +0200

    Flush output before aborting (#740)
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit 3874fd9865eef72a5cf5a761781b51f8db9fa267
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Mon Oct 10 17:58:48 2022 +0200

    Fix strict aliasing problem in aarch64 ffi_call (#739)
    
    The assignment a = &dest in ffi_call_int may be moved after the call to
    extend_integer_type because that function accesses the assigned value with
    a different type.
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit 4b0c358e28fae22164bf0d423f183dfed8a1ba10
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Mon Oct 10 17:57:47 2022 +0200

    riscv: make copies of structs passed by reference (#738)
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit c163d93ac032a101cda1818855d681430f7af89a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 8 18:35:38 2022 -0400

    Add gcc-12 testing for aarch64 linux

commit 62fd1f218be35976858a9f3a0b36fe0d38146bc9
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 2 13:03:37 2022 -0400

    Tweak quotes

commit e1d1b094d31dbf97bd53c09736be97e1e9812d6a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 28 10:16:45 2022 -0400

    Add .

commit b45f68949d7d1b705eb5e26f58a09972ad70a9c4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 28 10:16:01 2022 -0400

    Update README for 3.4.4.

commit 817a43fbc1d6d1c702c492e926f158b17ae988e4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 28 09:05:45 2022 -0400

    Revert to previous cfi check. (#735)

commit 963c4a969326192a2a0ad536d3943f21dbbb0eaa
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 22:05:42 2022 -0400

    Remove nested comments

commit e9e44157526c00bfd1142175ed6a7eb936ea0ede
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 21:25:30 2022 -0400

    Don't tweak path

commit 4594dcc98770b4fa60fce313abf557f090f8a0fd
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 21:05:26 2022 -0400

    Fix find

commit fe68a7b998329f471c3c0c5726073b9cb1a5a126
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 20:29:17 2022 -0400

    Locate tools

commit cfb3f4c255cda534d1dc5de6a31cff70f02f9d69
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 20:13:42 2022 -0400

    Use cross tools for Windows

commit ae544e0043079d778fdf0e16408db3b7a6d723bd
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 18:23:06 2022 -0400

    Fix shell

commit b8d849bd85294253787bbe1838de354ad2f54201
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 17:58:31 2022 -0400

    Find ms tools

commit 9785eee066782d7575023f94b64402963b55aa8c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 17:39:44 2022 -0400

    32- and 64-bit Windows

commit 1421717effc7b5052e3c26e2b715a83a8a61355c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 08:13:17 2022 -0400

    Add "lto" to triple to identify lto builds

commit 425acd4c2f217b00868ec1577c20b73de032c114
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 07:57:37 2022 -0400

    Try aarch64 linux with -flto

commit c4261a0588fa997837e44f8417fc8577b37cd461
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 26 16:45:00 2022 -0400

    Show compiler version

commit a1467200c36ce80dacb8d9d0d50049765809b6f4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 26 11:41:48 2022 -0400

    Never link pthread for android

commit 5ce26a0e03eacb483709189e8cbb05509fa68612
Author: Frederik Seiffert <frederik@seiffert.org>
Date:   Mon Sep 26 13:43:40 2022 +0200

    CI: add Android builds (#732)

commit 55bcc47717bb0f9c5276a45710d757cda7a61f8e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 24 22:03:52 2022 -0400

    Test idea borrowed from cpython

commit a2473cde0a02c096dc3e0b57f0cb73f598765570
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 24 21:41:02 2022 -0400

    or1k: All struct args are passed in memory

commit f93224d38662a8cdc33ca56fe6f2d5650a86d690
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 24 21:38:57 2022 -0400

    moxie: All struct args are passed in memory

commit e79f19489bb294ce60bef5cdba5e56c3e7d84382
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 24 17:11:30 2022 -0400

    Add test case transcribed from cpython

commit ab96038772ec4f4ccfaf49d621cd20f58742c401
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 19:42:35 2022 -0400

    Set host triplet for native builds

commit a6fc81653d6ce649a6bc29675baa112c68a21df0
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 19:25:09 2022 -0400

    Update job names

commit 6b7fb6ce9eb4751ed3179de256566971c9d46cb7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 18:23:42 2022 -0400

    Give better names to CI workflows

commit f0675ab7e85ca31095b51db5a5c955f1005240cb
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 17:30:51 2022 -0400

    Update version to 3.4.4-experimental

commit e3eaa609882fbcffb6c1b21270b6ff46fb57699f
Author: Hans <h-c-mueller@users.noreply.github.com>
Date:   Mon Sep 19 23:26:59 2022 +0200

    Suppress error console output duing configure in case not an ELF file (#729)
    
    On Cygwin, MSYS and MinGW readelf is available, but files generated are no
    ELF files. This results in an Error output on console:
    'checking whether .eh_frame section should be read-only... readelf: Error: Not an ELF file - it has the wrong magic bytes at the start
    yes'
    With this patch the error output is suppressed resulting in only
    'checking whether .eh_frame section should be read-only... yes'
    Setting of related variables is not changed.
    
    Co-authored-by: Hannes Müller <>

commit 84817695eab13c282436fca278bde2384ca955e5
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 13:31:46 2022 -0400

    Fix typo

commit 53338d2bbf547682b2461a6e4199276e24ec5c85
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 13:07:50 2022 -0400

    Update version

commit 0bd41b75df49f002f3fee9f4d5df225d742d3f1b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 12:26:05 2022 -0400

    Update libtool version

commit 9b1dd8f2d5af8c76d120ffd566bf3c821580c96c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 12:22:04 2022 -0400

    Update version to 3.4.3

commit 0a769ccc0f7a4a7e3e76a79b61c28341fc47e3be
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 08:17:15 2022 -0400

    Update release dates

commit f26b56e1c547d2b4d8c9303275ecea47b5936184
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 08:15:22 2022 -0400

    Add new files for distribution

commit b801b54b667340867441e922c14230a93832c8e2
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 06:49:32 2022 -0400

    Mention AIX with GCC

commit ff34df233c863371912881516eae039f850fcad6
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 06:45:19 2022 -0400

    Update comment about platform support

commit 598ea692b81ac8116bd9907d2b498c16fc92bde7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 06:43:41 2022 -0400

    Clean ups, preparing for new release

commit fc6b939066f211b99eed3c8111e446ec95d51ca6
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 06:42:29 2022 -0400

    Standardize temp exec file creation

commit 4c2984c43fbb3db8e65b2b5702b27944eb0ed343
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 15:06:57 2022 -0400

    Handle win32 ABIs for struct return

commit b05dc51bbe9aef6fcac66a8e68b59472bfaff126
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 13:03:10 2022 -0400

    Debug x86

commit cafdb8377a8be2eadac05c318fae9ef6786c36c2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 12:05:12 2022 -0400

    Revert

commit acf0ce9e9b0bcd73d39f599a53e9924ba74c13c1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 11:04:54 2022 -0400

    Add test case

commit b49308eaac7288e01a36894598fb62bfaf61b238
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 08:26:23 2022 -0400

    Add missing ABI_ATTR

commit 735e7be4fb2a0401a9ca66cc64004b8b3418feb3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 08:21:34 2022 -0400

    X86 is never defined.

commit ee22ecbd11f52f8de1adbb2a6561aee2125a576a
Author: Hans <h-c-mueller@users.noreply.github.com>
Date:   Sun Sep 18 01:56:25 2022 +0200

    Add MSYS configuration files (#728)
    
    * Add MSYS configuration files
    
    MSYS behaves very similiar to Cygwin, e.g. also __CYGWIN__ is defined.
    Now 'make check' passes on MSYS without extra patches.
    
    * Fix warning extra tokens at end of #endif in closures.c
    
    Extra tokens converted into a comment. Also nearby indentations corrected.
    
    * Fix missing prototype warning mkostemp() on Cygwin
    
    Cygwin requires also _GNU_SOURCE to be defined to enable mkostemp() prototype.
    
    * Fix warning label ‘out’ defined but not used in ffi functions
    
    Define same preprocessor conditions for goto and label visibility.
    
    * Fix warning label ‘out’ defined but not used and related indentations.
    
    Define same preprocessor conditions for goto and label visibility. Correct also
    related indentations.
    
    Co-authored-by: Hannes Müller <>

commit 5e010474cf2e30fa053f0a1a460a752f06438cf7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 16:57:59 2022 -0400

    Fix test case for 64-bit mingw

commit 305cde7904ab676b7974ae68acb40b788b4c484e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 15:50:35 2022 -0400

    Passes on 64bit mingw

commit 05785cafcf584d80c6b48651e1d33c4a3feca75c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 15:18:09 2022 -0400

    Fix arg alignment for STDCALL

commit 98d4ad65e9933ed4878ef4aacfaa8299e467a903
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 09:42:53 2022 -0400

    Fix test headers

commit 2abf00a6c61f4cf6232dc50f28204be020bef05d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 08:25:39 2022 -0400

    Tweak msys2 tools again

commit d1b31536af74590b74236a00254e77617a8d50b0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 08:16:26 2022 -0400

    Fix msys2 tool selection

commit d352ed366722d5dfce0c1581c3820124c0bbafed
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 08:10:53 2022 -0400

    Build 32- and 64-bit msys2

commit 4d0a0384ce11446e02fb7f233aae5c19c8082fb1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 07:58:26 2022 -0400

    msvc requires the printf change, not mingw

commit a509abf6b0ef9045b8df05b0c3663969b21290c4
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 06:45:00 2022 -0400

    Install unzip

commit 950ed4a75384c4e7b0a512cb49f71f4d99c50a5d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 06:33:14 2022 -0400

    Don't make msys2 default shell

commit 5d02c0cca3750c7aac61971b9e4cb94940793303
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 06:28:23 2022 -0400

    Try msys2

commit 64a78fa760c581f9c70199abb34aef1e0d086bd2
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 06:08:30 2022 -0400

    Try new path

commit 77fdeae859f3ab96bc936f0a967d34a5609af40d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 01:37:31 2022 -0400

    Find mingw32

commit bb4e7278b7f362afd03d128e7cb68a5e0e2efaf7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 01:28:58 2022 -0400

    DEbug

commit 7443b421d39087cad2e607d00b845c670b18920f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:17:21 2022 -0400

    Try new shell

commit 2ebc36f4be835437fa5d6c4c2b796fc22f769323
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:11:52 2022 -0400

    Fix indentation

commit 3740b243277c6dc210d45bd0b4f8abe8c2e1cb29
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:10:43 2022 -0400

    set mingw32 path

commit 7bf23f899cef435d023ecc8afde34d9e83829c2f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:04:42 2022 -0400

    Rename job

commit ce5b2208121667236874181360ca91aaa285b528
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:02:32 2022 -0400

    Fix mingw32 github actions

commit 317c9b6a13d3414c510b27bdc7ce57be56399df5
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 22:54:10 2022 -0400

    Add mingw32 testing

commit 19e8354ff9b608b5410451caef6a9773375de005
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 07:36:06 2022 -0400

    Fix test case

commit 4932f351579fb722e1e0b58a173b1571a6dfae79
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 07:08:06 2022 -0400

    Improve test case

commit 819b01ced894028d41a34ec0178de9e7637b23de
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 07:07:15 2022 -0400

    Add test case

commit b577a5b801b1d1aef1aec5920d34fd1fd6597122
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 12 10:23:59 2022 -0400

    Mention Cygwin static trampoline support.

commit 4b54a6471a8f98eb8bc1ea1694a8f3a3a433e538
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 12 09:02:08 2022 -0400

    Fix limits.h inclusion for cygwin

commit a1130f37712c03957c9b0adf316cd006fa92a60b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 12 08:53:06 2022 -0400

    Add static trampoline support for Cygwin

commit 26cc9a6c73c80e8459c25da3718c91cf5a36cbd8
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 10 20:36:45 2022 -0400

    Remove stray }}

commit 078184887d65bf4a3ecd2f78f6cdbf4c91ccc357
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 10 11:45:28 2022 -0400

    Update rlgl usage (switch from player ID to labels)

commit 6e7caacb9c94efba6775825df2479be389da51f1
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 10 10:31:37 2022 -0400

    Label rlgl reports

commit d9a19e21c2b86e03b6acb8a2d73d992c8e4974e8
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:58:03 2022 -0400

    The right kind of quotes

commit 2b2644969cbeeaee50938fbea591ea7f85df809e
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:57:26 2022 -0400

    More quotes

commit eb9eb1f6f041548fe670c76f7a90d1c53c75d620
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:49:51 2022 -0400

    Fix random build dir

commit ea124a99da9efb3bde86a1706e15f62be7e68a66
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:21:21 2022 -0400

    Remove bogus sparc compiler flag

commit cca77833fd53ffec93a4962d1e9cd7ea5a38f13f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:20:59 2022 -0400

    Fix typo

commit 8ee64076f1b7cc654ff24adaffff25ddb3d57484
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:14:13 2022 -0400

    Fix typo

commit 086935029d23dad133c97dfaf68749b7726460a1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:12:10 2022 -0400

    Set CC and CXX for GCC compile farm builds

commit da905276850342df0f9dfe2c775f6c649d4eed6b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 21:15:58 2022 -0400

    dlmmap fix and always check for PaX MPROTECT on linux
    
    Also make EMUTRAMP experimental
    From Stefan Bühler
    https://github.com/libffi/libffi/pull/282

commit b86c3dc0950ad5d8991e3970d56daeb409650d60
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 14:25:09 2022 -0400

    Fix typos

commit c9be1378c709586f264dd643f92f71b9f1a842b2
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 14:12:21 2022 -0400

    Retry autoconf downloads

commit 62471fd078db7ef66ca8b3118187a2911f2bb3e7
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 13:00:02 2022 -0400

    Fix typo

commit b2344575569bc3bd129ad0ff92b49dc220fb287b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 12:43:08 2022 -0400

    Fix unwindtest on macos

commit fc4e7c4a10dff3c99d7ea9be33d47e6d5f0efda7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 22:13:58 2022 -0400

    Install automake on macos

commit 5a6c94f7d49bcd64c85bde04c2d1f10b59d5797c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 22:04:52 2022 -0400

    Test with gcc and clang on macos 11 and 12.

commit 351318e3bde9ac90c6d5eddbaa7f26ee3e7bcc6c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 15:45:53 2022 -0400

    Switch to 7 char SHA IDs.  Fix windows crlf at git clone time.

commit 2a024088801403ca0c579d20c3decb8dc1453df1
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 12:56:19 2022 -0400

    Use GitHub SHA for rlgl ID

commit e4c5d46b0abaa8a12e97f0e0673e3efdda59fab8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 12:19:57 2022 -0400

    Pass large structs by value

commit 4b79267be359b42e7a4cbf95068abe805aae0061
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 08:11:45 2022 -0400

    outputs vs output

commit 3020ad832144e35d2a42fb8782ddbd3ed69fdbaf
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 08:07:57 2022 -0400

    Use single quotes

commit f969a50aadfdf288797d5492dfb768d9916b9477
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 08:06:53 2022 -0400

    Try {{}}

commit 8df671a35e517f27da78b1b933f19294cfc7224f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 08:05:39 2022 -0400

    Fix compares

commit 6a9bbc85a95a8a6d314452c8c5ef4add61e7b280
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:54:47 2022 -0400

    Show host availability

commit 49a361c35b3d826c02e6dc3f15c86555e62ed933
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:51:34 2022 -0400

    Fix conditionals?

commit d9189beb6e61b20ff4b84fd994d895a29351c422
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:47:46 2022 -0400

    Use boolean values

commit 2bcdcda8eda82cce594d2c821fc6a87069041bcc
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:44:01 2022 -0400

    Try conditional steps

commit d86d55e51fc2d35ff3a829d41c8ec1c83570cd40
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:15:38 2022 -0400

    Tweak test for host availability

commit 5b4d5f2b3a3f3f9fb71ce40e3be00ae6191ffc37
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:11:12 2022 -0400

    Fix triples

commit 02e6a894cbb1d851ec1a31b3277f2414c4a1370f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 06:55:08 2022 -0400

    Add missing paren

commit fcaa8ebbccf2e2e4e0317164b624b683ac95c474
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 06:47:40 2022 -0400

    Unnest quotes

commit f4009ed4f0351c6c8e8f410dac7c558fe9996e7e
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 06:40:00 2022 -0400

    Fix syntax error

commit f92e32cfacdbf82172b06ce13d63eab65f205598
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 06:17:38 2022 -0400

    Try dribbling output during make check

commit ef57e08aa34dc9f55abb493a554a957ca358d931
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 22:35:32 2022 -0400

    Split up build into multiple steps

commit 2480cc48def54eb155429710187452e0d495b773
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 21:09:06 2022 -0400

    Try to fix ssh issues

commit 1105db1ce6cf1f7ab5a254cd04453b0c5e9dad30
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:52:28 2022 -0400

    Try forcing exit upon completion

commit 92a7775150978b3e98b0d47280dd6dd6580dbd07
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:17:01 2022 -0400

    Source .profile on remote host if it exists

commit 8e3ea879a9e538c9237c34ae113babe078565da9
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:07:13 2022 -0400

    Only ignore errors when testing for ssh connectivity.

commit a643db6c1f1bd7594e42a03865b7a9063cfbf1c1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:28:50 2022 -0400

    Don't fail on error

commit 33f1f19a7da022a7d8dba59bb97c28cb4fd6aadf
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:24:06 2022 -0400

    Add POWER hosts

commit 7a300f3d657ee7b94bda5296b3b366b5915a5c79
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:08:47 2022 -0400

    Fix the setting of the host

commit b104dd621f9d2b298ede781f0bd289ce8a0c20ee
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:07:12 2022 -0400

    If a remote host is unavailable, don't fail the build.

commit 7194e11832ad9609bd38c2a1fd4995d749443ee0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:01:47 2022 -0400

    Debug build

commit 6fccf95b4f97335eda1d8bfe2e12fc38bea571d2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 07:57:53 2022 -0400

    Add connection timeouts and retries

commit b4cf3d64b1807667eba7863701b6fcae68c65e68
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 07:32:18 2022 -0400

    Prune warnings from sparc64 linux ld

commit 807283704a4a77187103f9d4d73c9feb75f3c757
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 07:21:02 2022 -0400

    For host triples to distinguish m1 arm64 from others.

commit 4cba6c1858e842ef674ed41b5d79bc981fdfc411
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 11:42:11 2022 -0400

    Don't exit if runtest fails

commit 439dfa1f7f96aec5689d5b28511e0162bc0ae3f9
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:42:46 2022 -0400

    Fix spaces

commit b7d9e3a1a0c3138df513cd5df49a0e14584c7556
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:41:45 2022 -0400

    Run rlgl

commit e85b55c2d30783db52d148f2691c8a3afd3d4ec3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:16:01 2022 -0400

    Fix recursive copy flag

commit 98168532a22615bd2aab0f3bf08e8a5f8abcd375
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:14:56 2022 -0400

    Fix typo

commit 943219e3281d4f9f3ae416ca3bf9fd3482cf8c63
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:13:04 2022 -0400

    Use scp, as rsync isn't available on all hosts

commit 0e912017c96afe6bf6500e90075df6b7366c337a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:04:54 2022 -0400

    Use ssh port numbers and copy dejagnu results back

commit c8fe3d3d440d46b7b465e8d11ea8461a5ae86462
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:58:43 2022 -0400

    Use username

commit 3e75f9554f06bab33e022276d320a301f1b04e44
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:56:13 2022 -0400

    Tighten permissions on key

commit d893eda74196ecc39f1d839b340d0b158fc536eb
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:55:01 2022 -0400

    Disable host key checking

commit da35cf0fb693b6f93a745119c777b3c4aa6d779b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:52:26 2022 -0400

    Add quotes

commit 128d57ab940a3a76658a8c8b4b98cd80fb602d65
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:51:00 2022 -0400

    Remove bad command

commit 5b34bed4ff0a5c1c0257f4d586b868ded173dc67
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:49:45 2022 -0400

    Debug

commit 77b32cb1533e5166bebf2a7cd1465e3a1eef55ad
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:43:41 2022 -0400

    Fix typo

commit 22c1ceb27597d21779c7565c94c444dadc606478
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:42:01 2022 -0400

    Simplify remote tests

commit dde8e81deba0c2ef3edca804f34347bfae0e88bd
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:22:19 2022 -0400

    Revert to old file copy

commit 3cd913c8dafa71c1bb14ca5e1f4208343cc3a194
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:19:08 2022 -0400

    Remove SHA256

commit 3127a25df827f2afa3f6bdfdfceff169fe241fcf
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:13:16 2022 -0400

    Try new fingerprint

commit f095b747423806b44c2ef883ec65a7ce5230fbf7
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:11:47 2022 -0400

    Use correct fingerprint

commit 1f44118157a005661b55f1747cfd15773214e458
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:55:20 2022 -0400

    Ignore fingerprints

commit 8fd73fe61f496a24a4093ba1d195a884f86d547e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:51:33 2022 -0400

    Use rsa fingerprints

commit 09c3908a4279f4c9e2c4a8282efb29c412964119
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:43:23 2022 -0400

    Use host fingerprints

commit caa793a3401b92b0ef2006ab90c4dd30b7ab7d5c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:35:56 2022 -0400

    Try new scp

commit 0cbffe5ef542641170b8cbe588fb703e7410cb13
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:23:35 2022 -0400

    Fix GITHUB_RUN_NUMBER usage

commit 628cc2f675c6df35213d74388aac69c5c165b1f4
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:16:47 2022 -0400

    Fix loongarch64 server port. Try GITHUB_RUN_NUMBER.

commit 9382d7955f80aaa6fc0ca036956fe4e14a0d45b6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:06:11 2022 -0400

    Reference matrix variables properly

commit e081b2cec74253b48a0d09d8a0d309f60e8f82e5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:58:27 2022 -0400

    List cfarm servers explicitly

commit 074e9c79e36e63a9cc8c8fca6c76dd927778dc54
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:46:02 2022 -0400

    Try multiple hosts

commit 6002b2ad639f9125da56834e4b0a1b12fa232c57
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:10:58 2022 -0400

    Use correct version of scp-action

commit a990426c5f4114c85f6cfc190276786ef5c49521
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:09:33 2022 -0400

    Use scp instead of rsync

commit 0fabd777d91e13bb4795d0b9db0b2201f9298904
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:02:34 2022 -0400

    Remove extra debug

commit 1922870fe3baf41991670db81b35c1ab0b482895
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 06:53:52 2022 -0400

    Debug rsync

commit aee50966ca85d777271cd7e14714b916264cb190
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 06:47:49 2022 -0400

    Change remote path

commit 73552c2e732df17c7f9008fecfc448c1d6397cfe
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 20:03:02 2022 -0400

    Tweak

commit 904424fe82bd6d4a498fee84b3f26d55426ff75f
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:58:19 2022 -0400

    Work in actions dir

commit 31c31db079b054270a19cc710f06fbb84e805511
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:48:33 2022 -0400

    Run autogen before copying files to remote server

commit d84f2ea0ea760b8e63f50eb6c3583aeb38d89d0e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:44:34 2022 -0400

    Install autoconf

commit 78beb4aee5386cd4ea14cfa753a778eafcc3ec2d
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:34:50 2022 -0400

    Try more remote testing

commit 16f17cd8418ce2239f8b9b31e5f3b5414298292f
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:16:12 2022 -0400

    Fix ssh

commit badccc01c84ee38f5f443c910ba06b3792029d8b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:11:53 2022 -0400

    Add platform

commit 0eae6af297d9a34bd6adcbf43fbbd27e5feebc53
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:09:43 2022 -0400

    Missing colon

commit ce8cec023499d8da04936e2dc40111f8d6a1783e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:04:39 2022 -0400

    Try cfarm access

commit 9b58d4bad688820fa9bb077c0ec5f5949ac18bd2
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 1 08:57:13 2022 -0400

    GCC_AS_CFI_PSEUDO_OP passes on msvc, although it's not sufficient.

commit e6d05bea0b4c350edaaf215a81f49298f34b10e4
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Thu Sep 1 14:51:15 2022 +0200

    Fix struct padding warning reported by MSVC (#613)
    
    When building on 32-bit x86.

commit 80912f2f09f4c06b2f720ff243d7b9b6795093f9
Author: Clément Chigot <pro@helflym.eu>
Date:   Thu Sep 1 14:47:16 2022 +0200

    Makefile: enable target overridings. (#661)
    
    This patch allows target to provide extra files enabling the
    override of Makefile rules.
    This patch is not needed for libffi itself but only for GCC on AIX. The
    t-aix file which is here empty will be replaced in GCC repository. We cannot
    include GCC version directly here because it has no sense for a standalone
    libffi.
    
    Co-authored-by: Clement <clement.chigot@atos.net>

commit 1fa7d96cdf7bba354f61337854210f060ea56b9f
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 1 08:28:59 2022 -0400

    Don't use cached configure test result

commit bcb42e432b5372b1876e8c8db68837d92d1f94ae
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 1 08:05:01 2022 -0400

    Fix .cfi pseudo-ops test.
    
    The existing tests were failing because the GCC was wrapping the test
    asm in cfi directives, which gas doesn't like.  So now we test if the
    compiler emits them first, and assume that the assembler will accept
    them.  If that doesn't work, then we test if the assembler will accept
    them assuming the compiler doesn't emit them.

commit 0eb91425f355be19939507d4d4d056bdad12c9dd
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 31 20:46:24 2022 -0400

    Change comment style

commit ca76ab3b8551d9e7cee6f533ecd1e89fee70e16a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 31 10:30:26 2022 -0400

    Fix exports for tests

commit 7b1dd8ce10e6bef043088896136105b8aabbb882
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 31 09:49:21 2022 -0400

    Don't -malign-double for x86-32

commit 41d0851fc545ff1ffd8377236d193268c8a10740
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 31 07:36:43 2022 -0400

    Update copyright year

commit 5a4774cd4d90f9ea7e7f9e34b15de29463aba4c4
Author: Xi Ruoyao <xry111@xry111.site>
Date:   Fri Jul 22 05:56:30 2022 +0800

    static trampoline for LoongArch (#723)
    
    For the benefit and technical details of static trampoline, see
    https://github.com/libffi/libffi/pull/624.  As a new architecture, let's
    be "safer" from the start.
    
    The change survived libffi testsuite on loongarch64-linux-gnu.

commit 5264a7c5cd3460465326ebd347559828196dceb1
Author: matoro <matoro@users.noreply.github.com>
Date:   Thu Jul 21 17:54:19 2022 -0400

    Move FFI_TYPE definitions above <ffitarget.h> include (#722)
    
    For powerpc at least, these definitions are referenced in the
    target-specific ffitarget.h.  Discovered in the jffi project.  Should
    close https://github.com/libffi/libffi/issues/637.  Downstream jffi bug
    https://github.com/jnr/jffi/issues/107.  Downstream distro bug
    https://bugs.gentoo.org/827215.
    
    Testing - both libffi and jffi test suites pass with this patch applied,
    at least on ppc64le linux.  I did not see any warnings about
    redefinitions.
    
    Tested versions - libffi 3.4.2, jffi 1.3.6 and 1.3.9.

commit ddc6764386b29449d941b2b18d000f2987a9d848
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 22:04:53 2022 -0400

    Add missing file

commit 2b4728a21f9a36c6567df8dd27fc8a665264019c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:58:51 2022 -0400

    Fix path

commit 37cc25bb25344ee33c5b7ff06c6804d31374a544
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:56:40 2022 -0400

    Install and use autoconf from special dir

commit 2f2eab957d3acbf571c570ab2ccf894e3c85b033
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:53:00 2022 -0400

    Fix autoconf version number

commit 4b1465495c9d6e5ef95bacc38b86483fd910f887
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:51:25 2022 -0400

    Fix wget

commit 398b7534d97b2b642492fbb024e15be3df564da8
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:49:09 2022 -0400

    Fix wget

commit 2c047eb7b108fba1203ba6122e830a7ae17721ca
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:46:54 2022 -0400

    Fix untar

commit 446c092f409bd37c21b5b986c2be8f87a1cb1dec
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:45:32 2022 -0400

    Install autoconf-2.71

commit 5c76ac1ff55c4ed6faa145b395e9a14cdb834708
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:22:01 2022 -0400

    Update autoconf?

commit 4a46f35ba5a4bbb3ea396e1fa836535d338f8930
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:14:30 2022 -0400

    Update configury

commit fc8c8c1e2c31321b38dc079e549bc7748da4159d
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 11:06:00 2022 -0400

    Fix ILP32 for aarch64

commit b5abc4f6478147ce72fa6b2eb95296883d5ef3ef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 10:43:00 2022 -0400

    Remove duplicate macro definition.

commit 280fe78d37f58927b280e2e316a2ae19201f2b83
Author: Xi Ruoyao <xry111@xry111.site>
Date:   Sat Jun 25 18:58:53 2022 +0800

    configure.ac: use grep -E instead of egrep if possible (#720)
    
    Upstream will start to emit a warning if egrep is invoked in the next
    grep release.  Stop invoking it explicitly.  Use AC_PROG_EGREP to try
    "grep -E" first, and fallback to egrep if "grep -E" does not work.  We
    need this fallback for some non-GNU grep implementations (like Solaris).
    
    Url: https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a951562

commit 1f14b3fa92d4442a60233e9596ddec428a985e3c
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Fri Jun 3 02:46:35 2022 +0800

    Ensure that VM_PROT_EXECUTE is set on the trampoline page. (#718)

commit 000ecd01cb534fd8bb593422013a79c8497263ff
Author: Sergei Trofimovich <slyich@gmail.com>
Date:   Thu Jun 2 18:43:53 2022 +0000

    powerpc64: fix build on gcc-12 (assembly requires AltiVec) (#719)
    
    Without the change build fails on powerpc64-gcc-12 as:
    
        src/powerpc/linux64_closure.S: Assembler messages:
        src/powerpc/linux64_closure.S:363: Error: unrecognized opcode: `lvx'
    
    It's a 90205f67 "rs6000: Fix bootstrap (libffi)" patch by
    Segher Boessenkool from gcc upstream repository. It's enough to get
    libffi build on powerpc64.

commit c528d5b45e248f47b5af6f16bfcafc779b196ed1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 29 11:22:38 2022 -0400

    Fix windows arg passing

commit aa2c4141722ec8b8b014b97e049ffa2d140d0c0d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 29 10:28:10 2022 -0400

    64-bit cygwin: fix struct args. Document change.

commit 36b265ae438a364722c98136ba79cb450a48fca3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 29 10:12:30 2022 -0400

    m32r: pass copies of large structs

commit c248764d3391a460cdd31a1cae82281fd6dfbecd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 29 07:27:32 2022 -0400

    Update testsuite Makefile

commit fd1fe195e1d98b65ac3b0735cc0d0df95fc1b27b
Author: Martin Storsjö <martin@martin.st>
Date:   Sun May 29 14:16:49 2022 +0300

    Fix building on aarch64 after e409225b41b60c490a094bb068e639a2364202fd (#716)
    
    The ALIGN_DOWN macro was renamed in 2018 in
    e6eac7863e2bf1a009ea863041b354bdb4af6b67.

commit c1e237b22ee6042e2d4229008acea8f38c3d0109
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 20:46:14 2022 -0400

    Pass large structs by value on the stack

commit 769b7366d2312c7efdfa605cf1fc1156b94ba2e0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 19:59:35 2022 -0400

    Fix for MS x64 ABI

commit faafcb9df9aebdde1415a73d17fe9e943d97d455
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 17:24:43 2022 -0400

    Fix moxie struct passing

commit f55d7ff1a24e9c678dac3397175772a9914c02b0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 14:30:13 2022 -0400

    moxie: structs > 8 go on stack

commit 55f80b026c2ac854086a2770d324fa55188f0f81
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 14:17:53 2022 -0400

    New test cases

commit 72c3192773fe483f6517e343ecc3ea468ce73a4f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 13:53:26 2022 -0400

    Pass copies of large structs on the stack

commit e409225b41b60c490a094bb068e639a2364202fd
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 09:42:13 2022 -0400

    Pass large structs by value for Linux x86_64 and Aarch64.
    
    Aarch patch by Andreas Schwab. https://github.com/libffi/libffi/commit/482b37f00467325e3389bab322525099860dd9aa

commit 01d54435c9f9e22345cb2f7d482fcfb42fd11416
Author: Anthony Green <green@moxielogic.com>
Date:   Tue May 24 21:38:51 2022 -0400

    Mention loongson64

commit f259a6f6deff9bdc7dd998b8b6bdbb4c166b33c3
Author: zhangwenlong <zhangwenlong@loongson.cn>
Date:   Wed May 25 09:31:08 2022 +0800

    Support loongarch64 (#678)
    
    * update config.{guess,sub}
    
    * Support loongarch64
    
    Co-Authored-By: Cheng Lulu <chenglulu@loongson.cn>
    Co-Authored-By: Xi Ruoyao <xry111@mengyan1223.wang>
    Co-Authored-By: Xu Hao
    Co-Authored-By: Zhang Wenlong <zhangwenlong@loongson.cn>
    Co-Authored-By: Pan Xuefeng <panxuefeng@loongson.cn>
    
    Co-authored-by: panxuefeng <panxuefeng@loongson.cn>
    Co-authored-by: Cheng Lulu <chenglulu@loongson.cn>
    Co-authored-by: Xi Ruoyao <xry111@mengyan1223.wang>

commit d02d46607b5ba62510ddab5fa89303dfa09a7853
Author: Anthony Green <green@moxielogic.com>
Date:   Tue May 24 12:28:08 2022 -0400

    Debug cygwin builds

commit 7e93ded9302d7e6e3cc77b39e8eec4b323e63585
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 21:42:52 2022 -0400

    Revert "Don't dereference beyond the last array entry. (#667)" (#715)
    
    This reverts commit 92d77d0e87a5f2a8c9c9b2431ffd264cb664e17a.

commit 432384b6d47087d144d3e947b62c48ddc6e4740b
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Tue May 24 09:06:19 2022 +0800

    Add support for ARM64 as an Apple simulator platform. (#712)

commit 9af445fd70e4d7f2b3bdfc511cc3cc76a6b84c9a
Author: Kevin Bowling <kevin.bowling@kev009.com>
Date:   Mon May 23 18:05:01 2022 -0700

    Upstream FreeBSD riscv patch (#708)
    
    Like 8276f812a99b10d1f2c387dbd6ef2ca4f597c733 commit message:
        > devel/libffi: Fix abort() on ARM related to __clear_cache()
        >
        > The current FreeBSD __clear_cache() implementation does nothing #if
        > __i386__ || __x86_64__ #else abort();
        >
        > cognet@ advises this is an issue for anything !Apple that is using the
        > libcompiler_rt provided by Clang on ARM, and requires upstreaming.
    
    Co-authored-by: Kristof Provost <kp@FreeBSD.org>

commit de95947ae5db07e4589bb16bab30b6c8ba2b3106
Author: Roland Schatz <roland.schatz@oracle.com>
Date:   Tue May 24 03:04:43 2022 +0200

    Fix check for invalid varargs arguments. (#707)

commit 92d77d0e87a5f2a8c9c9b2431ffd264cb664e17a
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 21:03:00 2022 -0400

    Don't dereference beyond the last array entry. (#667)

commit e504f90fe9123d256f6bc556badb25d1d0aa7046
Author: A. Wilcox <AWilcox@Wilcox-Tech.com>
Date:   Mon May 23 18:42:32 2022 -0500

    testsuite/libffi.closures: Fix PowerPC 64 (#709)
    
    -mlong-double-128 is only supported on glibc.
    
    This test still passes on glibc targets, and now passes on musl targets
    as well (which uses 64-bit ldbl).

commit f3e61d497a5ddc3bbe506e0554a0be421f6f0f35
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 09:11:42 2022 -0400

    Remove debug code

commit a36880e710f2ec37c0cc50d436facd7c2d282e7b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 08:35:21 2022 -0400

    Remove stray export command

commit 5f98afe802e189584e5649f53a7dd07280516efd
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 08:11:26 2022 -0400

    Debug cygwin builds

commit abaacbf8cdf80ddd9303fda5d9be4312d52b531c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 07:57:26 2022 -0400

    Debug cygwin tests

commit e770fb76a781c642f185c23e686bf2af0429ce4c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 22 20:43:41 2022 -0400

    Clean up types

commit 2e825e219fa06d308b9a9863d70320606d67490d
Author: YunQiang Su <syq@debian.org>
Date:   Mon May 16 09:47:11 2022 +0800

    MIPS: fix some N32 test failure (#701)
    
    Some go closure and pointer testcase fails.
    These failures is not introduced by the complex support code.

commit 1f1c33753b65a75216770928018e8932168e8908
Author: YunQiang Su <syq@debian.org>
Date:   Mon May 16 09:45:27 2022 +0800

    MIPS: fix O32 softfloat support (#702)

commit 3ac265d5c0e038e324bae29131dbc4bacb4935ea
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Sun May 15 18:43:56 2022 -0700

    x86-64: Always double jump table slot size for CET (#710) (#711)
    
    When CET is enabled, double jump table slot size to add 4 bytes of ENDBR64
    for CET.  Since CET enabled clang doesn't have the LLVM assembler bug:
    
    https://bugs.llvm.org/show_bug.cgi?id=21501
    
    fixed by
    
    commit 04d39260d64e08b8bfb3844109ad43d4055b2e8d
    Author: Rafael Espindola <rafael.espindola@gmail.com>
    Date:   Wed Nov 4 23:50:29 2015 +0000
    
        Simplify .org processing and make it a bit more powerful.
    
    we can use .org to allocate jump table slot size to 16 bytes.

commit e67697c370e8875f28b2bf62fac25edad7558eca
Author: YunQiang Su <syq@debian.org>
Date:   Thu Mar 31 20:44:49 2022 +0800

    MIPS: add Complex support (#698)

commit e3cf8b806c3ca919f95b9d33d6037869a059c035
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Thu Mar 31 14:42:03 2022 +0200

    Allow system to have overlapping mallopt defines (#700)
    
    Which is the case on some OSes, such as QNX.

commit c086cacb8b9665fab0c046fc92959fc8af5239b8
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Thu Mar 31 14:40:59 2022 +0200

    Clean up the QNX ARM bits (#699)
    
    - Add missing include.
    - Use constants instead of magic values.

commit ab1677106605aba1c27665964ff90bea59612ce3
Author: Max Filippov <jcmvbkbc@gmail.com>
Date:   Sun Feb 20 16:01:38 2022 -0800

    Xtensa cleanups and XEA3 support (#677)
    
    * xtensa: clean up stack usage in ffi_trampoline call
    
    Space for outgoing call arguments reserved in the stack frame of the
    function ffi_trampoline overlaps register spill overflow area at the
    top of the frame. In xtensa XEA2 exception architecture the layout of
    overlapping areas is identical so that even if the ffi_trampoline
    registers frame gets spilled the memory contents doesn't change.
    This is not so with the xtensa XEA3 exception architecture, where
    registers a0 - a7 of a different function are spilled in that location.
    
    Reserve spill area for 8 registers to avoid overlapping of the spill
    area with the outgoing call arguments area in the ffi_trampoline.
    
    Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
    
    * xtensa: support xtensa XEA3 exception architecture
    
    XEA3 requires that 32 bytes of register spill area is reserved in all
    functions. Fix ffi_cacheflush entry instruction to satisfy this
    requirement.
    
    Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
    
    * xtensa: maintain stack alignment
    
    xtensa ABI requires stack alignment on 16 byte boundary and passing
    up to 6 arguments in registers. To simplify stack alignment maintenance
    fixed amount of stack space is reserved for arguments passed in
    registers and variable but correctly aligned amount is reserved for the
    remaining arguments. After copying arguments to the stack and loading
    registers the fixed part of the stack reservation is freed.
    
    Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
    
    * xtensa: fix err_bad_abi tests
    
    Check ffi_cif::abi value in the ffi_prep_closure_loc and return
    FFI_BAD_ABI error if it's not one of the supported values.
    
    Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>

commit aa3fce08ba620c50db17215a9f14dd0f1facf741
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Sun Feb 13 21:04:33 2022 +0100

    riscv: extend return types smaller than ffi_arg (#680)
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit 464b4b66e3cf3b5489e730c1466ee1bf825560e0
Author: Dan Horák <dan@danny.cz>
Date:   Mon Jan 31 14:08:09 2022 +0100

    powerpc64: fix handling of homogeneous float128 structs (#689)
    
    If there is a homogeneous struct with float128 members, they should be
    copied to vector register save area. The current code incorrectly copies
    only the value of the first member, not increasing the pointer with each
    iteration. Fix this.

commit b60d4fc7bb4419021bf566e09de55ed1d9b041db
Author: rorth <ro@CeBiTec.Uni-Bielefeld.DE>
Date:   Thu Dec 23 14:32:46 2021 +0100

    src/x86/win64.S: Use #define instead of .macro (#665) (#669)
    
    The Solaris/x86 assembler doesn't support .macro/.endm, so use #define since
    win64.S is passed through cpp anyway.

commit 4fa6239f42ddc7df12e40da9ae25ba715312239c
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Thu Dec 23 14:27:32 2021 +0100

    testsuite/libffi.call: fix mismatching return types (#679)
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit 0f2dd369cd5edcefad29b3fca4e1d08cb34f8f19
Author: Jules Maselbas <54854023+jmaselbas@users.noreply.github.com>
Date:   Wed Sep 22 21:39:56 2021 +0200

    Makefile: Add missing kvx/asm.h to dist headers (#660)
    
    The header kvx/asm.h is required to build libffi and is missing from
    the dist tarball.
    
    Signed-off-by: Jules Maselbas <jmaselbas@kalray.eu>

commit ee1263f7d43bd29b15fc72c4d9520a824e8004df
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 17:46:17 2021 -0400

    Fix 'type'-o

commit 86d5ecc5e84fbbc79fcff6a307310630d9d68549
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 16:58:32 2021 -0400

    Fix struct arg passing

commit 03596285ed36b94bb3e1d8bdebfe58590e2766df
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 10:16:42 2021 -0400

    No more xfail for alpha

commit 4ac18f26ed16588377b1482208212aaa39624e21
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 10:01:40 2021 -0400

    Add alpha CPU

commit 7643c6ee68e376810b4185e5f38e156c97bcc090
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 08:51:35 2021 -0400

    Try to fix ARM QEMU tests

commit a04f57bce057604f38bb7c1bf32b7f671d2b56d5
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 08:47:53 2021 -0400

    Fix m32r testing

commit 339acf3d8f049d296dafac3f482c1b7db29c0bae
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 08:38:18 2021 -0400

    Debug cross-in-containers builds

commit 43e4ad4d7b4bcc87ee447736a1172b2801a47908
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 07:55:59 2021 -0400

    Test passing structs by value

commit 68485e33a413c3d91fbfd7ec270803ae6bd3d3db
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 07:13:35 2021 -0400

    Mention x32 static tramponline fix

commit 07f826fdd4d8a23a190f107f7ec6ad830a4864a0
Author: Harald van Dijk <harald@gigawatt.nl>
Date:   Sun Jul 25 02:39:37 2021 +0100

    Fix trampoline_code_table for x32. (#657)
    
    x32's struct tramp_parm has 32-bit pointers. This change adjusts the
    loads and offsets accordingly.

commit be0b3b6e75d4890fe18ba4164b91387beaebee06
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 21:51:03 2021 -0400

    Fix CHECK

commit 7db17442a6c9f1399065748b7d5b9fbcac203344
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 11:30:01 2021 -0400

    Don't check the whole buffer, just what we printed.

commit 8bcf594749882e9e4966fec2e3d6009d08a554ab
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 11:26:02 2021 -0400

    Fix test case

commit c96b057757446fe4277f30e8423f09851ae5d0fa
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 11:16:39 2021 -0400

    Fix test check

commit 4ed23be8e2a59e438c201ca1ba5affc0b0477b15
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 11:08:01 2021 -0400

    Fix test check

commit eb2447249540ca568b0b464f6107501dcc0f65ab
Author: Hood Chatham <hood@mit.edu>
Date:   Fri Jul 16 14:33:04 2021 +0000

    Use CHECK to assert more things in test suite (#654)
    
    * Use CHECK to assert more things in test suite
    
    * Use snprintf instead of sprintf
    
    * Fix va_struct1 and va_struct3

commit a541fc600f4418441f91073a0834ea47b0989de9
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 08:56:30 2021 -0400

    Update README for next release.

commit b4cf80ab54b6d9d31ef2135036e471388cf026df
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 08:55:02 2021 -0400

    Trigger actions on master branch

commit d1eef904766dbd647de6c240a57dbc98d46e33dd
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 08:29:08 2021 -0400

    Migrate from travis-ci to github actions.

commit f9ea41683444ebe11cfa45b05223899764df28fb
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 21:10:49 2021 -0400

    Update version to 3.4.2

commit 2bdc8e52efb78d939f23efb4f9c515355610bff5
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 19:50:29 2021 -0400

    Version 3.4.1

commit c1d09bf08c2859abb40c476c57ae521d208f92a8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 18:50:31 2021 -0400

    Update version to 3.4.0

commit 1ed0aa73806872f0c31dccf2c689c762239d3353
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 18:45:11 2021 -0400

    Fix warnings

commit 0a2cc2ec2893821f62b36b269da1dbc0442a5617
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 14:59:07 2021 -0400

    Add missing test cases to distribution

commit ee3ef737857e13cc01a15dbef298478d90188805
Author: Hood Chatham <hood@mit.edu>
Date:   Mon Jun 28 11:51:35 2021 -0700

    Add tests for single entry structs (#653)

commit f08c5ace5750f1e1f234f52f4d3d772bb8d276a0
Author: Hood Chatham <hood@mit.edu>
Date:   Mon Jun 28 07:24:19 2021 -0700

    Fix the assertions in cls-24byte (#652)
    
    * Fix the assertions in cls-24byte
    
    * Update print statement too

commit 4557f232926353f5cdec0f2f459e4d59ce8f19e4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 09:53:01 2021 -0400

    3.4.0 release candidate 2

commit cd4428911d5c4d25ce2c24e6728124792124bba2
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Mon Jun 28 04:56:30 2021 -0700

    Add missing FFI_HIDDEN to ffi_tramp_is_present declaration (#651)
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit 9fa94c607852081adce33547bde292fe4313cff7
Author: Hood Chatham <hood@mit.edu>
Date:   Sun Jun 27 11:02:33 2021 -0700

    Print more information when an assertion fails in test suite (#649)

commit 91eaadfb2e4b79d12a45d24002b06563e5905e5d
Author: Hood Chatham <hood@mit.edu>
Date:   Sun Jun 27 09:49:31 2021 -0700

    Fix signature of function pointer in cls_dbls_struct (#648)

commit 132699b95d3ee4d889ea2a80540acf3300987dad
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sun Jun 27 16:50:20 2021 +0100

    configure.ac: add --disable-exec-static-tramp flag (#647)
    
    Some projects like GHC (Glasgow Haskell Compiler) and
    gobject-introspection use `ffi_closure_alloc()` as a way
    to allocate executable memory. exec static tramp
    interferes with it (unclear how exactly yet).
    
    GHC symptom: ffi closure freeing cimplains about unexpected
    trampoline (GHC manually fills one):
    
    ```
    $ ghci
    GHCi, version 8.10.5: https://www.haskell.org/ghc/  :? for help
    ghc: freeHaskellFunctionPtr: not for me, guv! 0x7f0417a1efe8
    ghc: freeHaskellFunctionPtr: not for me, guv! 0x7f0417a1efc8
    ```
    
    gobject-introspection symptom:
    
    ```
    $ meld
    Segmentation fault (core dumped)
    
    $ gdb --args /usr/bin/python3.9 /usr/bin/meld
    (gdb) run
    ...
    Thread 1 "python3.9" received signal SIGSEGV, Segmentation fault.
    0x00007fffe9ac1ae8 in g_callable_info_free_closure (
      callable_info=0x555555d45990, closure=0x7fffe9e70c20)
        at ../gobject-introspection-1.68.0/girepository/girffi.c:428
    428       g_free (wrapper->ffi_closure.cif->arg_types);
    (gdb) bt
      callable_info=0x555555d45990, closure=0x7fffe9e70c20)
        at ../gobject-introspection-1.68.0/girepository/girffi.c:428
      data=0x555555d252d0)
        at ../pygobject-3.40.1/gi/pygi-closure.c:635
    ...
    ```
    
    To ease downstreams narrowing down the actual problem let's
    provide a knob to disable exec static trampolines.
    
    The change for not affect current default.
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 4e07374c2773711902ec12905d5c64d95d22d050
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 27 11:25:06 2021 -0400

    Remove caveat about varargs support

commit 11f9713887e1d8e9bdf861c1555de55aba9fc46c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 27 07:46:12 2021 -0400

    Update contact info

commit f792adb61a27aa2a7d24573b956ce29ebdb82e03
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sat Jun 26 22:26:52 2021 +0100

    configure.ac: allow user to specify READELF (#646)
    
    Before the change with x86_64-pc-linux-gnu cross-compiler
    installed the configure was not able to find cross-readelf:
    
    ```
    $ ./configure --host=x86_64-pc-linux-gnu
    ...
    checking whether .eh_frame section should be read-only... .././configure: line 19540: readelf: command not found
    yes
    ...
    ```
    
    The change uses AC_CHECK_TOOL to automatically seatch for ${host}-readelf,
    readelf. And as a bonus it also allows user to override readelf with
    something like READELF=llvm-readelf.
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 9cf15b3a284d8e79f3673b8743d4157739df5d36
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 26 12:12:06 2021 -0400

    Make 3.4 release candidate 1

commit 1e5dc8de825d03f5493884a45e1edeacda2106c5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 26 12:08:35 2021 -0400

    Add missing file from make dist.  Add missing license info.

commit c0b210c7fd1e5b4a17e9fc839a4cf1d75483d591
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 26 10:55:57 2021 -0400

    Remove test case

commit 87429ce726ead7bb789d194c6d979c5b0c4086e9
Author: Matthew Green <85970515+squidhacks@users.noreply.github.com>
Date:   Sat Jun 26 08:49:45 2021 -0400

    This test includes a closure and must live in the closures test directory. (#645)
    
    Co-authored-by: Matthew Green <squidhacks@users.noreply.github.com>

commit 8d83c7c1fa331b93e58967979c59c38600df1ee9
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Fri Jun 25 19:50:33 2021 -0700

    Make test methods static (#644)

commit becae7397873d6bb85a271b16961f055e71f42a6
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 22 13:01:06 2021 -0400

    Switch from travis-ci.org to travis-ci.com.

commit fa1ef887d4dc5d18696517e32e2ae98310f0040d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 22 08:48:24 2021 -0400

    Avoid undefined behaviour

commit 84bb56914756845371be62e2753041521fd5d261
Author: Tres Finocchiaro <tres.finocchiaro@gmail.com>
Date:   Tue Jun 22 07:33:46 2021 -0400

    Remove libtool-ldflags file from .gitignore (#600)
    
    This is correct.  Thank you!

commit 5651bea284ad0822eafe768e3443c2f4d7da2c8f
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Tue Jun 15 15:19:26 2021 -0400

    2021-06-15  Jakub Jelinek  <jakub@redhat.com>
    
            * src/x86/ffi64.c (classify_argument): For FFI_TYPE_STRUCT set words
            to number of words needed for type->size + byte_offset bytes rather
            than just type->size bytes.  Compute pos before the loop and check
            total size of the structure.
            * testsuite/libffi.call/nested_struct12.c: New test.

commit f56eb85227bbcc7bd81232a338655146385a77ca
Author: DJ Delorie <dj@delorie.com>
Date:   Tue Jun 15 08:50:20 2021 -0400

    Don't stop test on copy failure (#636)
    
    * Don't stop test on copy failure
    
    Static-library tests were failing only because there were
    no DLLs to copy.  This change makes a copy failure not stop
    the build; if a failed copy would otherwise be relevent, the
    later tests would fail anyway.
    
    While there are more clever ways to solve this, a brute force
    fix is sufficient.
    
    * [TEST] Try cygwin64; install more packages explicitly
    
    * use correct cygwin64 directory name
    
    appveyor has cygwin64 pre-installed in /cygwin64, and 32-bit cygwin
    in /cygwin
    
    * More testing - revert VS change, bump travis timeout
    
    * Add -g to update the rest of perl
    
    * Skip execution tests on non-native platforms
    
    Special site.exp that skips the unix_load() command for arm platforms.
    
    Unset TERM to avoid cruft in stdout
    
    Try harder to find the libffi libraries

commit ff059dd96af6ba4daf7bc9ddf22d1d2dbf6a177b
Author: vhankala <81743325+vhankala@users.noreply.github.com>
Date:   Thu Jun 10 18:41:02 2021 +0000

    Fix build on OpenBSD/mips64 (#638)
    
    The build fails on OpenBSD/mips64 because clang 11's integrated
    assembler expects read-only .eh_frame:
    
    ../src/mips/n32.S:585:9: error: changed section flags for .eh_frame, expected: 0x2
            .section .eh_frame,"aw",@progbits
            ^
    
    Use EH_FRAME_FLAGS to get matching flags for the section.

commit e6eb59cde6580607544160f8e7dedc326b4799fd
Author: Cheng Jin <jincheng@ca.ibm.com>
Date:   Wed Jun 9 16:00:10 2021 -0400

    Add struct test to verify a nested float struct (#640)
    
    The test aims to check a nested float struct
    [float, [float,float]] to see whether it works good
    with libffi.
    
    Signed-off-by: Cheng Jin <jincheng@ca.ibm.com>

commit 6eb38863bc0b21854959ebf845f8672c44a99684
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 9 15:45:31 2021 -0400

    Remove reference to old test case

commit ca2235ecfe717ecaed6abbef3a2ca2918a91c60b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 4 18:20:24 2021 -0400

    Revert appveyor changes

commit 243004cc4c8be552503a5d10710ebb252b406064
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 1 23:00:29 2021 -0400

    Update vs version

commit 04c157f49a1b83798c102f3259bc397b9b7f7266
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 1 22:57:47 2021 -0400

    Upgrade to vs2019

commit 03a78e88402fff424426a1968e014be93666b86f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 1 22:53:44 2021 -0400

    Try updating automake

commit 1f1829bd4ce19b58d0354db3bef21cb8402cdf82
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 1 22:34:37 2021 -0400

    Bring in the latest version of perl

commit dd5bd03075149d7cf8441875c1a344e8beb57dde
Author: Martin Storsjö <martin@martin.st>
Date:   Wed Apr 7 05:42:10 2021 +0300

    Fix building for arm windows with mingw toolchains (#631)
    
    * arm: Check _WIN32 instead of _M_ARM or _MSC_VER for detecting windows
    
    This matches what was done for ARM64 in
    c06468fa6674d3783a0edb1d0fae9afc8bc28513.
    
    * arm: Only use armasm source when building with MSVC
    
    When building for windows/arm with clang, the normal gas style .S
    source works fine (if fixed up to support thumb and other windows
    specifics).
    
    This matches what was done for ARM64 in
    c06468fa6674d3783a0edb1d0fae9afc8bc28513.
    
    * arm: Fix sysv.S to work in thumb mode
    
    Align cases in jump tables (adding nop padding to make sure each
    case starts where expected).
    
    Rewrite instructions that add directly to the pc register.
    
    For ffi_closure_ret, factor out a call_epilogue subroutine that
    restores both sp and pc from the stack; the thumb version of ldm
    can't load into the sp register. To avoid excessive ifdeffing, keep
    using call_epilogue in arm mode, but keep the shorter "ldm sp, {sp, pc}"
    epilogue in that case.
    
    * arm: Add win32 version of trampoline to sysv.S
    
    This matches the version of it in sysv_msvc_arm32.S. The calling
    C code expects a specific form of the trampoline on windows; make
    sure these work the same on windows regardless of the form of
    assembly used.
    
    * arm: Avoid optimizing out clearing the thumb bit of ffi_arm_trampoline
    
    We clear the thumb bit of ffi_arm_trampoline with a bitmask before
    memcpying its instructions into closure->tramp.
    
    If the bit isn't cleared, the memcpy of the trampoline function
    copies the wrong instructions.
    
    If the ffi_arm_trampoline symbol is declared as an array of int,
    the compiler can assume that it is aligned to a 4 byte boundary
    and the bitmask operation is a no-op, and optimize it out.
    
    See https://godbolt.org/z/dE3jE1WTz; both Clang and GCC optimize
    out the bitmask as it is, while MSVC doesn't. By declaring the
    trampoline as an array of unsigned char, the bitmask works as
    intended.

commit 95ef857d5c6ed15c6c6ba5f8a5b26c0a38b417ab
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 25 10:43:05 2021 -0400

    Verbose brew update.

commit 78c97c9ff4491e14e78992ffabdd043674c05e15
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 25 09:15:37 2021 -0400

    Move container images to quay.io.

commit 58dfdf6a84b98296ceb2b8b4237d37aa75bb2cd4
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Wed Mar 24 23:19:54 2021 +0000

    testsuite: fix compiler vendor detection on dash as /bin/sh (#594)
    
    In https://bugs.gentoo.org/753299 Paolo Pedroni reported
    a single test failure out of all libffi. Here is the minimal
    reproducer:
    
    ```
    $ ./autogen
    $ CONFIG_SHELL=/bin/dash ./configure --host=x86_64-pc-linux-gnu
    $ make check RUNTESTFLAGS='complex.exp'
    ...
    FAIL: libffi.complex/cls_align_complex_float.c (test for excess errors)
    ```
    
    This happens because under 'dash' shell autoconf generates slightly
    different style of string quotation in `config.log`:
    
    - on bash: `ax_cv_c_compiler_vendor=gnu`
    - on dash: `ax_cv_c_compiler_vendor='gnu'`
    
    To avoid shell quotation parsing the change just embeds
    `compiler_vendor` into `local.exp` at configure time.
    
    Reported-by: Paolo Pedroni
    Bug: https://bugs.gentoo.org/753299
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit eafab2356e8dcf5f01d2bcfa311cafba3b395a7e
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Wed Mar 24 11:38:36 2021 -0700

    arm64e: Pull in pointer authentication code from Apple's arm64e libffi port (#565)
    
    NOTES: This changes the ptrauth support from #548 to match what Apple is
           shipping in its libffi-27 tag.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit 01b56f4b3e89a349228c4ccf55061d847153c8d6
Author: ericLemanissier <ericLemanissier@users.noreply.github.com>
Date:   Wed Mar 24 12:20:27 2021 +0100

    fix windows tests (#595)
    
    * Update .appveyor.yml
    
    * add (debug+release)*(shared+static) CI
    
    * fix libversion

commit 1aeb26714ec30649f5d9de5b4884a4ac46f5f474
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 24 12:16:12 2021 +0100

    x86: Fix thiscall and fastcall stack cleanup behavior (#611)
    
    These are meant to use callee clean-up.

commit e92c81a549924c80d70666ecbe5ed0c2fcd7963a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 24 07:07:53 2021 -0400

    Mention MSVC runtime stack checking improvement

commit f88add14e40de398706c732e578620e8106062c7
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 24 12:04:51 2021 +0100

    x86: Fix MSVC runtime checks interop (#612)
    
    MSVC can add runtime code that checks if a stack frame is mismanaged,
    however our custom assembly deliberately accesses and modifies the parent
    stack frame.  Fortunately we can disable that specific check for the
    function call so do that.
    
    Co-authored-by: Matthew Waters <matthew@centricular.com>

commit aa4dafb159a2e0f74aa39353a1bf23a943f36656
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 23 19:06:08 2021 -0400

    Mention LIBFFI_TMPDIR

commit 70ea259c603e0f84eda766be29d4259f1e8fe5b7
Author: DJ Delorie <dj@delorie.com>
Date:   Tue Mar 23 19:03:45 2021 -0400

    Search $LIBFFI_TMPDIR also (#605)
    
    Most temp file directories need to be hardened against execution, but
    libffi needs execute privileges.  Add a libffi-specific temp directory
    that can be set up by sysadmins as needed with suitable permissions.
    This both ensures that libffi will have a valid temp directory to use
    as well as preventing attempts to access other directories.

commit f58e5ee63263657a7e8f2892d27c012a16facc1a
Author: AndreRH <andre.hentschel@ok.de>
Date:   Tue Mar 23 23:54:00 2021 +0100

    aarch64: Fix closures for win64 (#606)

commit 5865450decd13275b2bde064bd4a0f79bca6dba2
Author: Francisco Boni <boboniboni@gmail.com>
Date:   Tue Mar 23 19:50:09 2021 -0300

    Update ax_cc_maxopt m4 macro (#617)
    
    Keeps libffi's specific changes
    (https://github.com/libffi/libffi/commit/cec3a3a201f17a7f018f25e1a0917bd5206e5a5a#diff-2396a1256ac4b1c6849c931ddb8018bdd984bb2383be21bb819a33b95d8d603f)
    and updates to the latest ax_cc_maxopt.m4
    (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=commit;h=73ee1b396c21062ee8eeb8721ba5323322110fb5):
    
    ax_cc_maxopt.m4: retain setting of CFLAGS by configure
    
    AX_CC_MAXOPT checks whether CFLAGS was set by the user; if so, the user’s
    setting is respected. This behavior is retained, of course.
    
    However, AX_CC_MAXOPT was then setting CFLAGS="". This overrode the default
    setting by configure, which usually includes -g. Hence, if CFLAGS was not
    set by the user, retain the default setting, to preserve the ability to
    debug.
    
    A typical default setting from configure is "-g -O2". This means that
    AX_CC_MAXOPT might typically set CFLAGS to "-g -O2 -O3". This is fine,
    because the later -O3 will override the earlier -O2. (The only assumption is
    that all compilers that AX_CC_MAXOPT knows behave in this sane way.)

commit 8f44384df17b536615caef951a615655a967103f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 23 14:24:54 2021 -0400

    Fix formatting

commit 9d491b5e21ffd7fcf2370d998a4832b755d1c9e9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 23 12:26:37 2021 -0400

    Mention KVX

commit 205cf01b57972fdc8c090fc79192b464dc43fc0d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 23 11:31:08 2021 -0400

    Bug #680.  Don't accept floats or small ints as var args. (#628)
    
    * Bug #680.  Don't accept floats or small ints as var args.
    
    * Bug #680.  Don't accept floats or small ints as var args.
    
    * Bug #680.  Don't accept floats or small ints as var args.

commit d271dbe0a8b230e566fa3385babdc9cc0ca214ea
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Sat Mar 20 06:06:28 2021 -0700

    Add some missing #if conditionals from Apple's code drop (#620)
    
    * arm/aarch64: Add FFI_CLOSURES conditionals where appropriate
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * aarch64: Don't emit the do_closure label when building without FFI_GO_CLOSURES
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit bae695da367b6abd83152f8f1e9b1a8b79794c8d
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Sat Mar 6 00:09:17 2021 +0800

    Add configuration generator for tvOS and watchOS. (#625)

commit 9ba559217bea0803263a9a9a0bafcf9203606f5b
Author: Madhavan T. Venkataraman <75220914+madvenka786@users.noreply.github.com>
Date:   Fri Mar 5 10:07:30 2021 -0600

    Static tramp v5 (#624)
    
    * Static Trampolines
    
    Closure Trampoline Security Issue
    =================================
    
    Currently, the trampoline code used in libffi is not statically defined in
    a source file (except for MACH). The trampoline is either pre-defined
    machine code in a data buffer. Or, it is generated at runtime. In order to
    execute a trampoline, it needs to be placed in a page with executable
    permissions.
    
    Executable data pages are attack surfaces for attackers who may try to
    inject their own code into the page and contrive to have it executed. The
    security settings in a system may prevent various tricks used in user land
    to write code into a page and to have it executed somehow. On such systems,
    libffi trampolines would not be able to run.
    
    Static Trampoline
    =================
    
    To solve this problem, the trampoline code needs to be defined statically
    in a source file, compiled and placed in the text segment so it can be
    mapped and executed naturally without any tricks. However, the trampoline
    needs to be able to access the closure pointer at runtime.
    
    PC-relative data referencing
    ============================
    
    The solution implemented in this patch set uses PC-relative data references.
    The trampoline is mapped in a code page. Adjacent to the code page, a data
    page is mapped that contains the parameters of the trampoline:
    
            - the closure pointer
            - pointer to the ABI handler to jump to
    
    The trampoline code uses an offset relative to its current PC to access its
    data.
    
    Some architectures support PC-relative data references in the ISA itself.
    E.g., X64 supports RIP-relative references. For others, the PC has to
    somehow be loaded into a general purpose register to do PC-relative data
    referencing. To do this, we need to define a get_pc() kind of function and
    call it to load the PC in a desired register.
    
    There are two cases:
    
    1. The call instruction pushes the return address on the stack.
    
       In this case, get_pc() will extract the return address from the stack
       and load it in the desired register and return.
    
    2. The call instruction stores the return address in a designated register.
    
       In this case, get_pc() will copy the return address to the desired
       register and return.
    
    Either way, the PC next to the call instruction is obtained.
    
    Scratch register
    ================
    
    In order to do its job, the trampoline code would need to use a scratch
    register. Depending on the ABI, there may not be a register available for
    scratch. This problem needs to be solved so that all ABIs will work.
    
    The trampoline will save two values on the stack:
    
            - the closure pointer
            - the original value of the scratch register
    
    This is what the stack will look like:
    
            sp before trampoline ------>    --------------------
                                            | closure pointer  |
                                            --------------------
                                            | scratch register |
            sp after trampoline ------->    --------------------
    
    The ABI handler can do the following as needed by the ABI:
    
            - the closure pointer can be loaded in a desired register
    
            - the scratch register can be restored to its original value
    
            - the stack pointer can be restored to its original value
              (the value when the trampoline was invoked)
    
    To do this, I have defined prolog code for each ABI handler. The legacy
    trampoline jumps to the ABI handler directly. But the static trampoline
    defined in this patch jumps tp the prolog code which performs the above
    actions before jumping to the ABI handler.
    
    Trampoline Table
    ================
    
    In order to reduce the trampoline memory footprint, the trampoline code
    would be defined as a code array in the text segment. This array would be
    mapped into the address space of the caller. The mapping would, therefore,
    contain a trampoline table.
    
    Adjacent to the trampoline table mapping, there will be a data mapping that
    contains a parameter table, one parameter block for each trampoline. The
    parameter block will contain:
    
            - a pointer to the closure
            - a pointer to the ABI handler
    
    The static trampoline code would finally look like this:
    
            - Make space on the stack for the closure and the scratch register
              by moving the stack pointer down
            - Store the original value of the scratch register on the stack
            - Using PC-relative reference, get the closure pointer
            - Store the closure pointer on the stack
            - Using PC-relative reference, get the ABI handler pointer
            - Jump to the ABI handler
    
    Mapping size
    ============
    
    The size of the code mapping that contains the trampoline table needs to be
    determined on a per architecture basis. If a particular architecture
    supports multiple base page sizes, then the largest supported base page size
    needs to be chosen. E.g., we choose 16K for ARM64.
    
    Trampoline allocation and free
    ==============================
    
    Static trampolines are allocated in ffi_closure_alloc() and freed in
    ffi_closure_free().
    
    Normally, applications use these functions. But there are some cases out
    there where the user of libffi allocates and manages its own closure
    memory. In such cases, static trampolines cannot be used. These will
    fall back to using legacy trampolines. The user has to make sure that
    the memory is executable.
    
    ffi_closure structure
    =====================
    
    I did not want to make any changes to the size of the closure structure for
    this feature to guarantee compatibility. But the opaque static trampoline
    handle needs to be stored in the closure. I have defined it as follows:
    
    -  char tramp[FFI_TRAMPOLINE_SIZE];
    +  union {
    +    char tramp[FFI_TRAMPOLINE_SIZE];
    +    void *ftramp;
    +  };
    
    If static trampolines are used, then tramp[] is not needed to store a
    dynamic trampoline. That space can be reused to store the handle. Hence,
    the union.
    
    Architecture Support
    ====================
    
    Support has been added for x64, i386, aarch64 and arm. Support for other
    architectures can be added very easily in the future.
    
    OS Support
    ==========
    
    Support has been added for Linux. Support for other OSes can be added very
    easily.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>
    
    * x86: Support for Static Trampolines
    
            - Define the arch-specific initialization function ffi_tramp_arch ()
              that returns trampoline size information to common code.
    
            - Define the trampoline code mapping and data mapping sizes.
    
            - Define the trampoline code table statically. Define two tables,
              actually, one with CET and one without.
    
            - Introduce a tiny prolog for each ABI handling function. The ABI
              handlers addressed are:
    
                    - ffi_closure_unix64
                    - ffi_closure_unix64_sse
                    - ffi_closure_win64
    
              The prolog functions are called:
    
                    - ffi_closure_unix64_alt
                    - ffi_closure_unix64_sse_alt
                    - ffi_closure_win64_alt
    
              The legacy trampoline jumps to the ABI handler. The static
              trampoline jumps to the prolog function. The prolog function uses
              the information provided by the static trampoline, sets things up
              for the ABI handler and then jumps to the ABI handler.
    
            - Call ffi_tramp_set_parms () in ffi_prep_closure_loc () to
              initialize static trampoline parameters.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>
    
    * i386: Support for Static Trampolines
    
            - Define the arch-specific initialization function ffi_tramp_arch ()
              that returns trampoline size information to common code.
    
            - Define the trampoline code table statically. Define two tables,
              actually, one with CET and one without.
    
            - Define the trampoline code table statically.
    
            - Introduce a tiny prolog for each ABI handling function. The ABI
              handlers addressed are:
    
                    - ffi_closure_i386
                    - ffi_closure_STDCALL
                    - ffi_closure_REGISTER
    
              The prolog functions are called:
    
                    - ffi_closure_i386_alt
                    - ffi_closure_STDCALL_alt
                    - ffi_closure_REGISTER_alt
    
              The legacy trampoline jumps to the ABI handler. The static
              trampoline jumps to the prolog function. The prolog function uses
              the information provided by the static trampoline, sets things up
              for the ABI handler and then jumps to the ABI handler.
    
            - Call ffi_tramp_set_parms () in ffi_prep_closure_loc () to
              initialize static trampoline parameters.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>
    
    * arm64: Support for Static Trampolines
    
            - Define the arch-specific initialization function ffi_tramp_arch ()
              that returns trampoline size information to common code.
    
            - Define the trampoline code mapping and data mapping sizes.
    
            - Define the trampoline code table statically.
    
            - Introduce a tiny prolog for each ABI handling function. The ABI
              handlers addressed are:
    
                    - ffi_closure_SYSV
                    - ffi_closure_SYSV_V
    
              The prolog functions are called:
    
                    - ffi_closure_SYSV_alt
                    - ffi_closure_SYSV_V_alt
    
              The legacy trampoline jumps to the ABI handler. The static
              trampoline jumps to the prolog function. The prolog function uses
              the information provided by the static trampoline, sets things up
              for the ABI handler and then jumps to the ABI handler.
    
            - Call ffi_tramp_set_parms () in ffi_prep_closure_loc () to
              initialize static trampoline parameters.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>
    
    * arm: Support for Static Trampolines
    
            - Define the arch-specific initialization function ffi_tramp_arch ()
              that returns trampoline size information to common code.
    
            - Define the trampoline code mapping and data mapping sizes.
    
            - Define the trampoline code table statically.
    
            - Introduce a tiny prolog for each ABI handling function. The ABI
              handlers addressed are:
    
                    - ffi_closure_SYSV
                    - ffi_closure_VFP
    
              The prolog functions are called:
    
                    - ffi_closure_SYSV_alt
                    - ffi_closure_VFP_alt
    
              The legacy trampoline jumps to the ABI handler. The static
              trampoline jumps to the prolog function. The prolog function uses
              the information provided by the static trampoline, sets things up
              for the ABI handler and then jumps to the ABI handler.
    
            - Call ffi_tramp_set_parms () in ffi_prep_closure_loc () to
              initialize static trampoline parameters.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>

commit 5c63b463b87d3c06102a4a7f05f395929d9ea79b
Author: DJ Delorie <dj@delorie.com>
Date:   Wed Dec 2 16:14:27 2020 -0500

    Use memfd_create() (#604)
    
    memfd_create creates a file in a memory-only filesystem that may
    bypass strict security protocols in filesystem-based temporary
    files.

commit cb8474368cdef3207638d047bd6c707ad8fcb339
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Wed Dec 2 12:52:12 2020 -0800

    libffi/x86: Always check __x86_64__ for x32 hosts (#601) (#602)
    
    Since for x86_64-*x32 and x86_64-x32-* hosts, -m32 generates ia32 codes.
    We should always check __x86_64__ for x32 hosts.

commit e70bf987daa7b7b5df2de7579d5c51a888e8bf7d
Author: Tres Finocchiaro <tres.finocchiaro@gmail.com>
Date:   Tue Nov 24 19:13:57 2020 -0500

    Properly quote and resolve msvcc.sh params (#596)

commit 8cc8f446f5aac13e107161dffbc15d1ee1a58878
Author: Mike Hommey <mh@glandium.org>
Date:   Tue Nov 10 20:41:33 2020 +0900

    Allow to build with mingw-clang (#579)
    
    For some reason, compiling sysv.S with mingw-clang fails with:
    ```
    error: invalid variant 'ffi_closure_inner@8'
    ```
    
    This can be fixed (worked around?) by quoting the symbol. This works
    fine with mingw-gcc too.

commit d817d0daa312c58548d7a081aa876027ca103766
Author: Mike Hommey <mh@glandium.org>
Date:   Tue Nov 10 20:39:25 2020 +0900

    Don't use FFI_TYPE_LONGDOUBLE in the jump table in win64*.S (#580)
    
    It may have the same value as FFI_TYPE_DOUBLE per ffi.h, which
    possibly can make things go wrong with .org/ORG.
    
    For instance, GCC complains about "Error: attempt to move .org
    backwards"

commit 56f7df711f70414d4f3663b34e54b122b38bab88
Author: AndreRH <andre.hentschel@ok.de>
Date:   Tue Nov 10 12:27:59 2020 +0100

    aarch64: Allow FFI_WIN64 for winelib (#593)

commit 8111cd06921e80d5d7192ce8d1f64733072fdbcd
Author: Brandon Bergren <git@bdragon.rtk0.net>
Date:   Tue Oct 27 09:07:38 2020 -0500

    Add support for powerpc64le-*-freebsd*. (#581)
    
    Tests pass with no additional changes needed, tested on hardware.

commit 484c1a0d7536be60002473f7bb82223efe139883
Author: Ken <21211439+kencu@users.noreply.github.com>
Date:   Tue Oct 27 07:07:07 2020 -0700

    darwin powerpc: use go closures only if enabled (#583)
    
    SHA: 0ff9419f2e75652426469e256cb7d0748064ad58 added go closures for darwin powerpc AIX, but
    these have not yet been implemented for non-AIX systems
    
    use the go closures only if enabled

commit 032b3cd6f7850f3ebc1269eeab7d1db3ea518d29
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Tue Oct 27 07:06:21 2020 -0700

    Support building x86 and arm64 without FFI_GO_CLOSURES (#586)
    
    * x86: Support building without FFI_GO_CLOSURES
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * arm: Support building without FFI_GO_CLOSURES
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit 93cf288ddd59c7cb203c1aba25de5e5b8f308da6
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Tue Oct 27 07:05:28 2020 -0700

    testsuite: Add a missing include of <inttypes.h> to fix build failure in test suite (#587)
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit c78fcf88ab13a5cc414826a018dd46c3f886adee
Author: petersn <schmidtnielsenpeter@gmail.com>
Date:   Tue Oct 27 07:02:36 2020 -0700

    Removing unnecessary instruction from ffi_call_unix64 (#588)
    
    unix64.S's `ffi_call_unix64` looks like it used to take six parameters,
    where the sixth said the number of SSE register arguments. However,
    currently the function only takes five parameters, and the number of SSE
    register arguments is encoded in the `struct register_args *` passed as
    the first parameter to `ffi_call_unix64`. This change removes an
    instruction that tries to use this missing sixth parameter as the number
    of SSE arguments.
    
    This fix should not change any behavior, nor fix any bugs, because a few
    instructions later the value moved from %r9d into %eax is overwritten by
    the correct value anyway. This change merely makes the code a tad less
    confusing, because currently the assembly moves from a register (r9)
    whose value is never set.

commit 2d86809db6d1d626a9df40c283ec564ac98ff85d
Author: jacobly0 <jacobly0@users.noreply.github.com>
Date:   Tue Oct 27 10:00:03 2020 -0400

    Fix read-only .eh_frame section test when CFLAGS contains -flto. (#590)

commit f4435980fa2da335fe388db431d4a7946a99a2b9
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Oct 27 23:36:21 2020 +1030

    Power10 libffi fixes (#585)
    
    Power10 pc-relative code doesn't use or preserve r2 as a TOC pointer.
    That means calling between pc-relative and TOC using code can't be
    done without intervening linker stubs, and a call from TOC code to
    pc-relative code must have a nop after the bl in order to restore r2.
    
    Now the PowerPC libffi assembly code doesn't use r2 except for the
    implicit use when making calls back to C, ffi_closure_helper_LINUX64
    and ffi_prep_args64.  So changing the assembly to interoperate with
    pc-relative code without stubs is easily done.
    
            * src/powerpc/linux64.S (ffi_call_LINUX64): Don't emit global
            entry when __PCREL__.  Call using @notoc.  Add nops.
            * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Likewise.
            (ffi_go_closure_linux64): Likewise.

commit 407394c0aac2db4a1978a7691035889db9924a01
Author: Tim Gates <tim.gates@iress.com>
Date:   Sun Oct 11 15:07:40 2020 +1100

    docs: fix simple typo, paramters -> parameters (#589)
    
    There is a small typo in src/x86/ffi.c.
    
    Should read `parameters` rather than `paramters`.

commit ead65ca8711aa07efc0453f67136aff82f33c01f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 19 08:34:09 2020 -0400

    Re-enable s390x testing

commit 8276f812a99b10d1f2c387dbd6ef2ca4f597c733
Author: Niclas Zeising <zeising+github@daemonic.se>
Date:   Fri Aug 7 21:05:23 2020 +0200

    Upstream local FreeBSD patches (#567)
    
    * Add support for FreeBSD mips
    
    Add support for FreeBSD mips, this has been a local patch in the FreeBSD
    ports tree for quite some time.
    
    Originally submitted by sson, and committed by sbruno AT FreeBSD DOT org
    See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191909 for
    background details.
    
    Signed-off-by: Niclas Zeising <zeising@daemonic.se>
    
    * Add support for FreeBSD powerpcspe
    
    Add support for powerpcspe on FreeBSD
    This has been in the FreeBSD ports tree for some time.
    Originally submitted by jhibbits AT FreeBSD DOT org.
    
    Signed-off-by: Niclas Zeising <zeising@daemonic.se>
    
    * Fix abort() on FreeBSD arm related to __clear_cache()
    
    This patch has been in the FreeBSD ports tree for a number of years.
    Original commit by koobs AT FreeBSD DOT org
    
    Original commit message:
    > devel/libffi: Fix abort() on ARM related to __clear_cache()
    >
    > The current FreeBSD/ARM __clear_cache() implementation does nothing #if
    > __i386__ || __x86_64__ #else abort();
    >
    > cognet@ advises this is an issue for anything !Apple that is using the
    > libcompiler_rt provided by Clang on ARM, and requires upstreaming.
    
    See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=149167 for some
    background details.
    
    Signed-off-by: Niclas Zeising <zeising@daemonic.se>

commit 392afbaf60663e530bd740da0b5a39ee9f4ba052
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 5 21:38:51 2020 -0400

    Don't test s390.  Travis-ci is broken.

commit e08eb1ced18598a26cd7f14fea05693e89638ed2
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 5 17:59:59 2020 -0400

    Add support for eabisim back.  This was removed upstream.

commit 4661ba7928b49588aec9e6976673208c8cbf0295
Merge: 45875da4 1a4b786d
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Aug 4 11:08:19 2020 -0600

    Merge pull request #576 from froydnj/config-updates
    
    update config.{guess,sub}

commit 1a4b786df34b61af7b6738a2ce7b8d34f5377a71
Author: Nathan Froyd <froydnj@gmail.com>
Date:   Tue Aug 4 12:17:04 2020 -0400

    update config.{guess,sub}
    
    This change is primarily for aarch64 macOS support, since that configuration
    is now properly supported upstream.

commit 45875da4bc71578f6f45471141c14e1743239b7e
Merge: fbd1de85 8e58f88d
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jul 1 09:32:37 2020 -0600

    Merge pull request #570 from jwilk-forks/spelling
    
    aarch64: Fix typo

commit 8e58f88d33eb878b0fbca1433f83bbf872d5d0f3
Author: Jakub Wilk <jwilk@jwilk.net>
Date:   Tue Jun 30 22:59:28 2020 +0200

    aarch64: Fix typo

commit fbd1de85f6532f8a8f61abbd7892f8cb58b233d0
Author: Ma Jun <majun258@linux.alibaba.com>
Date:   Mon Jun 29 08:02:20 2020 -0400

    Add support for csky

commit 0027b072627aa9d3ada71c4374561966064ecd5a
Author: M. Herdiansyah <herdiansyah@netc.eu>
Date:   Thu Jun 11 19:40:24 2020 +0700

    Makefile: increase compatibility with bmake (#551)

commit b7af8f47d5fff2957521dc269637c00b8a4b6c75
Author: Andre Miras <AndreMiras@users.noreply.github.com>
Date:   Thu Jun 11 14:38:59 2020 +0200

    Fixes macOS build on Python 3 (#563)
    
    The error was:
    ```
    Traceback (most recent call last):
      File "_generate-darwin-source-and-headers.py", line 209, in <module>
        generate_source_and_headers(generate_osx=not args.only_ios, generate_ios=not args.only_osx)
      File "_generate-darwin-source-and-headers.py", line 197, in generate_source_and_headers
        for header_name, tag_tuples in platform_headers.iteritems():
    AttributeError: 'collections.defaultdict' object has no attribute 'iteritems'
    ```

commit 5c45c40c04f89cf67ade3fdfa99915ca5409e51a
Author: Kentaro Hayashi <kenhys@gmail.com>
Date:   Thu Jun 11 21:37:41 2020 +0900

    Fix Free software foundation address (#564)
    
    ref. https://www.fsf.org/about/contact/

commit 2e90bb5577ea1fe3bc1716954e790999bc3549f7
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 7 14:31:06 2020 -0400

    Add gcc bug tests back

commit 5e6ca054148dfb4d78e6f79457d48b745f919def
Author: Yann Sionneau <yann@sionneau.net>
Date:   Fri May 1 13:59:11 2020 +0200

    Add support for Kalray KVX architecture (#559)

commit 4f9e20ac51ce13d46fed3c869e1deb6d9bb89444
Author: Andrew Geissler <geissonator@users.noreply.github.com>
Date:   Fri May 1 06:58:30 2020 -0500

    ffi_powerpc.h: fix build failure with powerpc7 (#561)
    
    This is a patch pulled down from the following:
    https://github.com/buildroot/buildroot/blob/78926f610b1411b03464152472fd430012deb9ac/package/libffi/0004-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch
    
    This issue is being hit on OpenBMC code when pulling the latest
    libffi tag and building on a P8 ppc64le machine. I verified this
    patch fixes the issue we are seeing.
    
    Below is the original commit message:
    
    Sicne commit 73dd43afc8a447ba98ea02e9aad4c6898dc77fb0, build on powerpc7
    fails on:
    
    In file included from ../src/powerpc/ffi.c:33:0:
    ../src/powerpc/ffi_powerpc.h:61:9: error: '_Float128' is not supported on this target
     typedef _Float128 float128;
             ^~~~~~~~~
    
    Fix this build failure by checking for __HAVE_FLOAT128 before using
    _Float128, as _Float128 is enabled only on specific conditions, see
    output/host/powerpc64-buildroot-linux-gnu/sysroot/usr/include/bits/floatn.h:
    
     /* Defined to 1 if the current compiler invocation provides a
        floating-point type with the IEEE 754 binary128 format, and this glibc
        includes corresponding *f128 interfaces for it.  */
     #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \
         && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH
     # define __HAVE_FLOAT128 1
     #else
     # define __HAVE_FLOAT128 0
     #endif
    
    Fixes:
     - http://autobuild.buildroot.org/results/5c9dd8fb3b6a128882b6250f197c80232d8a3b53
    
    Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
    Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
    
    Co-authored-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

commit 053b04c525a00abdc25ec646096a44208a1b9423
Author: Martin Storsjö <martin@martin.st>
Date:   Sun Apr 26 05:02:14 2020 +0300

    arm: Fix the clang specific version of the assembly (#556)
    
    Also fix the same error in the comment for the non-clang case.
    That typo there seems to have existed since the code was written
    in that form, in e7f15f60e86 - and when the clang specific codepath
    was added in e3d2812ce43, the typo in the comment made it into the
    actual code.

commit c543849c3767cc0f0a84e3ed7b664a63724ed516
Author: Martin Storsjö <martin@martin.st>
Date:   Sun Apr 26 05:01:03 2020 +0300

    win64_armasm: Fix the spelling of ALIGN (#553)

commit 15d3ea31a53bd0e5b828c90a9f7c4285c58f73e1
Author: Martin Storsjö <martin@martin.st>
Date:   Sun Apr 26 04:59:35 2020 +0300

    Use __builtin_ffs instead of ffs (#554)
    
    USE_BUILTIN_FFS is defined to 1 within __GNUC__, and the __builtin_ffs
    function is available since GCC 3.x at least, while the ffs function
    only exists on some OSes.
    
    This fixes compilation for non-x86 mingw platforms. For x86,
    USE_BUILTIN_FFS is explicitly disabled for windows targets - but
    if USE_BUILTIN_FFS is enabled based on __GNUC__, it should also use
    the builtin which actually is available correspondingly, not dependent
    on the target OS.

commit c06468fa6674d3783a0edb1d0fae9afc8bc28513
Author: Martin Storsjö <martin@martin.st>
Date:   Sun Apr 26 04:58:33 2020 +0300

    Fix building for aarch64 windows with mingw toolchains (#555)
    
    * aarch64: Check _WIN32 instead of _M_ARM64 for detecting windows
    
    This fixes building for aarch64 with mingw toolchains. _M_ARM64 is
    predefined by MSVC, while mingw compilers predefine __aarch64__.
    
    In aarch64 specific code, change checks for _M_ARM64 into checks for
    _WIN32.
    
    In arch independent code, check for
    (defined(_M_ARM64) || defined(__aarch64__)) && defined(_WIN32)
    instead of just _M_ARM64.
    
    In src/closures.c, coalesce checks like
    defined(X86_WIN32) || defined(X86_WIN64) || defined(_M_ARM64)
    into plain defined(_WIN32). Technically, this enables code for
    ARM32 windows where it wasn't, but as far as I can see it, those
    codepaths should be fine for that architecture variant as well.
    
    * aarch64: Only use armasm source when building with MSVC
    
    When building for windows/arm64 with clang, the normal gas style .S
    source works fine. sysv.S and win64_armasm.S seem to be functionally
    equivalent, with only differences being due to assembler syntax.

commit 8c50837f0b58ba5b2bcb1b424a2a4bfa01559fb2
Author: Fangrui Song <i@maskray.me>
Date:   Tue Mar 10 04:36:09 2020 -0700

    Improve read-write .eh_frame check (#546)
    
    llvm-objdump -h does not print BFD SEC_* constants like "READONLY",
    so the check will consider .eh_frame writable.
    clang 11 (since https://reviews.llvm.org/D73999) will error for mismatching section flags.
    
    Use readelf -S and check "WA" instead.

commit 4a6414f2785a60f455c91fdd04f7745fe7fc11e0
Author: Moxie Bot <bot@moxielogic.com>
Date:   Mon Mar 9 21:10:53 2020 -0400

    Mention ARM Pointer Authentication

commit 909b37ffffe2a0bb08947b07508a3a4eed5f36a8
Author: Moxie Bot <bot@moxielogic.com>
Date:   Mon Mar 9 21:10:33 2020 -0400

    Test on aarch64 Linux with clang

commit 4c7bde32ea3af479babdf527d94f241282951cb9
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Tue Mar 10 02:05:42 2020 +0100

    Port to iOS/arm64e (#548)

commit 211e929df4388a6724b0dba4df4e3a1283dc49e9
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 9 12:39:22 2020 -0400

    Try to fix RLGL_KEY nonsense (#547)
    
    * Try to fix RLGL_KEY nonsense
    
    * Hard code policy bound API key
    
    Co-authored-by: Anthony Green <green@moxielogic.com>

commit 8eb2d2b05626b1cbbed100725bc440709499e8a6
Author: Moxie Bot <bot@moxielogic.com>
Date:   Mon Feb 24 10:29:20 2020 -0500

    Revamp PA_LINUX and PA_HPUX target closures to use function descriptors.
    
            2020-02-23  John David Anglin  <danglin@gcc.gnu.org>
    
            * include/ffi.h.in (FFI_CLOSURE_PTR, FFI_RESTORE_PTR): Define.
            * src/closures.c (ffi_closure_alloc): Convert closure pointer
            return by malloc to function pointer.
            (ffi_closure_free): Convert function pointer back to malloc pointer.
            * src/pa/ffi.c (ffi_closure_inner_pa32): Use union to double word
            align return address on stack.  Adjust statements referencing return
            address.  Convert closure argument from function pointer to standard
            closure pointer.
            (ffi_prep_closure_loc): Likewise convert closure argument back to
            closure pointer.  Remove assembler trampolines.  Setup simulated
            function descriptor as on ia64.
            src/pa/ffitarget.h (FFI_TRAMPOLINE_SIZE): Reduce to 12.
            src/pa/hpux32.S (ffi_closure_pa32): Retrieve closure pointer and real
            gp from fake gp value in register %r19.
            src/pa/linux.S (ffi_closure_pa32): Likewise.

commit be815544c1588c6ca70120361c168b196376aa56
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Sun Feb 23 07:45:42 2020 -0800

    Update the ABI version to LIBFFI_BASE_8.0 (#544)
    
    Since x86 and x86-64 FFI_TRAMPOLINE_SIZE have been increased, we must
    bump the ABI version.  This fixes:
    
    https://github.com/libffi/libffi/issues/543

commit d9abffeabe4f38bac12b864146cf974ede814411
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Sat Feb 22 06:32:22 2020 -0800

    x86: Fix ffi_prep_closure_loc (#542)
    
    Since FFI_TRAMPOLINE_SIZE is increased by 4 bytes to add ENDBR32, adjust
    jump displacement by 4 bytes.

commit 624c7a35f7e1d12f917453d6c657cd5947ac57f7
Merge: 4c775d7c 78556561
Author: Moxie Bot <bot@moxielogic.com>
Date:   Fri Feb 21 22:13:14 2020 -0500

    Merge branch 'master' of github.com:/libffi/libffi

commit 4c775d7cd6e914c6a2f66465497106cff360aeb5
Author: Moxie Bot <bot@moxielogic.com>
Date:   Fri Feb 21 22:12:34 2020 -0500

    Update for pending 3.4 release.

commit 7855656148b96c7070ec362d2a73af840025a2b7
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Fri Feb 21 19:08:06 2020 -0800

    x86: Add indirect branch tracking support (#540)
    
    Intel Control-flow Enforcement Technology (CET):
    
    https://software.intel.com/en-us/articles/intel-sdm
    
    contains shadow stack (SHSTK) and indirect branch tracking (IBT).  When
    CET is enabled, ELF object files must be marked with .note.gnu.property
    section.  When Intel CET is enabled, include <cet.h> in assembly codes
    to mark Intel CET support.
    
    Also when IBT is enabled, all indirect branch targets must start with
    ENDBR instruction and notrack prefix can be used to disable IBT on
    indirect branch.  <cet.h> defines _CET_ENDBR which can be used in
    assembly codes for ENDBR instruction.  If <cet.h> isn't included,
    define _CET_ENDBR as empty so that _CET_ENDBR can be used in assembly
    codes.
    
    Trampoline must be enlarged to add ENDBR instruction unconditionally,
    which is NOP on non-CET processors.  This is required regardless if
    libffi is enabled with CET since libffi.so will be marked in legacy
    bitmap, but trampoline won't.  Update library version for larger
    FFI_TRAMPOLINE_SIZE.
    
    This fixed:
    
    https://github.com/libffi/libffi/issues/474
    
    Tested with
    
    $ CC="gcc -Wl,-z,cet-report=error -fcf-protection" CXX="g++ -Wl,-z,cet-report=error -fcf-protection" .../configure
    
    on Linux CET machines in i686, x32 and x86-64 modes.

commit 4d6d2866ae43e55325e8ee96561221804602cd7a
Author: Samuel Holland <samuel@sholland.org>
Date:   Fri Feb 21 21:06:15 2020 -0600

    Update powerpc sysv assembly for ffi_powerpc.h changes (#541)
    
    Some of the flag bits were moved when adding powerpc64 vector support.
    
    Fixes #536

commit b844a9c7f1ca792a1dfb0c09d5dae576178e6729
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 10 10:22:10 2020 -0500

    Update copyright year.

commit 81b5491a4ef46103f2e1be79d368e76dba021ffa
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jan 5 21:37:05 2020 -0500

    Fix script

commit 1e08a45535d929915e14e48af38e45f8c8e4f8de
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jan 5 21:18:23 2020 -0500

    Use rlgl API key on login

commit e50b9ef8b910fa642ef158f6642e60d54d7ad740
Author: Khem Raj <raj.khem@gmail.com>
Date:   Sat Dec 7 02:34:14 2019 -0800

    powerpc64: Use memcpy to help platforms with no __int128. (#534)
    
    Signed-off-by: Khem Raj <raj.khem@gmail.com>

commit f9da75e157ab089363d079a781644c3e6f7db2c3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 07:37:19 2019 -0500

    Remove 32-bit x86 file references to fix macosx builds

commit 76c0cfea70f78586231d7994492396eebfb12d5f
Author: Carl Hurd <carl.m.hurd@gmail.com>
Date:   Fri Nov 29 14:46:11 2019 -0500

    Fixed missed #ifndef for __mips_soft_float (#442)
    
    Thank you!

commit 98da256096c63406ef77f92369ada622c50ce388
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 29 14:29:51 2019 -0500

    Clean up macosx builds

commit 6663047f56c2932a6b10a790f4ac6666dd181326
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 29 07:00:35 2019 -0500

    Address platforms with no __int128.

commit 0069526c5adea9e6268b8a0087a6120c9c5c89fa
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 28 18:58:40 2019 -0500

    Make build errors easier to debug

commit 43887a9108f10124d05c8e0e67f3942cd980cb86
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 28 17:44:51 2019 -0500

    Add powerpc-eabi

commit 29297445da5c2c9437de0e20f3189799a27f0301
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 28 17:31:44 2019 -0500

    Test on powerpc-eabisim

commit 01a75ed76ea7e57f1b7a5c183e2b1e890e6aa0fd
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Thu Nov 28 12:42:41 2019 +0000

    powerpc: fix build failure on power7 and older (#532)
    
    Build failure looks as:
    ```
    libtool: compile:  powerpc-unknown-linux-gnu-gcc \
        -O2 -mcpu=powerpc -mtune=powerpc -pipe ... -c src/powerpc/ffi.c ...
    In file included from src/powerpc/ffi.c:33:
    src/powerpc/ffi_powerpc.h:65:9: error: '__int128' is not supported on this target
       65 | typedef __int128 float128;
          |         ^~~~~~~~
    ```
    
    The fix avoids using __int128 in favour of aligned char[16].
    
    Closes: https://github.com/libffi/libffi/issues/531
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 1ec01ea81cf18e12748082f48f7c279a3fdd505d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 22:47:48 2019 -0500

    Run aarch64-linux-gnu tests on travi-ci directly

commit 66022e52ec0409f9170eb0884c6d0bdd048bc04e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 16:52:14 2019 -0500

    Fixes for ppc64le and s390x travis testing

commit 932e5bb68a603885e4bd9cf1bd5146542f736ccf
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 16:26:14 2019 -0500

    Force the use of docker

commit 803db14c5a0aeb52ee521fe4fe4a7919926373de
Merge: 86be66c8 fb914c36
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 16:10:22 2019 -0500

    Merge branch 'master' of github.com:libffi/libffi

commit 86be66c8f608a84caea2ef724698093d2da2e5e2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 16:09:44 2019 -0500

    Try travis-ci's new ppc64le and s390x support

commit fb914c366fabb29ac373050ca0bfa4d9c1fef149
Author: Panayotis <panayotis@panayotis.com>
Date:   Sun Nov 24 18:25:13 2019 +0200

    disable obsolete 32-bit targets in macOS (#511)

commit fd99c95f90f85963f5ec88630c0428a8132012db
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 11:11:25 2019 -0500

    Minor clean-up

commit 5dcb741f1544c5e18c9dbf96aeb8b61cc556a616
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 10:24:58 2019 -0500

    Move nested_struct3 test to closures directory

commit 1aca33301a791f503d943f5e3abe2c720296eb8f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 09:42:04 2019 -0500

    Add missing closing brace

commit d996cb283cf373936498defa902be040ec20455e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 09:00:14 2019 -0500

    Version 3.3

commit c72b82f465148b89f118ee73f8956dafdbac9b65
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 08:48:53 2019 -0500

    Remove junk file from dist

commit 642d40ee6ae9a779b3c5ad930785d4b33cf94029
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 07:49:58 2019 -0500

    Account for moved test files

commit 049da08a22b0ca6d63d2be6c209da5ac1335365c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 07:44:26 2019 -0500

    Add dejagnu directives accidentally removed

commit 36730f5d87c2a432e1b3bf1a0129fedbf4b0a488
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 19:49:38 2019 -0500

    Move closure test to closure directory

commit c88c0e92a9fbb4e69513394682c61aa848a035cc
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 19:27:34 2019 -0500

    More more closure tests to the closure test directory

commit a37cc1755cc276b2b9e601b9b112919f8c882a2e
Merge: 332a539e 247a5e78
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 18:55:36 2019 -0500

    Merge branch 'master' of github.com:libffi/libffi

commit 332a539e88d26a0524c10a39283a3099d071ca10
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 18:54:30 2019 -0500

    Move closure tests so we can easily XFAIL them for some targets

commit 1761a10645dadc0840bf1ff3a4998f9a342e8cad
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 18:53:09 2019 -0500

    Remove gccbug detection.  GCC is good now.

commit 247a5e7878379b7af33338d51898d7fb9e82e686
Author: Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
Date:   Fri Nov 22 20:17:58 2019 +0100

    Capture x86-windows host like x86_64-windows (#529)

commit 8e3935fa761d3e6f19ccf5e6733fd40dee637d94
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 12:42:26 2019 -0500

    Manual clean-ups, and include the PDF in the source distribution.

commit d01088a5194ff1a2250e7dbee04a9a167b582db7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 21 05:36:06 2019 -0500

    Mention more major port contributors

commit 970b7fce4f804df57ec582a0220c22eaeccc239a
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 21 05:04:54 2019 -0500

    Update autoconf-archive m4 macros

commit 34a3a661b80c0fa7817c0654ae9fd0686d3b8cd2
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 21 04:59:39 2019 -0500

    Fix formatting of README.

commit 91a7fbe94e3884536cf2eb8e644bc79d6b19c80e
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 20 07:16:41 2019 -0500

    Fix or1k lack-of-g++ checking in testsuite

commit 31543c799a224ef446cef19a2372b054ecad3822
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 20 06:15:55 2019 -0500

    Add work-around for users who manage their own closure memory
    
    As suggested by DJ

commit bd3a4687c0743076f420dee2a02075fd64fa547e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 19 17:14:23 2019 -0500

    No C++ for or1k-unknown-elf

commit d6e4f96b482690e6cdaf67a70bb33d1bfe0acd15
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 19 13:36:49 2019 -0500

    No C++ for or1k

commit 497018686d4df0012ea7bf1a4ab41b918b5e65bc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 19 10:07:16 2019 -0500

    Disable type warnings for or1k.

commit 262cf74fd4003a928ca73e96ef8698546e535c46
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 19 10:06:57 2019 -0500

    No c++ for or1k-elf

commit 54fc80dfd8d608ec718cade762c358b8fd819f38
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 15:20:00 2019 -0500

    Fake TRAVIS_BUILD_DIR

commit 6f734f8a5ff13d106f81741c11c7cb2551706c7f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 15:13:16 2019 -0500

    Adapt for new old ChangeLog file

commit 27d31130cabfe82683fc0e3e82247fd522f45607
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 15:06:51 2019 -0500

    Fix DEJAGNU variable

commit da1358816e7b02e6f8431e4df336d0934bcabd4c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 14:54:14 2019 -0500

    Set vars

commit 9a394c24951f3fc5cfbd0ff268278a7b45afc77e
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 14:45:29 2019 -0500

    Remove verbosity

commit 14bfbec0fd312001f7922ee6100cbc3155ae585b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 14:40:30 2019 -0500

    Pull before running

commit dfa60e5eb44482d45b8c79b815e6b6789e62ce18
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 14:02:33 2019 -0500

    Fix cross builds for or1k

commit a8223271a3d7ff1e8a1553c2a5ed9b4e1a24a774
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:59:10 2019 -0500

    More cross build debugging

commit 8c9cf44cb2a2d46ddcb148508fb5350438b4a62b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:47:42 2019 -0500

    Set path to simulator. Add debugging output.

commit 581048f91e9e25e3b17a2906edd8840f35999918
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:17:27 2019 -0500

    Be specific when building CI container images

commit bbea6394f9f27de68aac037abb264151d6de9f64
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:06:26 2019 -0500

    Capture more or1k hosts

commit 97e3b1fe1a0fbdb43bf28fe6198cb26eaa719c93
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:02:44 2019 -0500

    Add test support for or1k. Fix yaml typo.

commit c88f4d2677d4dc6659a1aa6418e636f8fcf9bd9b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 12:25:51 2019 -0500

    Fix typo for m32r and bfin builds

commit 93c203b347ea7d110355e12f832725f755e10eff
Merge: d087b595 73dd43af
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 06:35:19 2019 -0500

    Merge branch 'master' of github.com:libffi/libffi

commit d087b595637ebb795c0cec1ff0c4409befb486b7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 06:34:42 2019 -0500

    Build/test for m32r-elf and bfin-elf

commit b6804d16453890b78844b1b3c1acf16af98cadb8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 17 09:19:14 2019 -0500

    Mention binary128 long double support for Power

commit 73dd43afc8a447ba98ea02e9aad4c6898dc77fb0
Author: Samuel Holland <samuel@sholland.org>
Date:   Sun Nov 17 07:22:25 2019 -0600

    IEEE754 binary128 long double support for PowerPC64 (#526)
    
    * powerpc: Adjust flags to make room for vector types
    
    * powerpc64 ELFv2 IEEE128 long double support

commit b58bd77236e7d41fc04b4be7edd1c6728626c99b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 15 11:18:59 2019 -0500

    Re-enable mingw32 tests.

commit 6f221e8269aa16f6b5eec41cfd1d7d90a9fbea0c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 15 11:06:17 2019 -0500

    Disable wine builds.

commit 09dc0a71a44c95ee0d2f47de94b6b59534c2ce24
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 15 10:19:00 2019 -0500

    Stretch out timeout for test

commit 28a7cc464c21b4955fba28cc55a6f095ddf5838b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 15 06:07:51 2019 -0500

    Consolidate all of the old ChangeLog files into ChangeLog.old.

commit 86d3d3767a40fe1cae10c419a913dd97e7e6cd23
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 10:07:00 2019 -0500

    Don't build aarch64-linux-gnu

commit db198a19375858879dbcc51a443c193efa0b6c0a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 10:05:36 2019 -0500

    Extend timeout for builds.

commit 54af0256a00a40b2218950f93e5415c60f675714
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 09:15:05 2019 -0500

    Platform test tweaks

commit 3a7580da73b7f16f275277316d00e3497cbb5a8c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 07:59:18 2019 -0500

    Mark java raw APIs as deprecated.

commit cda60c1a8aec070a7a822c047d89d0f18cf7c5fc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:51:44 2019 -0500

    Disable mips64 tests.  Fix log grabbing.

commit a34254bdc1dee2857b759a22e657f92aadfa85dc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:37:26 2019 -0500

    Re-add wine based testing

commit 9bd3a9742c04d2fac489f236163d7e7fbb1b7568
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:35:40 2019 -0500

    Add wine-sim.exp for wine-based testing

commit de6df6dce6420d4643598c228b72da4e455a0da7
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:32:46 2019 -0500

    Fix log file URL extraction.  Grab rlgl cli for OSX

commit c8986e871f82b497493d28c36be1a755c2ea6b8d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:01:43 2019 -0500

    Fix log name extraction

commit 6630764d244aeb3bc0797d0c3c7ccc79084061a8
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 22:56:37 2019 -0500

    Account for shorter ==LOGFILE== string

commit aa975ec3e4ac07bd7dacec18f1c8282baeb7c398
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 22:35:47 2019 -0500

    Fix grep matcher

commit 6dd88bc5b3f3d3d975409b7336f4127ae18da4b3
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 18:44:27 2019 -0500

    Debug

commit 7e318cf50d8c481957b3be76e508054c70cbdf9b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 17:55:35 2019 -0500

    Pull test logs from cfarm

commit 5123e9cf0193031bdc580cb221427cbd29ba3677
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 09:21:57 2019 -0500

    Use rlgl for cfarm test results

commit 486f88f985affa215a9daaadcdc703c8baea9020
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 09:20:21 2019 -0500

    Use rlgl for cross builds.

commit 042c6671b0456d17af24d61b79cbd3f9261c3f2b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 09:14:20 2019 -0500

    Always exit build container successfully. Don't test mingw.

commit 82f7f80aa9ac3cd753bcb6d2b88cc930aee72bcc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 08:58:52 2019 -0500

    Run rlgl outside of the build container.

commit 5b297e036e61ad1ecac9c8a3e57895737c55feb7
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 05:51:09 2019 -0500

    Don't bother dumping logs.  Use rlgl instead.

commit 2a8d88d92d56747101078c5592ab2473e6c5cb29
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 11 21:24:58 2019 -0500

    Fix rlgl usage

commit 3c2b810e99a10f97d1eb6ba485eb09bfdb158084
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 11 21:11:59 2019 -0500

    Test rlgl

commit 2cc11720be0c4d3bbe906be5a4aad3b2dc167072
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 11 16:19:45 2019 -0500

    Debug in-container builds

commit 0de0c6a28006902c203e8dc6629cd9ef35d61e09
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 10 08:20:46 2019 -0500

    Build both iOS and Macosx

commit 4e3e0586efbbc7828c15fb48e49401840beefcdd
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 12:35:27 2019 -0500

    Fix tpyo

commit f764f278160831f7e4d8ee8a48d18f5a7937f742
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 12:17:29 2019 -0500

    Change s390x options

commit 188de63c597f23b0ccdb953b076c8cb0711fbcf0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 12:03:19 2019 -0500

    Mark xfail for m68k and alpha.

commit 0da221f8094ec504d91b5f88c74e98b8b9aa9eda
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 12:03:01 2019 -0500

    Clean up.  Debug s390x cpu support.

commit 7e0fbf41934020c9ff76816fde5000482c7e6a6c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:50:08 2019 -0500

    Try coldfire for m68k builds

commit 6a9fa770a436bbb71dbe8311e75123353e6836cc
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:37:25 2019 -0500

    Add GCC_OPTIONS flag

commit eebcbb1113742df7d41fc3d39eca970a026ad1d1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:26:53 2019 -0500

    Compile m68k target for m5208

commit 08cb33ff5824b2ea24b2b62841cca1934a27f36f
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:15:13 2019 -0500

    Dump supported CPUs

commit 16c935000d459b1aba9e1f7b48e2c1d7dadc8cf1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:00:09 2019 -0500

    Fix shell script

commit 588e87461fe48441806be4bb5654f058e1c37649
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 10:56:40 2019 -0500

    Print debug output. Use podman when available.

commit 04d14a66ff807a0ac2578ce886ef338aa2066b4d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 09:23:10 2019 -0500

    Set QEMU_CPU within the build containers

commit 28d9c019dbbf6dea1ed127e1a7de829cece86639
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 07:36:11 2019 -0500

    Set QEMU_CPU for m68k

commit 75464caf658f176848db6f48325c5067cdf94a9b
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 22:02:11 2019 -0500

    Add alpha and m68k testing

commit 259c497a2f326cc89344766e106cf73e62485a2a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 11:31:17 2019 -0500

    Sett CC and CXX for cross builds

commit d23d3959fdb764984cfb888c5d6aed910926dd5f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 11:21:46 2019 -0500

    autogen before cross building

commit a6dc8ef270c1f022720aedadb6b0d2678d1bc39e
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 11:10:59 2019 -0500

    Fix typo. Don't double test.

commit 136a235d3f36408628c0459d8740546acad0ca5a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 10:51:33 2019 -0500

    Use the right cross build container image

commit 92f5309def05c66e6c5034c10d620d6fbc7a1018
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 10:49:04 2019 -0500

    Try s390x and sh4 cross builds/tests

commit d4a28fee720c8f389b138b3f7726157fbcb7eaaf
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 06:47:05 2019 -0500

    Revert to older test cross compilers

commit 0fb9ee21e68ca3e70cf236a63ba00b5ca32031ff
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 06:44:19 2019 -0500

    Use older test compiler.  Enable s390x testing.

commit 36d281ab70daf7dcf890df9c3f5bdd76f665bb68
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 06:30:52 2019 -0500

    Test cross-builds for hppa-linux-gnu

commit c95cc4b354f24dbbf5776eb297fa036bcbfed252
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 06:30:20 2019 -0500

    Reference FFI_BUILDING_DLL

commit 88a76477debe83ed6a75f96394853c891fb1dac4
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 3 06:28:51 2019 -0500

    rc2. hack as per: https://github.com/travis-ci/travis-ci/issues/6934

commit 45ba4aefed15be24fdbaaffec805fb02b1343e0f
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 19:07:04 2019 -0400

    Add sparc64-linux-gnu testing back

commit a26323b7e0824f0becaeaffc8d3b700dc09f741c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 15:32:48 2019 -0400

    Don't build sparc.  Build mips.

commit f325324818a6aaa9e8a75782d75c412872e6b21c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 14:35:43 2019 -0400

    Test mips64el-linux-gnu

commit 39bad2f396de7885c9569144b5bb6e8a639ac011
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 12:33:22 2019 -0400

    Don't run autogen.sh all the time.

commit 82719cbba06c2fc527df156d728341867d86f82c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 12:23:11 2019 -0400

    Test sparc64-linux-gnu on travis

commit 0348d0e4fa585d9a3d9762132a3eee94f918fe3b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 10:53:37 2019 -0400

    Try new cfarm build for power

commit 290bc3164bb0e0b3fb912c457b49e61f9a728eef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 26 10:13:20 2019 -0400

    Add make_sunver.pl to distribution.

commit a8efc2f7897b439fdf2144329d35fea820498dc7
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Sat Oct 26 14:57:05 2019 +0200

    Fix FFI_STDCALL ABI (#514)
    
    Even for a stdcall function, the stack alignment is still the
    responsibility of the caller.  Remember the original, not stack-aligned
    argument size, but align when setting up a stack frame.  In
    ffi_closure_inner, return the true argument size, so that
    ffi_[go_]closure_STDCALL doesn't adjust too much.

commit ca112537df7b9cdbccad7541aa3cb43b2a2dac9a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 26 07:26:30 2019 -0400

    Add missing build script, make_sunver.pl.

commit 52b066f04fdd81c1037e1cb714a07a2a352bcf9b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 07:03:43 2019 -0400

    Update versions to 3.3-rc1

commit 9b10df3be2d8f81876b7cc90ee5d8833ccdf6b34
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 06:41:11 2019 -0400

    Remove some debugging output

commit ec042885cfa5a9450bfcc87152a41529d26545de
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 06:39:00 2019 -0400

    Don't test ppc64le with buggy qemu.

commit 90fb897839bb7006a2f751d283e3d23b3bfec1ea
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 06:24:14 2019 -0400

    Strip build status from README.md at 'make dist' time.

commit 1d6059446fb986d2de933f7ccf6fe38bcdf0c76c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 05:25:11 2019 -0400

    Add missing dist files.

commit 825b2a359468af8bf3570a5a0695e8b805c5446f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 16 16:05:46 2019 -0400

    Test on arm32v7-linux-gnu, ppc64le-linux-gnu and aarch64-linux-gnu.
    
    Use docker images and qemu to test libffi for non-x86 architectures on
    travis-ci.
    Use the LIBFFI_TEST_OPTIMIZATION environment variable to
    force specific optimization levels at test time.

commit d2a4095af68f4530571bc3fa613dd7f5e5b815a3
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 14 06:46:52 2019 -0400

    Fix comments.

commit 058aa4130445b4ef3c2f77f796c33506873031ca
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 14 05:47:07 2019 -0400

    Update copyright year

commit c4f61240ab19401bd86c0dfb271e243e8159abb4
Author: zhanhb <6323014+zhanhb@users.noreply.github.com>
Date:   Wed Oct 9 18:59:32 2019 +0800

    Add long double test (#492)
    
    Required to fix build error on macos with gcc-9

commit 09f9d856112f2f105337e95e32ba9e2da63f65ae
Author: pichikaudaykiran <51439150+pichikaudaykiran@users.noreply.github.com>
Date:   Wed Oct 9 16:26:06 2019 +0530

    Making the change to correct the comment when SUN (#521)
    
    and GCC are used together

commit 55c22092dc54e706a64af3a49ae9d5471a9e8317
Author: pnallan <46887249+pnallan@users.noreply.github.com>
Date:   Tue Oct 8 18:46:47 2019 +0530

    handle compilation warnings with ftruncate API (#508)
    
    * fix me: avoid warning while handle ftruncate API
    
    Signed-off-by: Prasad Nallani <prasad.nallani@intel.com>
    
    * Update closures.c

commit e5f0eb1552f222eb2630e40ee348b090d56412a3
Author: John Ericson <git@JohnEricson.me>
Date:   Tue Oct 8 06:58:52 2019 -0400

    Clean up line endings (#509)
    
    The CLRF visual studio files can be kept that way, but recognized as
    text. The assembly file can be converted to LF.

commit ea9b6639c69cbffeacd1ce0c1953c1997cf29d2e
Author: Samuel Holland <samuel@sholland.org>
Date:   Tue Oct 8 05:57:28 2019 -0500

    PowerPC bugfixes (#520)
    
    * powerpc: Silence warnings about unused labels
    
    * powerpc: Fix a couple of comments
    
    * powerpc: Fix alignment after float structs
    
    * powerpc: Don't pad rvalues copied from FP regs
    
    * powerpc: Add missing check in struct alignment
    
    * powerpc: Support homogeneous long double structs

commit 25cf9cc4a5ce4a272252de3f681d60dafd838ceb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 8 06:24:55 2019 -0400

    Use https for moxie toolchain repo

commit c2a6859012d928b67a83619bd5087674a96b9254
Author: Paul Monson <paulmon@users.noreply.github.com>
Date:   Wed Aug 7 11:57:45 2019 -0700

    fix mingw build and crashing bugs for Python Windows ARM64 (#496)
    
    * fix mingw build and crashing bugs for Python Windows ARM64
    
    * Fix issues found in PR review

commit e0b4f84fb71c6760068c9d1306e77c9382e76d8d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 26 06:18:48 2019 -0400

    Clear the apt cache

commit 68668fe4f22dea7b829fb84b724f5a74091f22f2
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 26 06:01:15 2019 -0400

    More debugging output

commit 1d7635d18ae4aebe4ec1cd129b0b4f71b685131e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 25 23:39:52 2019 -0400

    Debug moxie builds in travis

commit d856743e6b02fcb5911491204131e277a7a4e10b
Author: ossdev07 <39188636+ossdev07@users.noreply.github.com>
Date:   Wed Jun 26 07:31:22 2019 +0530

     libffi: added ARM64 support for Windows (#486)
    
    *  libffi: added ARM64 support for Windows
    
        1. ported sysv.S to win64_armasm.S for armasm64 assembler
        2. added msvc_build folder for visual studio solution
        3. updated README.md for the same
        4. MSVC solution created with the changes, and below test suites are tested
           with test script written in python.
    
           libffi.bhaible
           libffi.call
        5. Basic functionality of above test suites are getting passed
    
    Signed-off-by: ossdev07 <ossdev@puresoftware.com>
    
    * Update README.md

commit 80d07104c33045ea34a4d5185600495dc7461a12
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 28 07:36:24 2019 -0400

    uuencode compressed log files for travis

commit fadf1eb530713fde0be9774d926bc8202c97e379
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sat Apr 27 20:53:29 2019 +0100

    hppa: avoid TEXTREL in .eh_frame section (#447)
    
    Before the change hand-crafted .eh_frame section contained
    ABS relocation and caused TEXTREL tag to be emitted:
    
    ```
    $ ./configure --host=hppa2.0-unknown-linux-gnu LDFLAGS=-Wl,-z,text
    $ make
    ...
    /usr/libexec/gcc/hppa2.0-unknown-linux-gnu/ld:
        read-only segment has dynamic relocations.
    ```
    
    Link failure is caused by absolute address of FDEs
    encoded into .eh_frame entries.
    
    Fixed TEXTREL by using pcrel (instead of ABS) encoding
    for absolute addresses (__PIC__ code) by adding augmentation
    information ("zR" CIE type).
    
    All tests still pass on hppa2.0. The specific tests that still pass
    and exercise this code path:
        testsuite/libffi.call/unwindtest.cc
        testsuite/libffi.call/unwindtest_ffi_call.cc
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 06bf1a9deaa781b711c4d3718561e7faf303a842
Author: driver1998 <driver1998.ms@outlook.com>
Date:   Sun Apr 28 03:21:44 2019 +0800

    fix x86/x64 MSVC build (#487)

commit db5706ff285c476aa3c0f811ff2b188319ac3ebe
Author: Paul Monson <paulmon@users.noreply.github.com>
Date:   Fri Apr 26 04:58:58 2019 -0700

    add support for 32-bit ARM on Windows (#477)
    
    * add support for 32-bit ARM on Windows
    
    * fix mismatched brace in appveyor.yml
    
    * remove arm platform from appveyor.yml for now
    
    * fix arm build
    
    * fix typo
    
    * fix assembler names
    
    * try Visual Studio 2017
    
    * add windows arm32 to .appveyor.yml
    
    * update README.md

commit d1e9b4b96cc8d237c3532cf83da0d4b99d19abb5
Merge: 05a17964 a7d6396f
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Apr 9 14:00:10 2019 -0600

    Merge pull request #482 from sharkcz/aarch64
    
    fix check for Linux/aarch64

commit a7d6396f06d5e1a726f24b746b509514f466380f
Author: Dan Horák <dan@danny.cz>
Date:   Fri Mar 29 14:19:20 2019 +0100

    fix check for Linux/aarch64
    
    fixes #473

commit 05a1796419f68267250c0b8ae7138da36ab60b01
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Tue Feb 19 04:11:28 2019 -0800

    Cleanup symbol exports on darwin and add architecture preprocessor checks to assist in building fat binaries (eg: i386+x86_64 on macOS or arm+aarch64 on iOS) (#450)
    
    * x86: Ensure _efi64 suffixed symbols are not exported
    
    * x86: Ensure we do not export ffi_prep_cif_machdep
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * x86: Ensure we don't export ffi_call_win64, ffi_closure_win64, or ffi_go_closure_win64
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * closures: Silence a semantic warning
    
    libffi/src/closures.c:175:23: This function declaration is not a prototype
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * aarch64: Ensure we don't export ffi_prep_cif_machdep
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * arm: Ensure we don't export ffi_prep_cif_machdep
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * aarch64, arm, x86: Add architecture preprocessor checks to support easier fat builds (eg: iOS)
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * x86: Silence some static analysis warnings
    
    libffi/src/x86/ffi64.c:286:21: The left operand of '!=' is a garbage value due to array index out of bounds
    libffi/src/x86/ffi64.c:297:22: The left operand of '!=' is a garbage value due to array index out of bounds
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * aarch: Use FFI_HIDDEN rather than .hidden
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * ffi.h: Don't advertise ffi_java_rvalue_to_raw, ffi_prep_java_raw_closure, and ffi_prep_java_raw_closure_loc when FFI_NATIVE_RAW_API is 0
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit 3ec522bc1c1c5a7fb66b85d4fb6a0fe80581d597
Author: dabrain34 <scerveau@gmail.com>
Date:   Tue Feb 19 13:09:09 2019 +0100

    Fix cfi checks for old compiler (#453)
    
    cfi_sections can be unsupported when cfi_startproc
    and cfi_endproc are.

commit e1118af50599314a2cbac3eb51a81896e8e21d0c
Author: Paul Monson <paulmon@users.noreply.github.com>
Date:   Tue Feb 19 03:58:25 2019 -0800

    changes for win32 on windows (#468)

commit 44a6c28545186d78642487927952844156fc7ab5
Author: Florian Weimer <fw@deneb.enyo.de>
Date:   Tue Feb 19 12:55:11 2019 +0100

    aarch64: Flush code mapping in addition to data mapping (#471)
    
    This needs a new function, ffi_data_to_code_pointer, to translate
    from data pointers to code pointers.
    
    Fixes issue #470.

commit 042ef8c314a946ef1cd58c6e10cd74e403ef5bf9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 12 08:50:30 2019 -0500

    Remove -Os testing. No ABI impact, and helps trim log lengths.

commit 8fa88373a1d433c675b11200ccd58418e91f81e4
Merge: 737d4faa 2c5b1642
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Dec 19 14:18:40 2018 -0700

    Merge pull request #461 from NativeScript/bektchiev/fix-visibility-hidden-check-in-configure
    
    fix(configure): Correctly detect visibility("hidden") support on Darwin

commit 2c5b164288712cc048048d73a3cd841d845a132c
Author: Martin Bektchiev <martin.bektchiev@progress.com>
Date:   Wed Dec 19 18:33:08 2018 +0200

    fix(configure): Correctly detect visibility("hidden") support on Darwin

commit 737d4faa00d681b4c758057f67e1a02d813d01c2
Merge: a5ea7527 4a84df4a
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Nov 30 08:16:00 2018 -0700

    Merge pull request #457 from NativeScript/bektchiev/fix-arm64-q3-q4-args
    
    Fix Q registers parameter passing on ARM64

commit 4a84df4ae9d33bb766fb34ce8a871d84d6e0ed9c
Author: Martin Bektchiev <martin.bektchiev@progress.com>
Date:   Wed Oct 31 15:53:54 2018 +0200

    Fix Q registers parameter passing on ARM64
    
    The second two quads are located at offset 32 not 16

commit a5ea7527cda8d9b7d011eb4004dfcbad54583bd2
Merge: b11b08ca ba73a671
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Sep 19 07:29:36 2018 -0600

    Merge pull request #443 from jeremyhu/master
    
    Update FFI_HIDDEN() to use .private_extern on Apple platforms and use the macro where appropriate

commit b11b08ca8daacb08943ae5ea8c124771a8b82dde
Merge: 980908b4 e6eac786
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Sep 18 08:26:31 2018 -0600

    Merge pull request #449 from gpakosz/align-macros
    
    Prefix ALIGN_DOWN macro with FFI_

commit e6eac7863e2bf1a009ea863041b354bdb4af6b67
Author: Gregory Pakosz <gregory.pakosz@gmail.com>
Date:   Tue Sep 18 15:19:53 2018 +0200

    Prefix ALIGN_DOWN macro with FFI_

commit 980908b47bbde09fab88ee4b2b61d8bc5d4378a7
Merge: 65da63ab 4cb776bc
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Aug 11 09:53:15 2018 -0600

    Merge pull request #445 from andreas-schwab/master
    
    RISC-V go closures

commit 4cb776bc8075332d2f3e59f51785d621fcda48f6
Author: Andreas Schwab <schwab@suse.de>
Date:   Thu Aug 9 12:12:29 2018 +0200

    RISC-V go closures
    
    This implements go closures for RISC-V.  It has been tested on
    riscv64-suse-linux and against the libgo testsuite.

commit ba73a671cb49f8e2c4417723a9dc233e328926ae
Author: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
Date:   Fri Jul 20 09:37:43 2018 -0700

    Update FFI_HIDDEN() to use .private_extern on Apple platforms and use the macro where appropriate
    
    Fix issue #439
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>

commit 65da63abc843fe448aaa86015d094cf016f325ba
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Mon Jun 25 04:38:58 2018 -0700

    Add compact unwind for darwin/i386 (#440)
    
    * x86: Add implementation of compact unwind for ffi_call_i386, et al.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * x86: Use __text as the section name to avoid deprecated section name warnings.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * darwin: Add missing regular,debug attributes for compact unwind sections
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>

commit 2309b58448b0c8349156d687d7fa8709dfb68992
Author: Shoaib Meenai <shoaib.meenai@gmail.com>
Date:   Sun Jun 17 17:04:24 2018 -0700

    Mark sysv.S as SafeSEH compatible (#438)
    
    It contains no exception handler, so we can just emit the special
    @feat.00 symbol to indicate that it's trivially SafeSEH compatible.
    SafeSEH only applies to x86 and not x86-64, hence its inclusion in the
    x86-specific block. See [1] for details.
    
    [1] https://msdn.microsoft.com/en-us/library/windows/desktop/ms680547(v=vs.85).aspx#the_.sxdata_section_

commit 1d704051b2da207d715351b8613e74437d8e2eb7
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Sun Jun 17 17:01:50 2018 -0700

    i386: Fix missing break; in case statement leading to incorrectly returned FFI_BAD_ABI (#437)
    
    * i386: Add missing break triggering dead store static analyzer checks.
    
    Register calling sequence is being reported as bad ABI instead of working as intended.
    
    Found-by: Clang Static Analysis
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * Mark ffi arm sysv entry points as private_extern.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * x86_64: Add implementation of compact unwind for ffi_call_unix64.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit b55baf0b500ccc7636a8a55e0506d9da787ad2dd
Author: Anthony Green <green@moxielogic.com>
Date:   Wed May 9 13:21:02 2018 -0400

    Handle FFI_GNUW64 on non-Windows systems (EFI)

commit 8206253fdf01226173c36f087226d8ea53584566
Author: Anthony Green <green@moxielogic.com>
Date:   Wed May 9 10:50:46 2018 -0400

    Mark some cases as xfail due to GCC bug

commit b5ee395710e2db830749c3c95558c91b66ac111f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 5 07:41:53 2018 -0400

    Revert "Remove some symbol exports and cleanup newline warnings (#433)"
    
    This reverts commit a5a0f3cf36dfb4d64316414a872288c3170e6c1d.

commit a5a0f3cf36dfb4d64316414a872288c3170e6c1d
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Sat May 5 03:44:33 2018 -0700

    Remove some symbol exports and cleanup newline warnings (#433)
    
    * build: Ensure darwin generated sources end with a new line
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * build: Use .private_extern where missing to prevent exporting symbols that are not API
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>

commit d3c54cf3a2b2bb2e889173b6a0a959517b42c47f
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Wed May 2 06:19:58 2018 -0700

    Re-enable msabi testing (#436)
    
    * Revert "disable msabi testing for now"
    
    This reverts commit 7b7638eb0eac2adfa72f7ec9f254ba287c9947e2.
    
    * x86: Correct testing for 64-bit x86-64
    
    Since passing -m32 to x86-64 compiler will generate i386 code, we
    need to check both __ILP32__ and __i386__ for 64-bit x86-64.
    
    * x86: Check __i386__ instead of i?86-*-* targets
    
    Since passing -m32 to x86-64 compiler will generate i386 code, we need
    to check __i386__ instead of i?86-*-* targets for i386 targets.
    
    * i386: Properly passing integer parameters in registers
    
    For thiscall and fastcall, if the paramter passed as 64-bit integer or
    struct, all following integer paramters will be passed on stack.
    
    * test: Add ABI_ATTR to callback_code
    
    Add ABI_ATTR to callback_code to properly test different ABIs.

commit ebf241663cc0fd0d76e4db8101e842e1630a2c78
Author: Alan Modra <amodra@gmail.com>
Date:   Wed May 2 13:55:29 2018 +0930

    PowerPC64 ELFv1 fp arg fixes
    
    The ELFv1 ABI says: "Single precision floating point values are mapped
    to the second word in a single doubleword" and also "Floating point
    registers f1 through f13 are used consecutively to pass up to 13
    floating point values, one member aggregates passed by value
    containing a floating point value, and to pass complex floating point
    values".
    
    libffi wasn't expecting float args in the second word, and wasn't
    passing one member aggregates in fp registers.  This patch fixes those
    problems, making use of the existing ELFv2 homogeneous aggregate
    support since a one element fp struct is a special case of an
    homogeneous aggregate.
    
    I've also set a flag when returning pointers that might be used one
    day.  This is just a tidy since the ppc64 assembly support code
    currently doesn't test FLAG_RETURNS_64BITS for integer types..
    
            * src/powerpc/ffi_linux64.c (discover_homogeneous_aggregate):
            Compile for ELFv1 too, handling single element aggregates.
            (ffi_prep_cif_linux64_core): Call discover_homogeneous_aggregate
            for ELFv1.  Set FLAG_RETURNS_64BITS for FFI_TYPE_POINTER return.
            (ffi_prep_args64): Call discover_homogeneous_aggregate for ELFv1,
            and handle single element structs containing float or double
            as if the element wasn't wrapped in a struct.  Store floats in
            second word of doubleword slot when big-endian.
            (ffi_closure_helper_LINUX64): Similarly.

commit a2c6c7af9ffb9500a944abc666ced0922d0de762
Author: Anthony Green <green@moxielogic.com>
Date:   Tue May 1 06:46:30 2018 -0400

    Add license for build-time tools

commit 4c2206ace07f2fb4bef43cd4bfe952ccb584dcec
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Apr 28 04:46:10 2018 -0600

    Fix two "return" issues in x86/ffi64.c (#431)
    
    Issue #70 pointed out that at least one compiler didn't like:
    
        return ffi_call_efi64(cif, fn, rvalue, avalue);
    
    ... where the return type is "void".  This patch splits the statement
    into two.
    
    I also noticed that ffi_call_go here seems to do a double call.  I
    suspect a "return" is missing here, so this patch adds it as well.

commit ed3ed4d801a4d417ea304715d4d8ae581a6c6903
Merge: 8e250c39 b69f95d6
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Apr 27 10:48:51 2018 -0600

    Merge pull request #429 from yousong/m4subst
    
    build: fix subst toolexecdir, toolexeclibdir

commit b69f95d6562b6a57c9be36da0cdf2a500adb94e9
Author: Yousong Zhou <yszhou4tech@gmail.com>
Date:   Thu Apr 26 19:27:54 2018 +0800

    build: fix subst toolexecdir, toolexeclibdir
    
    On CentOS 7.4, configure script generated by autogen.sh will output the
    following values when compiling GCC source code
    
        toolexecdir='NONE/$(target_alias)'
        toolexeclibdir='NONE/$(target_alias)/lib'
    
    and cause build error
    
        ... -o libffi.la -rpath NONE/riscv64-bs-linux-gnu/lib ...
        checking for shl_load in -ldld... libtool: link: only absolute run-paths are allowed

commit 8e250c390a45f722387c1881ae5f99849a2d1e22
Author: Stephen <stephengroat@users.noreply.github.com>
Date:   Wed Apr 25 13:17:32 2018 -0700

    update to https for cygwin download (#428)

commit 7d3cab7926d08aad9a8e54420d6878cb17efd185
Author: Lucas Pluvinage <lucas.pluvinage@gmail.com>
Date:   Sat Apr 21 00:24:50 2018 +0200

    xtensa-linux: use cache flush instruction only if it is available (#426)

commit 159b94e5fd4aa2d88e1b5b389092cefd9472a741
Author: James Cowgill <jcowgill@users.noreply.github.com>
Date:   Thu Apr 19 01:28:23 2018 +0100

    Various MIPS Fixes (#425)
    
    * mips: simplify closure #defines
    
    This commit should have no visible effect.
    
    * mips: add special handling of variadic functions
    
    MIPS requires special handling of variadic functions which pass floating
    point arguments:
    * In the o32 ABI, all float arguments are passed in integer registers.
    * In the n32/n64 ABIs, float arguments after the ellipsis are passed in
      integer registers.
    
    Implement this in libffi. To support this in n32/n64 closures, we need to add
    a new mips_nfixedargs field to ffi_cif which will break the libffi ABI.
    
    This fixes the libffi.call/cls_longdouble_va.c test which was failing on
    64-bit MIPS.
    
    * mips: align argn for all 64-bit types in o32 closure handler
    
    Ensure that argn is pre-aligned for all 64-bit argument types (including
    doubles) and not just integer types.
    
    This fixes closures of the form "f(float, double, <some integer args>)".
    Previously the first integer argument would be read from a2 which is garbage
    at this point (the float arguments have already "consumed" a0-a3). After
    this commit, argn is correctly padded between the "float" and "double"
    arguments so that the first integer argument is read from the stack.
    
    Fixes "double f(float,double,int)" test in #371
    
    * mips: do not read from floating point register if returning a struct
    
    In the o32 ABI, the pointer passed in a0 used to return structures
    indirectly is treated as the first argument for argument allocation purposes.
    This means that it should inhibit floating point registers the same way that
    other integer arguments do.
    
    Fixes "Double f(float,Double,double)" test in #371
    
    * mips: fix pointer cast warnings
    
    Fix two pointer cast warnings when compiled on 64-bit mips by casting
    through uintptr_t.
    
    Fixes mips64el part of #404

commit f2afda08e85b02888350449dcf39a6c37cfb7bc4
Merge: e27f70b8 801c1bd7
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 8 18:25:43 2018 -0400

    Merge branch 'master' of github.com:/libffi/libffi

commit e27f70b8cf2a537bef84b2cb29ad8ea6209a11b8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 8 18:25:34 2018 -0400

    Fix case where callback arg value is split across regs and stack

commit 801c1bd712ff8c76675b7aa69c29948907f1eeff
Author: Andreas Krebbel <38103320+Andreas-Krebbel@users.noreply.github.com>
Date:   Thu Apr 5 14:27:32 2018 +0200

    Fix issue #421 (#422)
    
    Fantastic - thanks for digging into this.

commit 8660e6935971c5abd7b528eaf54deeccd4bbaccd
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 2 08:30:17 2018 -0400

    3.3 release candidate 0

commit 7b7638eb0eac2adfa72f7ec9f254ba287c9947e2
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 2 08:24:44 2018 -0400

    disable msabi testing for now

commit af6773d6ab4db0577bc6b932ab5a2f98a0a8dca2
Author: fwg <fwg@users.noreply.github.com>
Date:   Mon Apr 2 13:55:31 2018 +0200

    Fix appveyor windows build (#420)
    
    * Fix msvcc dll build by adding dllexport decorations to all API declarations
    
    * Fix appveyor build for VS 2013
    
    Use the new -DFFI_BUILDING_DLL for producing a working DLL. Update the
    msvcc.sh wrapper script to successfully compile the testsuite files.
    
    * MSVC build: suppress warnings in testsuite
    
    * fix testsuite on appveyor

commit 48bdb02867edb7e9f3785ccb4bdff1087fb44246
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 07:22:57 2018 -0400

    Trim some optimization tests

commit f98e0f0d777bf962057e18d036989b2b89fdf416
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 07:22:38 2018 -0400

    Simplify matrix

commit fa72b054e10acaea33ec8cc395e0ea5b31c9ac9e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 07:10:23 2018 -0400

    Remove warning message from clang

commit 746c3ce220cb155a8f3b613550a7ecad76f9fedc
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 07:01:14 2018 -0400

    Expand ABI tests on x86.  Testsuite bug fixes.

commit 2eee934d0cb2beef7c0aa29767eca1ce03452ae9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:45:40 2018 -0400

    deal with msvc warnings

commit 206b2974f70f65b4c4c4d9e62b03ee7e0753ee2d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:37:50 2018 -0400

    fix quoting issue

commit 499e41c1ec6b760eff2b320ffc87e22de82a9e1d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:35:10 2018 -0400

    Don't ignore a file

commit 5b41e9f6d2c099add0e02db8c8054281f96b6d0e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:34:31 2018 -0400

    Try different msvc hack

commit e8cf133813e7fa2c606d93abab5b68989e5f6cbc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:12:02 2018 -0400

    msvc c99 hack

commit a3e20940898ed2ca96b9df87f34117d06d900e5f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:58:42 2018 -0400

    More msvc hacks

commit a82b456e98b0f3fbafe76725d1a1503d458a2178
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:49:46 2018 -0400

    msvc fixes

commit a2326aaf561798c3bfd5e464b16693a094bf6c45
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:36:04 2018 -0400

    Remove debug output

commit 85b6b209d7984667ce7d00351fe7e79ef6c4930c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:35:23 2018 -0400

    Force literals to float (msvc warning)

commit 2872c460ba8e96416b4f4ee4a0ed183461d8d6c9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:28:40 2018 -0400

    Fix msvc linking

commit b40a386c22a2bd164819b4f398b722357222b7c1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:20:21 2018 -0400

    Fix library path handling

commit d78c5f64f834c24a769bee78cfb7db4d468b6b21
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:14:56 2018 -0400

    Deal with libpath

commit f318bb63c5dc623d5a69ffc4a59a330050cac567
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 08:25:26 2018 -0400

    Fix library path handling

commit 4f0c9cb39b7599312729278380ce63247bca226b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 08:10:03 2018 -0400

    Use mixed cygpath paths

commit d3693b4665de7ef69b61fb4e483d5686302f9c69
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 08:05:42 2018 -0400

    Copy - don't symlink - to support msvc builds

commit 51ce3696cd0da4716d86b73a30bd89e139ec4b74
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 07:35:33 2018 -0400

    Use cygpath to convert windows paths

commit 70b93e4d863c1ff2a6498455339e17df3d7fe784
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 07:14:59 2018 -0400

    try to fix windows builds

commit 377134d7a946df13b60ff9c9dacc895e82c36178
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 07:06:01 2018 -0400

    Reduce verbosity

commit d01ef5b875dedcb9f7b3039b2334cbd594fdfcd4
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 06:23:29 2018 -0400

    iOS builds

commit d13583f55fb31a302684cbc62c300ae81eb577e9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 06:22:57 2018 -0400

    Fix -L support

commit d49911544bf9d2b4fab782b0c5e76a68074223df
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:59:26 2018 -0400

    Fix quoting

commit 8f47ec404fcf5a082fc4537ede8cdf897f4c5226
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:35:35 2018 -0400

    Don't set AM_MAKEFLAGS

commit df314193dc6cd00978b6e1517866448b604199af
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:13:38 2018 -0400

    Run tests with lots of debug output

commit b394947518fb15887802fe3bc7f0a337c495d65d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:11:52 2018 -0400

    Add -L and -l support

commit 33da6c075299317885385f19680b58a1e9feab5e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:07:08 2018 -0400

    Mention C99 and build requirements

commit e6bdbd7888b5c8a90f3c91f4d6caf3c8d574f3b5
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 04:46:04 2018 -0400

    Remove reference to wiki

commit 24eb1f88d788399dde5fbb4804767e6b6cbf1bc8
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 04:09:56 2018 -0400

    Refactor travis build instructions.  Add iOS build

commit ffc3ff162a15ed0ed0e946815c950c69ee0c8343
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 04:02:06 2018 -0400

    Add issue template

commit 5c2ca479e726dc2feec43e25475c63361387bf20
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 04:01:37 2018 -0400

    Remove uninitialized warning. Fix #163.

commit 0081378017c33a4b9b6fbf20efabdd9959d6a48d
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 24 09:05:14 2018 -0400

    revert

commit 59d44242e15d2979291fe6793ddfb2681b7480ef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 24 08:45:59 2018 -0400

    Try bhaible tests in appveyor

commit 6f7c29c5a6d2850ce53b99efcc71fcc4e8f8c8cc
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 24 08:40:04 2018 -0400

    Formatting fixes

commit f3c2729ee4026c9f70a6656603bac8ba2ec40a5d
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 23 11:47:29 2018 -0400

    Add libffi.map.in to extra dist files

commit 6d2233f96a08c5ac01a64e7b84e2bd678eed0a4b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 23 09:06:08 2018 -0400

    Add sparc solaris build notes

commit 99a80d2fc4ede48348af2edfb7126d60609c4b71
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 21:22:55 2018 -0400

    Fix formatting

commit a3e87ac8e7b7e609ab84541a69c7e51873efa437
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 20:36:52 2018 -0400

    Fix formatting

commit cec3a3a201f17a7f018f25e1a0917bd5206e5a5a
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 16:00:04 2018 -0400

    Don't align-double for 32-bit x86

commit f34f8039c10c4d8d728bc335dcf2b2a38f6e8b50
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 15:30:00 2018 -0400

    Remove debug output

commit f31b915314b12904b858b54cfdf670ceaeda7b2d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 15:13:21 2018 -0400

    Add m4/ax_require_defined.m4

commit a2dc5848b53e9e45ff68e5ef70683b5ffb82592e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 13:41:15 2018 -0400

    travis debug

commit 81d345b2cff039c4389fad283a108ad978b609e0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 13:32:03 2018 -0400

    Update autoconf archive macros

commit 369ef49f71186fc9d6ab15614488ad466fac3fc1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 12:53:42 2018 -0400

    Add missing FFI_GNUW64 enum

commit 56655e58c7f966685c0d5635ee7215733121ae41
Merge: 43980dd1 9bc40d87
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 12:34:18 2018 -0400

    Merge branch 'master' of github.com:/libffi/libffi

commit 43980dd10e0d5705e52f24d63988b722e31bf330
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 12:32:10 2018 -0400

    Add FFI_GNUW64 ABI for GNU 80-bit long double support

commit 9bc40d87ea5950969b234ed56cd2c6acd883fa0e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 12:32:10 2018 -0400

    Add FFI_GWIN64 ABI for GNU 80-bit long double support

commit d46406088d28b038a0a0f7396d9621f431482f6a
Author: Ryan C. Underwood <nemesis@icequake.net>
Date:   Sun Mar 18 07:00:42 2018 -0700

    Fully allocate file backing writable maps (#389)
    
    When ftruncate() is used on a filesystem supporting sparse files,
    space in the file is not actually allocated.  Then, when the file
    is mmap'd and libffi writes to the mapping, SIGBUS is thrown to
    the calling application.  Instead, always fully allocate the file
    that will back writable maps.

commit 247e44b3ef653f210de614a749b71449b8c70764
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 07:01:54 2018 -0400

    Fix return values

commit 1f99701fad1761ffe4e9adf88cfe26f74f427e7c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 17 22:49:58 2018 -0400

    Make tests compile/run standalone

commit d974207cd6373ff282a64038564d99b853dc3fab
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 17 09:03:42 2018 -0400

    Formatting fixes.  Add 'bug fixes' note.

commit a33bfa9b12993aae2edf669f62e141a84286d4de
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 17 07:17:24 2018 -0400

    xfail unwind tests for moxie

commit 8bf05481436ba085df3adfff2b47a879df738d67
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 16 23:54:28 2018 -0400

    Install moxie libstdc++

commit 84b383eda67ba75a6456e4b3587f17b749e6e1a1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 16 23:36:51 2018 -0400

    Install moxie-elf-g++

commit 6a801d042ac1212fe8c0e11abb865061e515aa43
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 16 17:53:33 2018 -0400

    Fix closure case where 8-byte value is partially passed in register.  Fixes cls_many_mixed_float_double test case.

commit 0f0ba9e0ec52e0297c91cb63a889980a6f847219
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 16 07:28:33 2018 -0400

    Run dejagnu's runtest with -a option to prevent travis timeouts after 10min

commit 725454196afab82f7da7bd719e8bddf7cd7837dd
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 15 08:17:18 2018 -0400

    fix .travis.yml

commit d71051c46a795a0669b2d83804030746f790edf4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 21:21:06 2018 -0400

    fix .travis.yml

commit e86aa54ce3418081dca403217c9216c773b82560
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 21:00:55 2018 -0400

    fix .travis.yml

commit 5b538ed61fb13efc8f01bad014c5485231714c96
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 20:32:00 2018 -0400

    fix .travis.yml

commit 6ed64a7953178cf07d2793650fcd64caa6b51d53
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 20:22:33 2018 -0400

    fix .travis.yml

commit 90809e928f8b5a0cdf0787d799111bc33689a9d1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 14:09:39 2018 -0400

    fix .travis.yml

commit 85e4c62351bd1e45dd6d77916778e18c435f1723
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 13:47:27 2018 -0400

    fix .travis.yml

commit aa8a5ec4a4ec4a4460ec3cd4e396e09ceaa3a2fa
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 13:25:04 2018 -0400

    fix .travis.yml

commit 7c3e5da401ab7efef83a5bd4e7f64b0df053da0c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 13:07:04 2018 -0400

    fix .travis.yml

commit 19aec1989382fab8bd86c556aa24751a75b8246e
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 12:40:58 2018 -0400

    Fix travis.yml

commit bf337b070977fb7e8934fc91e4d0e60209f53448
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 12:15:04 2018 -0400

    yaml syntax error fix

commit 076d5a987e016669993154b91525b02978c56727
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 11:13:32 2018 -0400

    markdown fixes

commit d2f7e788aecf37971c9be1cd650f78a3e4061e18
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 09:06:38 2018 -0400

    Fix test cases with short results

commit 18fe190068563bb2bf52a0993017887f438c85a4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 08:02:10 2018 -0400

    Debug travis output

commit 718a4177f23e9d6c5476d0118d49a3a093d72c6c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 07:40:53 2018 -0400

    test

commit 486c34b65deb43d6d9025b2a40284606f97f4e0b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 23:31:18 2018 -0400

    debug

commit 00464aa52022674bdc1f5aa9b2ceb575c9a04b87
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 23:30:52 2018 -0400

    debug

commit eb0544d0d42e5aef56ee1df0861bcd0c95102f88
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 23:20:15 2018 -0400

    Debug env

commit 9d5bd29d8dfb5f89d0927a175443240a19e93890
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 23:07:10 2018 -0400

    Refactor

commit 52a364d7699230be5e883f32b9ac0caaea0300b1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:49:48 2018 -0400

    fix moxie build

commit 1a32b3f146f7ade701cea74e3983b16145f93393
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:44:13 2018 -0400

    fix moxie build

commit e8958c3a64b5e59f0477bcaafaf9c03337d9f445
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:36:41 2018 -0400

    revert test

commit 58315ae125482c44821cfbdce41e350380024d0e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:35:50 2018 -0400

    test

commit 6239c28741a8abc1bd06cb47329d8c5cdb359c90
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:13:44 2018 -0400

    Add experimental moxie travis build

commit 01db31d94e97e71836fe862826bc8a2a399dd619
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 20:41:55 2018 -0400

    Update moxie sub opcode

commit e8f5a43033d53ad631ba477b78a3def61783a1dc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:27:00 2018 -0400

    Fix appveyor badge

commit d1689dd3bf78f4975aa6a6a16cbffcb794283acb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:24:37 2018 -0400

    Fix travis badge.  Add REAME.md to dist files

commit 785351fbc2a49f05535c412067ac51f906612779
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:21:49 2018 -0400

    Preformat release notes

commit 8c7fbd1616b075e3077346c7bf56befd723a9355
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:20:44 2018 -0400

    Preformat release notes

commit 54f31b00562e75e6aae2b736c70e6713618640cb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:17:57 2018 -0400

    Try to fix table

commit 3a29a27a86624512f405e4c9962276485517caf1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:14:40 2018 -0400

    Clean up markdown table

commit fbfc3b048fcf3f699f4495ca70b7e58461a0df4f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:12:21 2018 -0400

    Move to markdown

commit a31d3d3ba6644d308b6fb8cea2a60976e0531f4a
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:11:24 2018 -0400

    Add travis and appveyor build badges

commit 16313cb2746ceed6bc1d25b52604642c14758e01
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 08:52:30 2018 -0400

    Support compiler specific warning suppression flags

commit cca6d1fb549e422514df4aad68f2ca9a8313327d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 08:51:34 2018 -0400

    Support compiler specific warning suppression flags

commit 9291f941c2df5ddf967f701b258ac2b3cc9d0820
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 08:37:21 2018 -0400

    Add bhaible's missing Makefile

commit bede01d82ec2f1cfe2bb42233fcd408a6e3a6323
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 07:53:33 2018 -0400

    Remove stray directory

commit 9aefbb1031c9be7c5121ab24742e025ccff236c4
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 07:51:02 2018 -0400

    Update version number to next pre-release

commit ddf7a8f7511a038342f56c08dac718148e2f0151
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 07:47:57 2018 -0400

    Update test list for dist

commit 6186261cb36a33abbf31430569f83ccd7685474e
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 12 21:53:18 2018 -0400

    Add Bruno Haible and Bill Triggs' libffi testsuite

commit 4e8f79d5587ddb8e027f4df213e90f943e286594
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 11 18:21:46 2018 -0400

    Next release will be 3.3

commit 3840d49aaa831d649b1597518a2903dfed0d57f3
Author: Stef O'Rear <sorear2@gmail.com>
Date:   Sun Mar 11 05:55:15 2018 -0700

    New RISC-V port (#281)
    
    * Add RISC-V support
    
    This patch adds support for the RISC-V architecture (https://riscv.org).
    
    This patch has been tested using QEMU user-mode emulation and GCC 7.2.0
    in the following configurations:
    
    * -march=rv32imac -mabi=ilp32
    * -march=rv32g -mabi=ilp32d
    * -march=rv64imac -mabi=lp64
    * -march=rv64g -mabi=lp64d
    
    The ABI currently can be found at
    https://github.com/riscv/riscv-elf-psabi-doc/blob/master/riscv-elf.md .
    
    * Add RISC-V to README
    
    * RISC-V: fix configure.host

commit dca52b55bc2ac0213c20849d7e9e19fbc9202023
Merge: 83d9aba3 11de69dd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 11 08:50:01 2018 -0400

    Merge pull request #406 from trofi/master
    
    ia64: fix variadic function closures with FP arguments

commit 83d9aba3a44dff8426052312a9445a7ef52f1db1
Merge: ab154056 b58caef7
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 11 08:48:42 2018 -0400

    Merge pull request #407 from trofi/ia64-small-struct
    
    ia64: fix small struct return

commit ab154056937782c1c7f7005c8b46c5179bc719cb
Merge: 9429968b e66fd678
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 11 08:46:58 2018 -0400

    Merge pull request #409 from andreas-schwab/master
    
    Revert "Fix passing struct by value on aarch64"

commit e66fd678200db456a2e9860e80451773efa96fe0
Author: Andreas Schwab <schwab@suse.de>
Date:   Tue Feb 20 10:47:09 2018 +0100

    Revert "Fix passing struct by value on aarch64"
    
    This reverts commit 482b37f00467325e3389bab322525099860dd9aa.
    
    That was actually a bug in python, see <https://bugs.python.org/issue30353>.

commit b58caef7fd620408be9239ac24ea89d5bc84f30b
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sat Feb 17 19:00:40 2018 +0000

    ia64: fix small struct return
    
    This change fixes libffi.call/struct10.c failure on ia64:
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O0 execution test
    
    .Lst_small_struct handles returns for structs less than 32 bytes
    (following ia64 return value ABI [1]). Subroutine does roughly the
    following:
    
    ```
        mov [sp+0]  = r8
        mov [sp+8]  = r9
        mov [sp+16] = r10
        mov [sp+24] = r11
        memcpy(destination, source=sp, 12);
    ```
    
    The problem: ia64 ABI guarantees that top 16 bytes of stack are
    scratch space for callee function. Thus it can clobber it. [1]
    says (7.1 Procedure Frames):
    """
    * Scratch area. This 16-byte region is provided as scratch storage
      for procedures that are called by the current procedure. Leaf
      procedures do not need to allocate this region. A procedure may
      use the 16 bytes at the top of its own frame as scratch memory,
      but the contents of this area are not preserved by a procedure call.
    """
    
    In our case 16 top bytes are clobbered by a PLT resolver when memcpy()
    is called for the first time. As a result memcpy implementation reads
    already clobbered data frop top of stack.
    
    The fix is simple: allocate 16 bytes of scrats space prior to memcpy()
    call.
    
    [1]: https://www.intel.com/content/dam/www/public/us/en/documents/guides/itanium-software-runtime-architecture-guide.pdf
    
    Bug: https://bugs.gentoo.org/634190
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 45da2fcbcd0ecaba673275d22b04fac3e4376e22
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sat Feb 17 18:53:02 2018 +0000

    new test: return small struct
    
    The bug originally was discovered in https://bugs.gentoo.org/634190
    where complicated callback was returning invalid data on ia64.
    
    This change adds minimal reproducer that fails only on ia64 as:
    
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O0 execution test
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O2 execution test
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O3 execution test
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -Os execution test
    
    Test passes on amd64. The fix is in the following commit.
    
    Bug: https://bugs.gentoo.org/634190
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 11de69ddb788e4d87ef653898878384116ac16c6
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sun Feb 11 11:29:39 2018 +0000

    ia64: fix variadic function closures with FP arguments
    
    libffi test framework already flagged failures as:
    
    ```
        FAIL: libffi.call/cls_double_va.c -W -Wall -Wno-psabi -O0 output pattern test, is 7.0
        res: 4
        0.0
        res: 4
        ? should match 7.0
        ?es: 4
        ?.0
        res: 4
    ```
    
    Failure happens here at
    
    ```c
        // testsuite/libffi.call/cls_double_va.c
        ...
        char*  format    = "%.1f\n";
        double doubleArg = 7;
        ...
        CHECK(ffi_prep_closure_loc(pcl, &cif, cls_double_va_fn, NULL,
                                   code) == FFI_OK);
        res = ((int(*)(char*, ...))(code))(format, doubleArg);
    ```
    
    libffi expects 'doubleArg' to be located in 'f9' (second FP argument) but
    gcc placed it to 'r33' (second GR).
    
    ia64 software [1] manual described argument passing ABI in
    "8.5.2 Register Parameters" as:
    
    """
        If an actual parameter is known to correspond to a floating-point
        formal parameter, the following rules apply:
        a) The actual parameter is passed in the next available floating-point
           parameter register, if one is available. Floating-point parameter
           registers are allocated as needed from the range f8-f15, starting
           with f8.
        b) If all available floating-point parameter registers have been used,
           the actual parameter is passed in the appropriate general register(s).
           (This case can occur only as a result of homogeneous floating-point
           aggregates, described below.)
    
        If a floating-point actual parameter is known to correspond to
        a variable-argument specification in  the formal parameter list,
        the following rule applies:
        c) The actual parameter is passed in the appropriate general
           register(s).
    
        If the compiler cannot determine, at the point of call,
        whether the corresponding formal parameter is a varargs parameter,
        it must generate code that satisfies both of the above conditions.
        (The compiler’s determination may be based on prototype declarations,
        language standard assumptions,  analysis, or other user options or
        information.)
    """
    
    We have [c] case here and gcc uses only GR for parameter passing.
    
    The change binds known variadic arguments ro GRs instead of FPs as those
    are always expected to be initialized for all variadic call types.
    
    This fixes all 10 failures on ia64-unknown-linux-gnu:
    
    ```
                     === libffi Summary ===
        -# of expected passes            1945
        -# of unexpected failures        10
        +
        +# of expected passes            1955
    ```
    
    [1]: https://www.intel.com/content/dam/www/public/us/en/documents/guides/itanium-software-runtime-architecture-guide.pdf
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 9429968b828de8775cfd7f139374888943f2186a
Merge: f08b2be6 28d3b61b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 10 23:23:33 2018 -0500

    Merge pull request #403 from frida/fix/x86-sysv-pic-closure-regression
    
    Fix x86 SysV closure in PIC mode

commit f08b2be6273f471863f1ea1afb0078a96fe73d74
Merge: c194448e 482b37f0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 10 23:21:49 2018 -0500

    Merge pull request #405 from andreas-schwab/master
    
    Fix passing struct by value on aarch64

commit 482b37f00467325e3389bab322525099860dd9aa
Author: Andreas Schwab <schwab@suse.de>
Date:   Mon Sep 18 12:44:08 2017 +0200

    Fix passing struct by value on aarch64
    
    This fixes the ctypes test in the python testsuite.

commit 28d3b61bdd8b9fe786cb431165f2fb95f4e275d3
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Sat Jan 20 23:56:17 2018 +0100

    Fix x86 SysV closure in PIC mode
    
    The assembly single-line comments swallowed up the remaining assembly
    code of the macros due to lack of line-endings.
    
    This is a regression introduced in b7f6d7a.

commit c194448ef08b4c0183c68dda95a4b8b9cfc47985
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 10 09:38:15 2018 -0500

    adjust env usage in travis

commit 5314b1067145d30acdc5bba3bebb788e8acfdaae
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 10 07:22:51 2018 -0500

    test static lib

commit bec6135dff061a35065efc106f920940a82c28ee
Merge: f6ecf10c d15581c6
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 10 07:20:04 2018 -0500

    Merge pull request #393 from thejunkjon/master
    
    Linker error "recompile with -fPIC" for x86_64

commit f6ecf10ca021e94d496c75cc43c417161edf28b3
Merge: c50ba182 746dbe3a
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 5 16:51:44 2018 -0500

    Merge pull request #401 from wzssyqa/jr-r6
    
    mips/ffi.c: fix encoding for jr on r6

commit 746dbe3a6a79a41931c03b51df2972be4d5e5028
Author: YunQiang Su <wzssyqa@gmail.com>
Date:   Wed Jan 3 10:07:41 2018 +0800

    mips/ffi.c: fix encoding for jr on r6
    
    mips/ffi.c: instruction jr has a different encoding for r6

commit c50ba182f43537e29dd92cfd9b2fa7a30549a06e
Merge: 54cb3e23 af6949b7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 1 15:18:46 2018 -0500

    Merge pull request #398 from emaste/master
    
    Enable symbol versioning when ld is LLVM's lld

commit 54cb3e2345ee8e2483d4705a9fb2967b6e5a9bd1
Merge: 716bfd83 94c102aa
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Dec 31 07:46:05 2017 -0500

    Merge pull request #396 from wzssyqa/master
    
    mips/n32.S: disable .set mips4 on mips r6

commit af6949b7af98404729e04227165d0e32ce550ce8
Author: Ed Maste <emaste@freebsd.org>
Date:   Sun Dec 17 23:08:12 2017 -0500

    Enable symbol versioning when ld is LLVM's lld
    
    Fixes #397

commit 94c102aa69b04337f63498e0e6551fcdce549ae5
Author: YunQiang Su <wzssyqa@gmail.com>
Date:   Sun Dec 10 14:25:01 2017 +0800

    Not set mips on mips r6
    
    MIPS release changed encodes of some instructions, include ll/sc etc.
    
    if .set mips4 on mips r6, as will generate some wrong encode of some instructions.

commit d15581c6969657c79afcff4865bdc8f5ff23a2f7
Author: jon <thejunkjon@gmail.com>
Date:   Fri Dec 1 00:34:30 2017 -0800

    Updating calls to ffi_closure_unix64_inner and ffi_closure_win64_inner to use PLT.  Without this fix, statically linking libffi causes the linker error i.e. 'requires dynamic R_X86_64_PC32 reloc against ffi_closure_unix64_inner which may overflow at runtime; recompile with -fPIC)'

commit 716bfd83177689e2244c4707bd513003cff92c68
Merge: 4fdbb057 cd5e9f8b
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 5 09:02:37 2017 -0500

    Merge pull request #387 from trofi/master
    
    Makefile.am: add 'src/s390/internal.h' to source tarball

commit cd5e9f8b87cc387d3ffef4db81ee6af200a84183
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sun Nov 5 13:56:42 2017 +0000

    Makefile.am: add 'src/s390/internal.h' to source tarball
    
    commit 2f530de168e0253ac06e044c832132c496e8788b
    ("s390: Reorganize assembly") introduced new header
    (similar to other arches) but did not add it to source
    tarball.
    
    As a result build from 'make dist' tarballs failed as:
    
    ```
    ../src/s390/ffi.c:34:10: fatal error: internal.h: No such file or directory
     #include "internal.h"
              ^~~~~~~~~~~~
    ```
    
    To fix it the change adds file to 'Makefile.am'.
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 4fdbb0578e921a9da146c2b040061a3a39fe4fda
Merge: b302bc3d 2bfcd299
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 3 07:05:31 2017 -0400

    Merge pull request #320 from 0-wiz-0/master
    
    Support NetBSD with mprotect.

commit b302bc3dfe47e3ea57de11610fced3170c06df28
Merge: 14eac938 1fb788ac
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 3 07:03:55 2017 -0400

    Merge pull request #322 from compnerd/aarch64-base
    
    aarch64: fix index base register for AArch64

commit 14eac93869eb109bea1daeb4f00609169d5488ff
Merge: ad15ae76 9fc9dc53
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 3 06:49:03 2017 -0400

    Merge pull request #384 from yan12125/fix-sgidefs-checking
    
    Fix linux detection (closes #303)

commit 9fc9dc535ee7af28f49f86a8ecacb7f575c46ba4
Author: Yen Chi Hsuan <yan12125@gmail.com>
Date:   Fri Oct 27 16:12:56 2017 +0800

    Fix linux detection (closes #303)

commit 1fb788ac898290d8e3044ca4c0a4fb3c3c254ce5
Author: Saleem Abdulrasool <compnerd@compnerd.org>
Date:   Tue Oct 10 11:37:00 2017 -0700

    aarch64: fix index base register for AArch64
    
    The base is passed in `x3`, not in `x2`.  This fixes the indexing base
    so that the right value is used.

commit ad15ae762c8b3999e626ebccb9cf454455119555
Merge: dc2ff5ba 5e4fcdcc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:16:49 2017 -0400

    Merge pull request #298 from frida/fix/ios-trampoline-table-complexity
    
    Simplify iOS trampoline table allocation

commit dc2ff5baabf89d473d61ae4b468638f8ea98bb04
Merge: 927da716 79d1509c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:11:40 2017 -0400

    Merge pull request #323 from compnerd/x86-alloca-alignment
    
    x86: align alloca to 16-byte boundary

commit 927da71662f349f656fc1c5d0aaa533005e24f47
Merge: a0455c03 181fc4cc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:05:53 2017 -0400

    Merge pull request #379 from jlj/master
    
    Xcode build improvements

commit a0455c031824c6ab3f1a7a6ef9912edad6ebd742
Merge: 0faf6145 9d9d92b4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:04:23 2017 -0400

    Merge pull request #383 from hjl-tools/hjl/master
    
    Hjl/master

commit 0faf614529ae7ac8bc929415a6e1b076ba1b8cc5
Merge: 8d26e8c6 3c372c38
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:03:55 2017 -0400

    Merge pull request #381 from compnerd/ffi-nullptr-deref
    
    arm: fix a level of indirection issue

commit 9d9d92b47f3f73644f808ae38e97d1ea8f4d22df
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Oct 25 04:59:31 2017 -0700

    Skip WIN64/EFI64 support for x32
    
    Since x32 doesn't support WIN64/EFI64, skip it if __ILP32__ is defined.

commit b2a343ffc68f1af5368281e063c0ca5571c611cc
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Oct 25 04:36:49 2017 -0700

    Don't include WIN64/EFI64 for x32
    
    Since x32 doesn't support WIN64/EFI64, don't include it for x32.  Also
    x32 has sizeof size_t == 4.  But TARGET should be X86_64.

commit 3c372c384a94db23fdaf9fe64a4beb86159cf6d3
Author: Saleem Abdulrasool <compnerd@compnerd.org>
Date:   Tue Oct 24 13:53:56 2017 -0700

    arm: fix a level of indirection issue
    
    Rather than relying on the stack being 0'ed out always, do it manually.
    The stack generally happened to be zero, and because the compiler
    realizes that the tests are dealing with chars truncates the read value.
    However, the top 3 nibbles of the value are undefined and may be
    non-zero.  The indirection level caused a null-pointer dereference.
    
    Explicitly scribbling on the stack during the allocation causes test
    failures without the original zexting behaviour.

commit 181fc4cc9ca211f3bc8209cecf3b2348b0674e21
Merge: 8d26e8c6 54529ba1
Author: Jean-Luc Jumpertz <jean-luc@celedev.eu>
Date:   Mon Oct 23 15:02:29 2017 +0200

    Merge branch 'master' based on ksjogo/libffi
    
      Added a tvOS target in Xcode project. Misc Xcode project cleanup.
      Fix macOS build target in Xcode project.
    
    # Conflicts:
    #       src/aarch64/ffi.c
    #       src/x86/ffi64.c

commit 54529ba1db9974b5efcbd2e893c44b6b01b0b2c8
Author: Jean-Luc Jumpertz <jean-luc@celedev.eu>
Date:   Mon Oct 23 09:49:35 2017 +0200

    Added a tvOS target in Xcode project. Misc Xcode project cleanup.

commit 79d1509cb06ba9067f56e2c62394d7bc60fa6bf2
Author: Saleem Abdulrasool <compnerd@compnerd.org>
Date:   Tue Oct 10 11:39:45 2017 -0700

    x86: align alloca to 16-byte boundary
    
    Align the stack allocation to a 16-byte boundary.  This ensures that the
    stack parameters are 16-byte aligned which is needed for some
    instructions.

commit 8d26e8c6da23b10331181a4bbf837f479ce5d7d2
Merge: 1c9171ec ed7488c0
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Oct 17 10:46:49 2017 -0600

    Merge pull request #326 from trofi/master
    
    src/ia64/unix.S: unbreak small struct handling

commit ed7488c003765c7ee71b7da3e8c21f431b043809
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Tue Oct 17 13:00:51 2017 +0100

    src/ia64/unix.S: unbreak small struct handling
    
    commit 6e8a4460833594d5af1b4539178025da0077df19
    added FFI_TYPE_COMPLEX value type (comes after FFI_TYPE_POINTER)
    
    ia64 ffi_closure_unix reiles on the ordering of
    FFI_ enums as ia64 has ia64-specific FFI types:
    small struct and FPU extesions.
    
    As a result all tests handling small structs broke.
    
    The change fixes dispatch table by adding (no-op)
    FFI_TYPE_COMPLEX entry
    This has positive effect of unbreaking most tests
    on ia64:
    
                     === libffi Summary ===
    
    -# of expected passes            1595
    -# of unexpected failures        295
    +# of expected passes            1930
    +# of unexpected failures        10
     # of unsupported tests          30
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 1c9171ec89943d9b4b10a54091c8b5c104eb258d
Merge: 9f1f8741 7ad0ae7f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 10 23:19:57 2017 -0400

    Merge pull request #324 from compnerd/arm-zext
    
    arm: zext return value parameters

commit 7ad0ae7f42f3e208431ab66a9032dc9549f978d0
Author: Saleem Abdulrasool <compnerd@compnerd.org>
Date:   Tue Oct 10 11:44:05 2017 -0700

    arm: zext return value parameters
    
    The closure function (invoked as closure->fun in ffi_closure_XXX_inner)
    will only populate the actual number of bytes for the true return type,
    which may be a character.  This leaves garbage on the stack when the
    assembly closure function (i.e. ffi_closure_XXX) reads the return value
    off of the stack into r0 as a 4-byte value.  ffi_closure_XXX always
    leaves room for at least 4 bytes here, so we can safely set them to 0.
    Otherwise, if there is garbage in any of these bytes, these end up in r0
    and in the returned value as well.

commit 2bfcd29955c02b67fa10a68cc4200f6838181e0f
Author: Joerg Sonnenberger <joerg@NetBSD.org>
Date:   Mon Oct 2 15:34:03 2017 +0200

    Support NetBSD with mprotect.
    
    Signed-off-by: Thomas Klausner <wiz@NetBSD.org>

commit 9f1f8741b2ec0c8898ecff7b93005627b915dd02
Merge: dca078f4 6cf0dea7
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 1 20:25:50 2017 -0600

    Merge pull request #319 from angerman/patch-5
    
    Adds `local.exp` to DISTCLEANFILES

commit 6cf0dea78a5a4584eda871e264043974d0453e53
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Mon Oct 2 10:20:16 2017 +0800

    Change CLEANFILES to DISTCLEANFILES

commit dca078f468ff696134195e85fed3f48260115651
Merge: 540258d1 bccba9a3
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 1 20:19:53 2017 -0600

    Merge pull request #316 from angerman/patch-2
    
    Add `configure.host` and `libtool-version` to the `EXTRA_DIST` files

commit 540258d13e1d427254cbeddacdd2bb1ab2c307d1
Merge: 93d8e7dd 4c6aa78d
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 1 20:17:02 2017 -0600

    Merge pull request #317 from angerman/patch-3
    
    Add src/x86/asmnames.h to noinst_HEADERS

commit bccba9a34e8ba0fe671c4b94671fea2efe181b01
Merge: a1e6ccb6 59d65d74
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 12:48:17 2017 +0800

    Merged

commit 6b6df1a7bb377651a07663879bd4162f0059dc5c
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 12:37:53 2017 +0800

    Adds `local.exp` to CLEANFILES
    
    With #315, #316, #317, #318 and this patch, running
    ```
    AM_DISTCHECK_CONFIGURE_FLAGS=--disable-docs make distcheck
    ```
    should complete successfully.

commit 59d65d74ae72bd24fbf78f045592c5168f0b0784
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 12:23:31 2017 +0800

    Include `libtool-version` in the EXTRA_DIST files.

commit 4c6aa78d75f0c426a23c27af74155aa2535021d6
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 11:32:41 2017 +0800

    Add src/x86/asmnames.h to noinst_HEADERS
    
    In eaa59755fcbb692a8cb763c7f9f24a350aadbd30, macros from `unix64.S` were extracted into `asmnames.h` to be used with `win64.S` as well. As such these are required by `unix64.S`, which fails to build without them.

commit a1e6ccb67e7d7f2b235016aa6c6733c5743945a1
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 11:28:40 2017 +0800

    Add `configure.host` to the `EXTRA_DIST` files
    
    When running `make dist`, `configure.host` would not result in the distribution tarball, however `configure` would try to read it, and as such the tarball would not be buildable.

commit 93d8e7dd17b08ff195af3580584ccd5c2228202f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 21:51:34 2017 -0400

    Fix #265

commit 02a5145abbae2e311d5aeeee606c5b5745a99b55
Merge: 10099d6c 7d504f7a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 21:43:03 2017 -0400

    Merge pull request #263 from ksjogo/master
    
    fix ios builds

commit 10099d6cad8418a10c1508235d1f458993ac51fe
Merge: c8f1aa3d ed848834
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 20:54:09 2017 -0400

    Merge pull request #271 from frida/fix/qnx-cache-flushing
    
    arm: Fix cache flushing on QNX

commit c8f1aa3d0459c6f1be6884b324b4d2d785ecfd78
Merge: db4dad97 50e408ce
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 20:53:50 2017 -0400

    Merge pull request #307 from zw3rk/master
    
    Support -ios triple

commit db4dad97e2589ca700d1b5b54eeb332137a152ad
Merge: 8a16f2f4 9c12209d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 20:47:08 2017 -0400

    Merge pull request #312 from fjricci/fix_ub
    
    Fix misaligned memory access in ffi_call_int

commit 8a16f2f47fdb6a985d201baa02a1d226562af4d8
Merge: b2309106 0ff9419f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 20:45:15 2017 -0400

    Merge pull request #308 from trex58/master
    
    This patch enables FFI Go Closure on AIX.

commit a78da73956e4b0af4556f1c0a444bd0f065c3965
Author: Jean-Luc Jumpertz <jean-luc@celedev.eu>
Date:   Mon Sep 4 15:55:34 2017 +0200

    Fix macOS build target in Xcode project.
    
    - Add missing files for desktop platforms in generate-darwin-source-and-headers.py, and in the Xcode project.
    - Add a static library target for macOS.
    - Fix "implicit conversion loses integer precision" warnings for iOS mad macOS targets.

commit 9c12209d2eac40238eefb4255994277918e7eff1
Author: Francis Ricci <francisjricci@gmail.com>
Date:   Thu Aug 3 10:46:28 2017 -0700

    Fix misaligned memory access in ffi_call_int

commit b23091069adce469dc38fbcc9fd8ac9085d3c9d7
Merge: c0cc9f1d 9c6cb588
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jul 12 12:43:06 2017 -0600

    Merge pull request #309 from rurban/oldgcc
    
    __attribute__ deprecated (msg) only since gcc 4.5

commit 9c6cb58812aa92a4c56a94b2b51bd85b2aebc2a1
Author: Reini Urban <rurban@cpan.org>
Date:   Sun Jun 18 18:26:05 2017 +0200

    __attribute__ deprecated (msg) only since gcc 4.5
    
    make it work with older compilers

commit 50e408ce5d9eb6f14bf82bb3894d0e74e5f19c2c
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun May 21 20:44:10 2017 +0800

    add i?86-*-ios -- the iOS simulator (32bit)

commit a08cabe6746343564418383b879d40d3b998c399
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun May 21 20:25:16 2017 +0800

    add x86_64-*-ios -- the iOS simulator

commit 0ff9419f2e75652426469e256cb7d0748064ad58
Author: Tony Reix <tony.reix@bull.net>
Date:   Wed May 17 14:57:53 2017 +0200

    This patch enables FFI Go Closure on AIX.

commit 19ab448d84223d2992048bce4e926eac2c44f606
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Tue May 16 08:32:06 2017 +0800

    Support -ios triple
    
    Autoconf hasn’t had an update since 2014, and it doesn’t look like it will soon[1]
    This updates config.{guess,sub}
    
    It adds support for e.g. `-ios`, which allows to have targets like `aarch64-apple-ios`.
    
    It basically does exactly what the config.guess script says:
    > It is advised that you download the most up to date version of the config scripts from
    
    The configure.ac script has been updated to relax `*-apple-darwin*` to `*-apple-*`.
    Similarly the `.gitignore` and `autogen.sh` needed to be updated to respect the
    newer `config.{sub,guess}`
    
    —
    [1]: http://lists.gnu.org/archive/html/autoconf/2016-07/msg00017.html

commit c0cc9f1df9fd4c5e758470f05d0e48123f0638ae
Merge: b841ae70 bd72848c
Author: Tom Tromey <tom@tromey.com>
Date:   Mon May 8 15:20:39 2017 -0600

    Merge pull request #302 from gpakosz/align-macros
    
    Prefix ALIGN macros with FFI_

commit bd72848c7af9302df50a7a11652c77166d17caa8
Author: Gregory Pakosz <gregory.pakosz@gmail.com>
Date:   Thu Apr 27 13:20:36 2017 +0200

    Prefix ALIGN macros with FFI_

commit 7d504f7a8e33f6da27941f5dc5d889fe60b8b9c8
Author: ksjogo <jogo@kronberger-spiele.de>
Date:   Thu Mar 30 13:32:58 2017 +0200

    update for xcode 8.3

commit 57d8ff044cd6320d8ebacacf06455569b4aac27d
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 15 01:43:11 2017 +0100

    Simplify iOS trampoline table allocation
    
    By using VM_FLAGS_OVERWRITE there is no need for speculatively
    allocating on a page we just deallocated. This approach eliminates the
    race-condition and gets rid of the retry logic.

commit 7f558a9ba4e74edf54a3e95e983e8a59ddb0cc7c
Author: ksjogo <jogo@kronberger-spiele.de>
Date:   Mon Jul 25 01:18:30 2016 +0200

    set ios deployment target to 7.0

commit e76fa94b6ef9a699ee9edeb85d1731d3bb7abd46
Author: ksjogo <jogo@kronberger-spiele.de>
Date:   Thu Jul 14 11:28:18 2016 +0200

    fix ltmain.sh in xcode builds

commit 22b2fd6f18eed7b32ea959f7f3e56ea09b9ac9bf
Author: ksjogo <jogo@kronberger-spiele.de>
Date:   Wed Jul 13 14:40:07 2016 +0200

    add valid architectures

commit 0040694505411785ec98e660fe81faad9630f515
Author: Johannes Goslar <johannes.goslar@kronberger-spiele.de>
Date:   Tue Jul 12 16:08:42 2016 +0200

    Update Xcodeproj
    
    Include all currently relevent files.
    Call autogen is build script.
    Fix compiler settings.
    Fix mach include.

commit b841ae70a05a5e11de1fca1b4551189db0895cf2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 19 07:42:09 2017 -0400

    remove stray quote

commit a94c999ba0d51ed8ec88685233f5b1ae38e894ea
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 19 07:36:07 2017 -0400

    Handle fastcall declaration differently for some Microsoft compilers

commit 69963d39ab7d7f201b4597ed7a24cf438e0a34bf
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 19 07:33:39 2017 -0400

    We don't support 32-bit builds with the Microsoft toolchain

commit 073bc9d50c1ce753735944e4228d9a401e964306
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 19 07:25:24 2017 -0400

    Enable appveyor ci support

commit a0b14eea2baf9f18c0d29bc5ce4495422381f917
Merge: fa5a0fe2 1e0d107b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 17 09:20:40 2017 -0400

    Merge pull request #291 from ramon-garcia/visual-studio-build
    
    Build with Visual C++ (64 bits)

commit fa5a0fe2c6da906cc7c114c8002e5c7092c4dbee
Merge: 5b91bbd3 bfab429e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 16 07:50:07 2017 -0400

    Merge pull request #238 from KubaKaszycki/master
    
    Update README with a new port

commit 5b91bbd388213ec19044a392c291505e2c0674b9
Merge: d754c510 982b89c0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 16 00:40:58 2017 -0400

    Merge pull request #288 from yan12125/std-includedir
    
    Install public headers in the standard path

commit d754c510f1dd03dc8c2cd7b50bb2a1668715c5cd
Merge: ebe7f447 41185b56
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 16 00:39:07 2017 -0400

    Merge pull request #299 from matijaskala/patch-1
    
    detect other x32 hosts

commit ebe7f447abcfbf1a16dbfca26538fff03faf7c6b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 16 00:36:10 2017 -0400

    Remove osx testing.  gcc was symlinked to clang. dejagnu c++ tests fail with clang.

commit c9c2aa24611ec996f45a495f24d690688f3ffed6
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 15 09:58:39 2017 -0400

    Revert previous two changes.  clang/MacOS problem can only be solved within dejagnu.

commit 5a8fca94059fbf14ac7352ce487c9250cdd67c63
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 15 09:52:39 2017 -0400

    Fix typo

commit 5b10a0198188d43fc07c271bc29ff1033e2ac9d3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 15 09:34:01 2017 -0400

    Work around dejagnu/clang problems

commit b6751258072fadadd487a6adf4962bf22b44746d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 15 08:54:52 2017 -0400

    Require sudo for installing packages

commit 41185b565fe17a8f107642f480849ef369ad0baa
Author: Matija Skala <mskala@gmx.com>
Date:   Wed Mar 15 12:50:41 2017 +0100

    detect other x32 hosts
    
    primarily x86_64-pc-linux-muslx32
    while at it, add x86_64-x32-pc-linux-{gnu,musl} as well

commit 6e2e041b6df6a3c3a5ca8a750dedbbd465e5ca97
Merge: dabbd145 d42ce7b9
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Mar 14 19:37:45 2017 -0700

    Merge pull request #297 from frida/fix/error-path
    
    Fix error path so mutex is unlocked before returning

commit 5e4fcdccb3a841f2daaa5834f726eaeb42950511
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 15 01:43:11 2017 +0100

    Simplify iOS trampoline table allocation
    
    By using VM_FLAGS_OVERWRITE there is no need for speculatively
    allocating on a page we just deallocated. This approach eliminates the
    race-condition and gets rid of the retry logic.

commit d42ce7b95c6d5cba7d976cc0c8c85f7645fa6b8f
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 15 01:23:40 2017 +0100

    Fix error path so mutex is unlocked before returning
    
    In the unusual case where ffi_trampoline_table_alloc() fails.

commit dabbd145665ffca6fa676eba551f12107cd81131
Merge: 60e4250a 6caabd19
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Feb 27 21:10:00 2017 -0700

    Merge pull request #295 from terrillmoore/patch-1
    
    Correct typos in libffi.texi

commit 6caabd198ec24d090d85d7eca01150b44003c76b
Author: Terry Moore <tmm@mcci.com>
Date:   Sun Feb 26 15:06:53 2017 -0500

    Correct typos in libffi.texi
    
    One "it's" should be "its", and one "is" should be "in".

commit 1e0d107b4b237edd11ca3209a9cf59786f752fe5
Author: Ramón García Fernández <ramon.garcia.f@gmail.com>
Date:   Sun Jan 8 20:12:59 2017 +0100

    Modify configure.host to detect compilation with Microsoft Visual C++ and use assembly with Intel syntax in that case

commit 982b89c01aca99c7bc229914fc1521f96930919b
Author: Yen Chi Hsuan <yan12125@gmail.com>
Date:   Sun Nov 13 19:17:19 2016 +0800

    Install public headers in the standard path

commit 60e4250a77eb3fde500bfd68ec40519fe34b21bd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:34:18 2016 -0400

    make executable

commit c3caf38895252b82febb76c6bb323c67a4e01929
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:21:18 2016 -0400

    Update travis to test linux 32/64 and osx with a mix of gcc and clang

commit c5b408ee78d097a495ea12467cf082f8008c8e17
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:17:46 2016 -0400

    xfail the unwindtest for osx as per issue #279

commit 256ce51c408766d23b2707cc79b97f673750b3b9
Merge: 2ded2a4f 52a11f6d
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Sep 1 13:54:51 2016 -0700

    Merge pull request #273 from wbx-github/master
    
    m68k: support ISA-A Coldfire CPUs

commit 2ded2a4f494165c93293afc14ab0be1243cf8c49
Merge: 408c9c7d e247b562
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Sep 1 13:30:45 2016 -0700

    Merge pull request #272 from yousong/mips64-soft-float
    
    Mips64 soft float

commit 408c9c7d5a4cb323c77499b1643858f4bfaf4ca7
Merge: 06d7c519 b545ff81
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Aug 23 11:32:17 2016 -0600

    Merge pull request #274 from dr-hannibal/ykolerov-unused
    
    ARC: Remove unused variable

commit b545ff81f58233284cd6fca97a470aa3218c23e6
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Tue Aug 23 20:23:37 2016 +0300

    ARC: Remove unused variable
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit 52a11f6d9152a56aa1fb6d04eb40fd76f4cce5ff
Author: Waldemar Brodkorb <wbx@uclibc-ng.org>
Date:   Sat Aug 20 00:52:19 2016 +0200

    m68k: support ISA-A Coldfire CPUs
    
    Fix compilation for m68k/coldfire CPUs like mcf5208.
    
    Signed-off-by: Thorsten Glaser <tg@mirbsd.de>
    Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>

commit e247b562ac85565dfac33e676e2915489af04183
Author: Yousong Zhou <yszhou4tech@gmail.com>
Date:   Mon Aug 15 17:34:37 2016 +0800

    doc: fix typo
    
    Name of last argument to ffi_get_struct_offsets is `offsets`, not `sizes`
    
    Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

commit 7a0d2c83bf2b0422e2d0ed297f847fc1eeb88bb3
Author: Yousong Zhou <yszhou4tech@gmail.com>
Date:   Mon Aug 15 15:00:13 2016 +0800

    mips: fix MIPS softfloat build issue
    
    The patch for o32.S is taken from OpenWrt packages repo 3a7a4bf "libffi:
    fix MIPS softfloat build issue with current binutils"
    
    Signed-off-by: Felix Fietkau <nbd@openwrt.org>
    Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

commit 06d7c5190e910356d4212d2a79056df8b70fd27e
Merge: aa7ed78c 301166b1
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Aug 10 15:06:16 2016 -0600

    Merge pull request #269 from frida/fix/aarch64-variadic-closures-on-ios
    
    aarch64: Fix handling of variadic closures on iOS

commit aa7ed78c0e0d3fc4daa6a86c35ecbb7c43b5d067
Merge: 1daa7879 4da814b1
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Aug 10 15:03:37 2016 -0600

    Merge pull request #268 from frida/fix/aarch64-large-aggregates
    
    aarch64: Fix handling of aggregates larger than 16 bytes

commit 4da814b18a1bf1d2013d988e37485e568d6117d1
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Aug 10 22:48:09 2016 +0200

    aarch64: Fix handling of aggregates larger than 16 bytes
    
    Instead of allocating stack space for a pointer we would allocate stack
    space for the actual aggregate size.

commit 1daa78799942c83c905f8d7c5439952e9ffec3bc
Merge: f03ba203 5e9ac7e2
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Aug 10 14:31:09 2016 -0600

    Merge pull request #270 from frida/fix/aarch64-warnings
    
    Fix aarch64 warnings

commit ed8488345eaae41c161ab741b0c44299ee99dc6c
Author: s1341 <github@shmarya.net>
Date:   Wed Aug 10 14:57:22 2016 +0200

    arm: Fix cache flushing on QNX
    
    Use `msync()` directly as `__clear_cache()` is broken in the
    qnx650_gcc4.8.3 toolchain.

commit 5e9ac7e252dbb0b7025027c1b6e1a4f3ec48943f
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Aug 10 15:22:19 2016 +0200

    aarch64: Fix warning about unused function on iOS

commit 4d1f11f6a9effce05ba51578b142827834d1f699
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Aug 10 15:21:42 2016 +0200

    aarch64: Fix operand size warning reported by Clang

commit 301166b11e913f85d09f67af94264268811f23a9
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Aug 10 15:59:56 2016 +0200

    aarch64: Fix handling of variadic closures on iOS

commit f03ba2032850545dc6869bb495170a8c6cbf849d
Merge: 40e4063a ef8be84d
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Aug 2 10:23:25 2016 -0600

    Merge pull request #266 from dr-hannibal/arc-pthread
    
    Make testing easier outside of build directory and especially for ARC

commit ef8be84de5f9e611add396efe908b772eb1cae1d
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Fri Jul 29 21:01:38 2016 +0300

    Do not use fabsl() in float2.c test
    
    Some targets may support long double variables but in the same
    time may lack support of long double functions like fabsl().
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit f3201733d54bf26ac40c432f4305499dd3f20215
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Fri Jul 29 19:18:41 2016 +0300

    Fix output expectations in cls_dbls_struct.c test
    
    This test with invalid output expectations may fail on some targets
    (e.g. ARC processors).
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit f74ea2dc7994b4867f7ab45169e1b2422072cc92
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Thu Jul 28 20:57:09 2016 +0300

    Allow setting an arbitary value for blddirffi in testsuite
    
    It is useful when tests are executed not from build directory. So
    the path of the build directory may be passed through site.exp or
    runtest.
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit 31362d785ed1db52516dfe02ebe8b163c53d29d0
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Thu Jul 28 18:48:23 2016 +0300

    ARC: Link tests with pthread library
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit 40e4063ab4449c644bc106298805fa8c6cfadbd4
Merge: c0829e62 cf4b2a50
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Jul 7 23:11:38 2016 -0700

    Merge pull request #261 from tromey/fix-260
    
    Don't dereference "ecif" before NULL check

commit cf4b2a50413ecb8931eb1a94437497694f189c47
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 17 10:09:44 2016 +0100

    Don't dereference "ecif" before NULL check
    
    Fixes #260

commit c0829e62841100c308cc37ddd6537ca69e856de7
Merge: 96d9bf4b 794a54d4
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Jun 5 15:05:21 2016 -0700

    Merge pull request #259 from rth7680/master
    
    Mark win64.S with GNU-stack note

commit 794a54d4a603639adf1a79d5b5bc15da437457e2
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Jun 5 14:57:00 2016 -0700

    Mark win64.S with GNU-stack note

commit 96d9bf4b5517bc49c0129e8cfdee43098d3771a2
Merge: 02089a1b 52fbd12d
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Jun 3 23:04:56 2016 -0700

    Merge pull request #253 from iains/darwin-build
    
    Some Darwin build fixes

commit 52fbd12dca1bddf0b135a24e7136f10af79a06bd
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Thu May 26 09:00:00 2016 +0100

    [Darwin-ppc, build] Fixes for clang build.
    
    clang is experimental on powerpc-darwin, but the changes are appropriate to cctools as as well.
    
    Use the 'official' simplified cmpwi insn, rather than the implied one accepted by cctools.
    Do not re-use a set value.

commit 92810b4bc101fccead2234b7385d4fa5e7a3e56a
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Thu May 26 08:56:51 2016 +0100

    [Darwin-x86, build] Fix up label prefixes, remove .purgem
    
    Darwin uses a label prefix of _.
    cctools assembler will not accept .purgem as a directive.

commit 30b3440cfd378dc67111b1380f2654334d048659
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Thu May 26 08:55:04 2016 +0100

    [Darwin, configure] Allow configure to work for <arch>-*-darwin.
    
    The exec configury is appropriate for all current targets (including using older tools on them).

commit 02089a1b5cf3aa1535172c62add454a2e9375066
Merge: 5d0365c6 c8845517
Author: Tom Tromey <tom@tromey.com>
Date:   Mon May 23 09:58:51 2016 -0600

    Merge pull request #237 from tschwinge/libffi_feature_test
    
    Simplify/fix libffi_feature_test

commit 5d0365c605c472f40d1195cf7ba04ae08e360cb7
Merge: 584a140e 74b3f520
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu May 19 09:35:38 2016 -0700

    Merge pull request #251 from berkerpeksag/delete-test-define
    
    Remove unused FFI_CLOSURE_TEST

commit 74b3f5201432c37e40e24386fa193c838596cec8
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Thu May 19 18:05:36 2016 +0300

    Remove unused FFI_CLOSURE_TEST
    
    It was here since the first commit c6dddbd (warning: huge diff) and
    it wasn't defined by the configure script. It was probably used
    manually during development.

commit 584a140e7558dff6e4ed4009f39d11dd5e3db0ae
Merge: c6177549 b3496ded
Author: Tom Tromey <tom@tromey.com>
Date:   Thu May 19 06:36:38 2016 -0600

    Merge pull request #248 from berkerpeksag/patch-1
    
    Delete empty env in .travis.yml

commit b3496dedbbad6c1f4e5bf4cc100e76b86f3c801e
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Thu May 19 10:53:07 2016 +0300

    Delete empty env in .travis.yml

commit c61775497e7bdfc892d865c2eb15415d2da7493b
Merge: 9edaa695 33d9a31d
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 18 11:10:33 2016 -0700

    Merge pull request #247 from rth7680/symver
    
    Add parent to symbol version LIBFFI_BASE_7.1

commit 33d9a31d34cfba63e1294978114be1bddd2de3fd
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 18 11:01:55 2016 -0700

    Add parent to symbol version LIBFFI_BASE_7.1

commit 9edaa695c54daaf58d62e84032d30d33b7484fa8
Merge: 0969a1c1 8a0a4e25
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 18 10:56:19 2016 -0700

    Merge pull request #230 from rth7680/symver
    
    Use ELF symbol versioning

commit 0969a1c1b339f845202fa7507b70d193220ceb01
Merge: 571b1ca6 4a677a42
Author: Tom Tromey <tom@tromey.com>
Date:   Wed May 18 10:09:28 2016 -0600

    Merge pull request #232 from berkerpeksag/signcompare
    
    Fix -Wsign-compare warnings in x86/ffi64.c

commit 571b1ca6277dbafc1f340a59ea1c5ee4ddb11c94
Merge: 069d2e4e 1e82e1cd
Author: Tom Tromey <tom@tromey.com>
Date:   Wed May 18 10:08:59 2016 -0600

    Merge pull request #233 from berkerpeksag/mremap
    
    Define _GNU_SOURCE on Linux for mremap()

commit 069d2e4e16c5570adec9249d642f2a2ae0ffaa1c
Merge: a44a5b86 1b4f5ee6
Author: Tom Tromey <tom@tromey.com>
Date:   Wed May 18 10:07:31 2016 -0600

    Merge pull request #246 from berkerpeksag/update-github-links
    
    Update project URLs to use libffi/libffi

commit 1b4f5ee6a4989d7eda7766c5864908c389586c6f
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Wed May 18 11:12:58 2016 +0300

    Update project URLs to use libffi/libffi

commit 1e82e1cda43dacd8b6ab2d9ac4db33523d86f5dc
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Mon Mar 7 18:38:10 2016 +0200

    Define _GNU_SOURCE on Linux for mremap()
    
    This was committed to CPython's libffi copy in
    https://bugs.python.org/issue10309
    
    mremap() documentation says _GNU_SOURCE needs to
    be defined in order to use mremap(): see the
    synopsis section at http://linux.die.net/man/2/mremap
    
    Original commit: https://hg.python.org/cpython/rev/9986fff720a2
    
    Original patch was written by Hallvard B Furuseth.

commit 4a677a425c18eda4bc5357b2485da57f133f908d
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Sat Mar 5 09:58:38 2016 +0200

    Fix -Wsign-compare warnings in x86/ffi64.c
    
    This was originally reported on the Python tracker:
    
      httpa://bugs.python.org/issue23958
    
    The original patch was written by Steve R. Hastings.
    
    I've updated it to current master of libffi.

commit a44a5b863aaae98041e11aa3256907bf912ee4d6
Merge: 9443eaed 2627fc98
Author: Tom Tromey <tom@tromey.com>
Date:   Tue May 17 17:07:27 2016 -0600

    Merge pull request #234 from berkerpeksag/disable-docs
    
    Add a note about the --disable-docs switch

commit 9443eaeda867cfdeae92b10bee3cc0506892a4c5
Merge: 14be9a1d e169ba2b
Author: Tom Tromey <tom@tromey.com>
Date:   Tue May 17 17:04:50 2016 -0600

    Merge pull request #242 from somasis/master
    
    Fix usage on musl libc

commit 8a0a4e25ef99f4ec98761f2fc075c2e8409f171b
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 4 07:33:41 2016 -1000

    Update symbol versioning for ffi_get_struct_offsets
    
    Given that the original symbol versioning patch has shipped
    with gcc-6, it would be kind to keep that as a valid base ABI
    and make subsequent changes to version 7.1.

commit c02c3414440e816aa13a2fe8446484173d3edb0e
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Mar 3 13:51:44 2016 -0800

    Use ELF symbol versioning
    
    At the same time, we must bump the (major) ABI version.  This needed to be
    done anyway due to ABI breakage in the AArch64 port (see 12cf89ee and the
    corresponding GCC PR70024).

commit 14be9a1d0713deb97edb91fe9800afe971a001d5
Merge: 1cea2737 b50eabf4
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 4 06:45:05 2016 -1000

    Merge pull request #245 from rth7680/tromey-ffi-prep-cif-core-is-private
    
    A rebase of #219

commit b50eabf48927ccaf0184c6224992bbb0a125e969
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Feb 22 16:00:51 2016 -0700

    minor comment cleanup
    
    This patch minor cleans up ffi.h.in comments in a minor way.  It fixes
    some typos and capitalizations, adds some periods, and reformats some
    comments to a more GNU-ish style.  It also fixes up some stale
    documentation.

commit 6c07077a61fd0dc5ac11759ea1b4345acf486f3c
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Feb 21 20:08:21 2016 -0700

    Change ffi.h.in so that braces match
    
    This is a tiny refactoring to make it so brace-matching works in
    Emacs.

commit 2fbc0369b89a7e6b089e6384b98dba904ec1cf8b
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Nov 19 16:38:35 2015 -0700

    move ffi_prep_cif_core to ffi_common.h

commit 1cea273758ad862bdc2862af864e4ef5b42f31ae
Merge: 48bfae1f 6aafb565
Author: Tom Tromey <tom@tromey.com>
Date:   Tue May 3 08:23:51 2016 -0600

    Merge pull request #231 from berkerpeksag/simplfy-oserror
    
    Simplify error handling in mkdir_p()

commit 48bfae1f37551b7fc894e6a0ea3b98968d2b5c9f
Merge: 6d871105 d76975db
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon May 2 20:58:57 2016 -1000

    Merge pull request #236 from andreas-schwab/master
    
    Define FFI_SIZEOF_JAVA_RAW for aarch64 ILP32

commit 6d8711057bc3a3befa37eed6765231ea5d244078
Merge: 9de24a3f e5843a3a
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun May 1 11:02:40 2016 -1000

    Merge pull request #241 from rth7680/fix-win64
    
    Fix win64 abi calling from unix64

commit e169ba2b83c780058fe626856cfdb5903a85cb97
Author: Kylie McClain <somasis@exherbo.org>
Date:   Fri Apr 29 21:04:07 2016 -0400

    Fix usage on musl libc
    
    A gcc compiled on musl does not define __gnu_linux__, it defines __linux__.
    Only on glibc does __gnu_linux__ get defined, but both define __linux__, so
    we should check for that instead.
    
    With this patch, libffi works perfectly, and passes its testsuite entirely
    on musl libc systems.

commit e5843a3a09976f9d8fa77671e9d6c188c890199d
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Apr 15 16:10:08 2016 -0700

    x86: Fix calling convention for ffi_closure_win64_inner
    
    Also enable testing for the cross-abi calls.

commit d06751979bf0e4c9caabf0bca531d74de8cb9152
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Mar 7 12:14:22 2016 -0500

    x86: Copy fix for clang .org from unix64.S
    
    Clang doesn't understand .org with symbolic operands.

commit bfab429ee479723cc65831a7e4327e2866036420
Author: Jakub Kaszycki <kaszycki@mail.com>
Date:   Fri Apr 1 21:42:41 2016 +0200

    Update README with a new port
    
    This is in fact not a NEW port. Apple Mac devices are generally x86-64 now, x86 rarely. If GCC exists for this CPU, it means that libffi has been built too.

commit c88455178151bea14b8561ab6830724c31af255e
Author: Thomas Schwinge <thomas@codesourcery.com>
Date:   Thu Feb 25 20:10:18 2016 +0100

    Simplify/fix libffi_feature_test
    
    As detailed in
    <http://news.gmane.org/find-root.php?message_id=%3C87wppswqqt.fsf%40kepler.schwinge.homeip.net%3E>,
    the original code (originally added in commit
    f1301a54bb80e6ae23f7687c68f36875dae69134 as part of pull request #145) does not
    work (at least not for me, in the GCC environment).

commit d76975dbd2854beca7acbca946c4cbccf9bf7cee
Author: Andreas Schwab <schwab@suse.de>
Date:   Wed Mar 16 12:23:07 2016 +0100

    Define FFI_SIZEOF_JAVA_RAW for aarch64 ILP32
    
    Like x32, aarch64 ILP32 needs to define FFI_SIZEOF_JAVA_RAW.  This fixes
    the java interpreter.

commit 9de24a3ff31c7446de29c1adcd9276fd7ba93897
Merge: ee718066 38a4d72c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 14 13:54:53 2016 -0400

    Merge pull request #212 from tromey/struct-layout
    
    add ffi_get_struct_offsets

commit 2627fc98e86e906fd7c9bc16bf345b91ee26d2ba
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Mon Mar 7 18:43:03 2016 +0200

    Add a note about the --disable-docs switch
    
    Closes #204

commit 6aafb5654d6741927276efff1af72a5b3614da39
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Sat Mar 5 08:30:31 2016 +0200

    Simplify error handling in mkdir_p()

commit ee718066f763b65d1888f9cc7155d3a1880f80e9
Merge: f2f234ae e59fb55e
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 22 20:15:40 2016 -0500

    Merge pull request #227 from tromey/fix-documentation-build
    
    Fix documentation build

commit 38a4d72c95936d27cba1ac6e84e3094ffdfaa77c
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Nov 17 21:18:20 2015 -0700

    add ffi_get_struct_offsets

commit e59fb55e09fb8aa846c820a802a03fed408d05a6
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Feb 22 15:51:27 2016 -0700

    remove and ignore texinfo.tex
    
    This file is provided by Automake

commit 6dd5fd5a643c50aff3303ba2add3b6cc7588df78
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Feb 22 15:34:39 2016 -0700

    fix documentation building
    
    An earlier patch added --disable-docs, but went too far, making it
    impossible to build the docs.
    
    It turns out that Automake seemingly has a bug preventing the
    conditional build of an info file.  So, this patch works around the
    bug by putting the info_TEXINFOS rule into a new doc/Makefile.am.
    
    Tested by building with and without --disable-docs and looking for the
    existence of doc/libffi.info.

commit f2f234aef203a5e836b83cb772f9473f7ea0d5ce
Merge: 49b95eda fa7a2571
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:50:29 2016 -0500

    Merge pull request #190 from havardgraff/master
    
    Add configure-option to disable building docs

commit 49b95edafd712ce27e08b1bb4be2987f14c54ca3
Merge: 415723b4 43fc5bca
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:49:40 2016 -0500

    Merge pull request #194 from amodra/master
    
    Correct powerpc sysv stack argument accounting

commit 415723b40ba76f4a9df9b709db1cde0c65162072
Merge: 7c27fcbe 1f6b5a91
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:49:19 2016 -0500

    Merge pull request #104 from joshtriplett/efi64
    
    Support the Windows/EFI calling convention on all x86-64 targets

commit 7c27fcbe09534d261b4098467a3ce258daec2807
Merge: 69143d06 e0612439
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:45:00 2016 -0500

    Merge pull request #199 from Pan7/master
    
    Fix configuring msvc compiler

commit 69143d06c6276d09790a4e34f2eb6d37528c08c6
Merge: 755f1e64 505346e1
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:44:28 2016 -0500

    Merge pull request #197 from foxsen/mips_go_closure
    
    Mips go closure support

commit 755f1e642d97892cb54358d65e06b60d1d6b72a4
Merge: 183ee6a6 4cdedc27
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:43:48 2016 -0500

    Merge pull request #193 from rth7680/fix-70
    
    Test case from issue #70

commit 183ee6a6729db8f3ee0b1532d7bd54a6ef305443
Merge: 0bb71b52 877ea9bf
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:43:28 2016 -0500

    Merge pull request #206 from edolnx/master
    
    Add configure flag to disable multi-os-directory support

commit 0bb71b52f5a60643ad55f801f1c652855b0e5cc5
Merge: 296a283a 8bec5ca2
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:41:10 2016 -0500

    Merge pull request #211 from tromey/move-prep-types-out-of-ffi.h
    
    ffi_prep_types is internal-only

commit 296a283a46057a6a643f1f64534324af34b7ed19
Merge: e7c713a0 4805bf9c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:40:21 2016 -0500

    Merge pull request #213 from tromey/remove-FFI_TYPE
    
    remove FFI_TYPE typedef

commit e7c713a0b64c425b51f3d9437a8db7ca497e6c31
Merge: 79666abc f45e9e35
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:40:03 2016 -0500

    Merge pull request #214 from tromey/document-enum-support
    
    document (lack of) enum handling in libffi

commit 79666abca87ac67d2d05b477a3ba71ec18b8af0c
Merge: 20c7c31c 89b76050
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:38:40 2016 -0500

    Merge pull request #205 from filbranden/tool_opts
    
    Fix dejagnu test support for --tool_opts

commit 20c7c31ca04350670012b28756d4ebc9e7b67a68
Merge: 6ba2a49e 9c14cbfc
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:38:01 2016 -0500

    Merge pull request #225 from ehsan/safeseh
    
    Don't clobber safeseh for msvcc.sh -clang-cl in 32-bit mode

commit 89b760503ed017233c98531908dfe8d8affab65e
Author: Filipe Brandenburger <filbranden@google.com>
Date:   Mon Oct 19 15:33:23 2015 -0700

    Fix dejagnu test support for --tool_opts
    
    Right now it concatenates it with the existing options and then appends
    it to that list, fix it to simply append it as is, same as it is done
    with the other variables.
    
    Tested by running the following command which includes gcc options:
      $ make check RUNTESTFLAGS="--tool_opts '-Werror'"
    
    Without this patch, all the tests fail. With it, the test succeed.
    Inspecting the logs shows that -Werror was indeed used when compiling
    the test sources.

commit 9c14cbfc7ff49c2ceb9b65c548ddaced607f0785
Author: Ehsan Akhgari <ehsan@mozilla.com>
Date:   Thu Jan 28 16:57:18 2016 -0500

    Don't clobber safeseh for msvcc.sh -clang-cl in 32-bit mode
    
    The commit fb25cd0 went a bit too far and removed safeseh
    when -clang-cl was passed, but that's only needed in x86-64
    which is already handled by the -m64 flag.
    
    I discovered this when building Firefox x86 with clang-cl.

commit 6ba2a49e226b859ddde9a37c34973cf85380c525
Merge: 8005600a 6a3a6acd
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 2 20:03:41 2016 -0500

    Merge pull request #222 from freakboy3742/t181
    
    Fixed #181 -- Corrected problems with ARMv7 build under iOS.

commit 8005600a920f43d89ace7ef3598057392da726e1
Merge: 70594f7f 5e2b18a6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 2 16:44:29 2016 -0500

    Merge pull request #224 from plicease/travis
    
    update apt-get in travis

commit 5e2b18a65d3f366b2fb02ee27321095c4b5f17ac
Author: Graham Ollis <plicease@cpan.org>
Date:   Sat Jan 2 07:56:05 2016 -0500

    update apt-get in travis

commit 6a3a6acd9fdbdac6f9f9294732b9627895b77715
Merge: bc4fc07a 70594f7f
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Mon Dec 21 00:37:37 2015 +0800

    Merge branch 'master' into t181

commit bc4fc07aa58df6d7fa90b57d305d58eef96a0416
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Mon Dec 21 00:37:06 2015 +0800

    Fixed #181 -- Corrected problems with ARMv7 build under iOS.
    
    Based on a patch from @fealebenpae, with input from @SolaWing and @rth7680,
    and testing from @superdump.

commit 70594f7f8d7410be47ba9a80a566175d937ab626
Merge: 88deacdd 6affad79
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Dec 18 10:24:38 2015 -0500

    Merge pull request #221 from tromey/document-closure-ffi_arg
    
    Document closure ffi arg

commit 6affad79111c45982fd29637a46bc756abb128a3
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Dec 17 16:58:10 2015 -0700

    correctly document closure return promotion

commit 8a7cdeb0412f9ef8bbe0a7833d662dbec40b472f
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Dec 17 16:51:32 2015 -0700

    fix formatting of ffi_prep_closure_loc arguments

commit f45e9e35700d7c547ba33b02c4186e746dea204a
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Nov 19 15:21:14 2015 -0700

    document (lack of) enum handling in libffi

commit 4805bf9ccdc176687526e9e7fca0db763cef42fb
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Nov 19 14:17:42 2015 -0700

    remove FFI_TYPE typedef

commit 8bec5ca26a9977e6c05d6bfa1bbbc7f6f99af4e7
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 11 21:34:43 2015 -0700

    ffi_prep_types is internal-only

commit 88deacdd4220b66805b6ad10abd61fa3640afb67
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 15 08:39:17 2015 -0500

    speling fix

commit 5973dca595f8595a40709f645e74b06990975db3
Merge: 2a988c44 473bcbca
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 15 08:36:48 2015 -0500

    Merge pull request #209 from tromey/documentation-updates
    
    documentation fixes

commit 2a988c4455d3926c59997b68f7510be63e10c841
Merge: e9de7e35 ff33ddd1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 15 08:33:46 2015 -0500

    Merge pull request #207 from tromey/deprecate-ffi-prep-closure
    
    mark ffi_prep_closure as deprecated

commit 473bcbcad32e9e320a7a5c111cefd0d8ad570245
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Nov 7 12:01:06 2015 -0700

    documentation fixes
    
    Fixes #78.  Documentation for #33 and #35, but no fix.

commit ff33ddd1abe72b6d02d2769c0379b06eb7dbb931
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Nov 7 11:45:04 2015 -0700

    mark ffi_prep_closure as deprecated

commit 877ea9bf9ac2c98cb858c12f5a6aeeec13cf978f
Author: Carl Perry <caperry@edolnx.net>
Date:   Thu Oct 29 22:50:42 2015 -0500

    Add configure flag to disable multi-os-directory support
    
    In some environments, installing the library to GCC's
    multi-os-directory is not perferable. This patch adds a switch
    to configure "--disable-multi-os-directory" which will disable
    that check, typically falling back to ${libdir} unless
    cross-compiling.
    
    Original patch was written by Stewart Brodie, and was found at
    https://sourceware.org/ml/libffi-discuss/2013/msg00144.html
    
    I've just updated it to work with the current version.

commit 4cdedc279f96aefda24277184594c0ddd56d3402
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Jul 25 14:29:15 2015 -0700

    Tidy call.exp test collection
    
    Commit c952a92e20aa6013d8202d0b3fa1d87838c83054 moved all of
    the complex tests to libffi.complex, but failed to remove the
    anti-globbing from libffi.call.

commit 609db2fbe41a56c1a8cd5653d248f08b88ea803f
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Jul 25 12:42:04 2015 -0700

    Test case from Issue #70

commit e9de7e35f2339598b16cbb375f9992643ed81209
Merge: d19b6cc7 0ebde2d2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 11 10:54:50 2015 -0400

    Merge pull request #202 from tromey/note-prep-cif-var-usage
    
    document that there must be ntotalargs types

commit d19b6cc78e956e7ffd48b39fd7c441c22e633ce2
Merge: 17ffc365 36f3fb91
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 11 10:54:22 2015 -0400

    Merge pull request #201 from tromey/fix-texinfo-buglet
    
    Add missing "@" to @var{}

commit 0ebde2d24a3deb7b0cdf5cb1e625b55af2834fde
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Oct 6 11:42:43 2015 -0600

    document that there must be ntotalargs types

commit 36f3fb91412a6f10bd2c6dde01f4d7afa1f2f2c0
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Oct 5 10:20:05 2015 -0600

    Add missing "@" to @var{}

commit e061243958d63080956887e121d275533570f7cc
Author: Pan7 <panter@gmx.net>
Date:   Mon Sep 14 08:25:09 2015 +0200

    Fix configuring msvc compiler

commit 505346e18fe20eee7eb69a23a48f6951858c5267
Author: Zhang Fuxin <zhangfx@lemote.com>
Date:   Wed Aug 26 09:57:10 2015 +0800

    fix type error in unwind code

commit 5953c66bd7510b048b332b4e7450f3fb8d687f8b
Author: foxsen <2503799872@qq.com>
Date:   Thu Aug 20 20:28:13 2015 +0800

    add unwind infor for *go_closure;
    reorder the labels to make thing more clear

commit f0ecd5d40397d4616ba0bf3e2521da2663b5bd97
Author: Zhang Fuxin <zhangfx@lemote.com>
Date:   Tue Aug 11 12:47:36 2015 +0800

    fix O32 stack unwind code
    add missing 1: label

commit 6f0201c803a9a1f0f9b6fd226a42fb8daa223928
Author: foxsen <2503799872@qq.com>
Date:   Tue Aug 4 18:25:34 2015 +0800

    various fixes for go closure support. Now all n64 tests passed.

commit 697dd4e8a03625a9b1448aa696978d8dcc57d438
Author: foxsen <2503799872@qq.com>
Date:   Tue Aug 4 12:53:33 2015 +0800

    add support for go closure support on mips

commit 43fc5bca48715a522b34c1124589575063362a90
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Aug 3 23:34:05 2015 +0930

    Correct powerpc sysv stack argument accounting
    
    ppc32 starts using the stack for integer arg passing when we run out
    of integer arg passing registers.  Similarly, we start using the stack
    for floating point args when we run out of floating point registers.
    The decision on where an integer arg goes does not depend on number of
    floating point args, nor does the decision on where a floating point
    arg goes depend on number of integer args.  Alignment of stack args
    also simply depends on number of stack args.
    
    This patch untangles the horrible mess we had, with intarg_count being
    wrongly used to count both integer args and stack words.
    
            * src/powerpc/ffi_sysv.c (ffi_prep_cif_sysv_core): Count fprs,
            gprs, and stack words separately.
            (ffi_prep_args_SYSV): Similarly.

commit 1f6b5a91f417ac77d2fe9b0b3eb66293db132e2e
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Jul 26 16:27:34 2015 -0700

    Support the WIN64/EFI64 calling convention on all X86_64 platforms
    
    Add a new calling convention FFI_EFI64, alias FFI_WIN64, on all X86_64
    platforms.  This allows libffi compiled on a 64-bit x86 platform to call
    EFI functions.
    
    Compile in ffiw64.c and win64.S on all X86_64 platforms.  When compiled
    for a platform other than X86_WIN64, ffiw64.c suffixes its functions
    with _efi64, to avoid conflict with the platform's actual
    implementations of those functions.

commit 6de51f3e04e496901ea1bd8f9b44f75c9f01b599
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Jul 26 16:23:55 2015 -0700

    src/x86/ffiw64.c: Don't assign a "char *" to an "unsigned char *"
    
    Declare a local variable to match the type of the struct field assigned
    to it, rather than adding unsigned to the type.  Fixes a -Wpointer-sign
    warning.

commit eaa59755fcbb692a8cb763c7f9f24a350aadbd30
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Jul 26 17:17:16 2015 -0700

    src/x86/win64.S: Handle name mangling and PIC
    
    Move the macros from unix64.S into a shared header asmnames.h and use
    them in win64.S too.

commit c8e82d9fbffd3eeaef0266a1aac64d7bd13ee9c3
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Jul 26 16:18:57 2015 -0700

    src/x86/win64.S: Support compiling on non-WIN64 platforms
    
    Non-WIN64 versions of the GNU assembler don't support the .seh_*
    directives for structured exception handling, so wrap them in a macro
    that compiles to nothing.
    
    Handle the registers used for the non-Windows x86-64 calling convention
    when on a non-Windows platform.  Distinguish between cases that should
    refer to the native argument registers (defined as arg0, arg1, arg2, and
    arg3) and cases that should always refer to the Windows argument
    registers.

commit fa7a257113e2cfc963a0be9dca5d7b4c73999dcc
Author: Havard Graff <havard.graff@gmail.com>
Date:   Tue May 12 10:45:13 2015 +0200

    Add configure-option to disable building docs

commit e3d2812ce43940aacae5bab2d0e965278cb1e7ea
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Sat Apr 25 19:03:03 2015 +0800

    Modified arm/sysv.S to remove directives not allowed by clang.

commit 17ffc3655a531c116e9eb9cc933e50bb1e5c47f8
Merge: 173757ce a5b3eaa2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 29 21:38:26 2015 -0400

    Merge pull request #185 from freakboy3742/t184
    
    Fixed #184 -- Corrected source file references in Darwin source generator tool.

commit 173757ce973a2f12ad36ac6cda593581b225f9e3
Merge: f5ec6279 dd9e4c8d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 29 21:38:12 2015 -0400

    Merge pull request #186 from freakboy3742/gitignore
    
    Added generated source file to .gitignore.

commit dd9e4c8d46b65104a24a9858accd0936ca44b98f
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Fri Mar 13 08:03:13 2015 +0800

    Added generated source file to .gitignore.

commit a5b3eaa279a2e54721d44eeefdfd1962cf63caaf
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Fri Mar 13 07:59:11 2015 +0800

    Fixed #184 -- Corrected file references in Darwin source generator tool.

commit f5ec6279a4698a8752093247a500cf76096ff157
Merge: 06747d31 95df3791
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 4 13:58:04 2015 -0500

    Merge pull request #178 from rth7680/aa64-ilp32
    
    aarch64: Handle ILP32 ABI

commit 95df3791935d934d92b0c852af1e655285157b70
Author: Andrew Pinski <apinski@cavium.com>
Date:   Wed Feb 11 08:31:48 2015 -0800

    aarch64: Handle ILP32 ABI

commit 06747d318761884e70dfa433a9548219fd779d7d
Merge: db1b34b7 6c535775
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 29 07:22:23 2015 -0500

    Merge pull request #176 from 0-wiz-0/master
    
    Handle NetBSD/powerpc the same as FreeBSD and OpenBSD.

commit 6c5357757f188577fffcd2890ef7a0f53e77de20
Author: Thomas Klausner <wiz@NetBSD.org>
Date:   Thu Jan 29 12:32:28 2015 +0100

    Handle NetBSD/powerpc the same as FreeBSD and OpenBSD.
    
    Signed-off-by: Thomas Klausner <wiz@NetBSD.org>

commit db1b34b7e1f5e473d17557e454a29933dfecd1af
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 28 18:08:06 2015 -0500

    Remove incomplete sentence

commit 56036a6b58acb9e854719e315a0738f16e354c35
Merge: 035715b3 2104b2a4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 28 18:03:57 2015 -0500

    Merge pull request #175 from rth7680/sparc
    
    sparc: Re-introduce hand-written unwind info

commit 035715b3330421806df36ec4ac7ccecc86458540
Merge: 31a61853 b0e97963
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 28 18:03:06 2015 -0500

    Merge pull request #174 from rth7680/fbsd
    
    configure: Run HAVE_AS_X86_PCREL for all X86 targets

commit 2104b2a4fc923b8d82647c3fbbd8a8ca20bb24c8
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Jan 26 12:43:57 2015 -0800

    sparc: Re-introduce hand-written unwind info
    
    Fixes the build with the Solaris assembler.

commit b0e9796344562ea8e1ef28e9b04db6be26ca29fb
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Jan 27 22:10:12 2015 -0800

    configure: Run HAVE_AS_X86_PCREL for all X86 targets

commit 31a618530737cc8f1666845f8e65a3c097f6d408
Merge: d6675c16 53636634
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 21 05:55:47 2015 -0500

    Merge pull request #170 from fealebenpae/aarch64-trampoline-table
    
    Support closures on ARM64 iOS

commit d6675c16cc2b5a0e32c4538e5a4f555c91e6bb56
Merge: a25a46a7 3ac1610a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 21 05:53:21 2015 -0500

    Merge pull request #172 from rth7680/fixes
    
    x86: Fix cygwin32 build

commit 3ac1610aa33c887ea9b14935208943925714a33e
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Jan 19 20:48:40 2015 +0100

    x86: Fix cygwin32 build
    
    The section syntax is just that little bit different.

commit a25a46a7fe4f7ae27fbd6e08a2540678899914e9
Merge: 5cd411ad 1ad0b171
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 16 17:32:07 2015 -0500

    Merge pull request #171 from rth7680/fixes
    
    Fixes from mainline gcc

commit 1ad0b17177526be86736e245fbcc21eadaf7cb36
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Jan 16 13:30:05 2015 -0800

    sparc: Also mark the return address in unwind info

commit d68c8aed19d459a9fef0847f316dd9473ef263ad
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Jan 16 11:40:33 2015 -0800

    sparc: Solaris fixes, part 2
    
    /bin/as seems to only understand single-digit labels
    /bin/as knows nothing about .rept/.endr

commit b740ab7cc955fc2888325e6387207f34400a6c45
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date:   Fri Jan 16 11:32:23 2015 -0800

    sparc: Solaris fixes
    
    * /bin/as requires .type fn,#function instead of @function.
    * /bin/as doesn't support .macro/.endm.  I'm using preprocessor macros
      instead to implement E in src/sparc/v[89].S.

commit f1560b7bbeb57042a32dfde487c3d21bd9ef6a51
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date:   Fri Jan 16 11:31:37 2015 -0800

    x86: Solaris fixes
    
    * Solaris/x86 /bin/as doesn't support .org, so I've just disabled the
      uses in src/x86/{sysv, unix64}.S, as on Darwin.
    * Solaris/x86 needs to use EH_FRAME_FLAGS so manually and compiler
      generated .eh_frame sections match, otherwise libffi.so fails to link:
    * Solaris/x86 /bin/as has different COMDAT syntax; I've disabled it for
      the moment.

commit 536366349ced9d57c873d64e219ba30992a83c06
Author: Yavor Georgiev <fealebenpae@gmail.com>
Date:   Fri Jan 16 15:19:38 2015 +0200

    aarch64: implement the trampoline table workaround for ffi closures on Apple systems
    
    This is a direct copy/paste port of the ARM code, with changes because of Aarch64 pc-relative addressing restrictions.

commit 05e65b4e2064f24669e8cc1c1cece1cbb0577548
Author: Yavor Georgiev <fealebenpae@gmail.com>
Date:   Fri Jan 16 15:18:04 2015 +0200

    aarch64: rewrite range syntax into list to appease Clang
    
    Clang's assembler in Xcode 6 appears to choke when the operand of st4 is a range, but is happy with a list.

commit 5cd411ad5d62b1dadfd02f75f99121801c8be4c9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 13 15:44:03 2015 -0500

    New test case for old aarch64 bug

commit e46842b4149e19106a9eb6066ef022d8b6a7ad5d
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Jan 13 07:23:48 2015 -0800

    Remove extra brackets in configure.host
    
    This table is no longer in configure.ac, needing
    protection from m4.

commit f27c4e46734fa1342236b16161e6006a9d2557e9
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Jan 13 07:22:07 2015 -0800

    x86: Fix thinko in ffi_raw_call
    
    Missed structure initialization for raw path.
    Apparently there are no tests for this outside gcc.

commit c82cc159426d8d4402375fa1ae3f045b9cf82e16
Merge: 1c61e73a e1a5ddb3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:25:26 2015 -0500

    Merge pull request #166 from chevah/master
    
    Fix expr error in Solaris 10 when using gcc.

commit 1c61e73ad8e920d6bff337fac02de71f3a66bc38
Merge: dd0b59a5 3fa5d70c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:23:30 2015 -0500

    Merge pull request #165 from rth7680/pcc
    
    Support PCC as producer and consumer

commit dd0b59a5cf63e0f9602c76fc89a4cb62593ff6f1
Merge: 9131039c b7f6d7aa
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:22:55 2015 -0500

    Merge pull request #164 from rth7680/darwin
    
    Fix build on darwin

commit 9131039c93b6ecd1c3946905a3b6dafb5dc4ee40
Merge: 4ca2262a 7282d328
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:22:42 2015 -0500

    Merge pull request #160 from nobu/msvc-no-complex
    
    x86: MSVC does not support Complex type

commit 4ca2262ad61189276b2d95aab652a23c8db2a5b9
Merge: 58bf7d65 5f8881a5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:21:37 2015 -0500

    Merge pull request #159 from nobu/fix-void-arith
    
    x86: Fix void pointer arithmetic

commit e1a5ddb3067f83563cb8a6b8ac4d0f58d4699262
Author: Mișu Moldovan <dumol@chevah.com>
Date:   Wed Jan 7 17:51:07 2015 +0200

    Fix expr error in Solaris 10 when using gcc.

commit 3fa5d70cbb18b39a5e44f1c7984dedf73446bf6c
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Jan 5 13:03:06 2015 -0800

    x86: Avoid fastcall when building with pcc
    
    Apparently, PCC doesn't support the fastcall calling convention.
    Nor does it issue a warning or error for the attribute that it
    does not understand.

commit a03d2310ed53bb8b3a4610af04015ef9df6ea36c
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Dec 24 16:03:34 2014 -0800

    x86: Load structure return address into eax

commit b7f6d7aa9b0d7b19eec28a945251e09a4b65b275
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Dec 10 13:37:36 2014 -0800

    x86: Reinstate hand-written unwind info for sysv.S

commit 6cedf81ca7cbad01b3fcc2c4475d860095bfb062
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Dec 10 09:43:58 2014 -0800

    x86: Expand FFI_GO_CLOSURE
    
    If we're going to have to hand-write unwind info for darwin,
    these macros make the job harder.

commit ae842a515b6e2a486d73ce8f9dbe5fee6c3fd1ff
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Tue Nov 25 11:43:40 2014 +0100

    x86: More Darwin unwind fixups
    
    EHFrame{N} IIRC is a special cue to ld64 that it should treat the unwind
    in the object as "special/legacy" .. [these days everything is .cfi_xxxx
    (except, cctools-as, as you noted)] .. without that much confusion arises
    with ld64's atom-isation of the eh_frame section.
    
    xxxx.eh labels are not needed for darwin ld64 >= 85.2.1 (i.e. darwin9,
    xcode 3.1.4) to all intents and purposes, that's all that matters now,
    since I think that anyone trying to build on 10.4/darwin8/xcode2.5 would
    have to use a later ld64 (from odcctools) for other reasons.

commit 8fa3c9f24b5ef6da2f24a9f071984d033dd9e00c
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Nov 25 09:27:54 2014 +0100

    x86: Reinstate hand-written unwind info for unix64.S
    
    One more try to get default Darwin to work.

commit 5f35e0ffcc05a72ce0aacf228dc06d1262754660
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 16:26:50 2014 +0100

    x86: Avoid using gas local labels
    
    Which are unsupported by Darwin cctools as.
    Thankfully this doesn't uglify the source too much.

commit ed1ca2777c35fe2f2751de255df3e16f17bdbd8d
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 13:02:03 2014 +0100

    x86: Remove use of .cfi_escape
    
    The unwind info isn't 100% correct at all points during the epilogue,
    and not annotating is just as incorrect as the annotation.  This works
    better on systems that do not support DW_OP_call_frame_cfa.

commit 1b12593d7e595c03e5c06377feaeb8ad1b813681
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 12:55:43 2014 +0100

    x86: Honor alignment of arguments
    
    Darwin aligns long-double to 16, and thus all of the long double
    tests were failing due to not honoring that.  We ought to be able
    to devise a test case for GCC using __attribute__((aligned)) that
    would have failed too.

commit 042b8dafeeee82667e00660fb1edeab72fd9de47
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 11:24:02 2014 +0100

    x86: Use .balign not .align
    
    The Apple assembler defaults to power of two alignment, rather than
    byte alignment like everyone else.  Force byte alignment by using
    the proper directive.

commit 0172bc029cd943dce99f82b9d857c51e746574e5
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 10:42:02 2014 +0100

    x86: Disable .org for Darwin

commit 9f112619c187e135132b765adeedef89ee354eb2
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Nov 22 20:02:43 2014 +0100

    x86: Best guess at update for Darwin

commit 7282d3289c6f6e2cc21e2c2b554c33af00ac3474
Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
Date:   Mon Dec 22 17:14:40 2014 +0900

    x86: MSVC does not support Complex type

commit 5f8881a5913a9554cbc2b5fed7057627b9bb9ece
Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
Date:   Mon Dec 22 17:08:08 2014 +0900

    x86: Fix void pointer arithmetic

commit 58bf7d65d8896f198624c591cc31e6e01a09cc31
Merge: 75b2199f 7ba30b19
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Dec 20 10:20:40 2014 -0500

    Merge pull request #158 from rth7680/s390
    
    S390

commit 7ba30b19060dfefefeb91970a862e5b215606602
Author: Richard Henderson <rth@redhat.com>
Date:   Fri Dec 19 11:38:17 2014 -0500

    s390: Inline and tidy ffi_prep_args
    
    As per discussion with Ulrich Weigand, document the restrictions
    on the code within ffi_call_int as we simultaneously prepare
    stack frames for ffi_call_SYSV and the target function.

commit f69ec6f35db93163b7f33e43129d274995c8122d
Author: Richard Henderson <rth@redhat.com>
Date:   Thu Dec 18 16:21:07 2014 -0500

    s390: Use pc-relative insns in 31-bit mode
    
    It's silly to stick to esa/390 features when the compiler won't.
    Detect when brasl and larl are used by the compiler and then use
    them in the assembly.

commit 2f530de168e0253ac06e044c832132c496e8788b
Author: Richard Henderson <rth@redhat.com>
Date:   Thu Dec 18 16:01:59 2014 -0500

    s390: Reorganize assembly
    
    Avoid using ffi_prep_args as a callback; do all the work setting
    up the frame within ffi_call_int directly.  Save fewer registers
    in ffi_closure_SYSV.

commit 97512ded052678993ffcfa3aec0035cce1585138
Author: Richard Henderson <rth@redhat.com>
Date:   Thu Dec 18 16:01:15 2014 -0500

    s390: Avoid aliasing warnings

commit c860ca9ac0fc7ee44124c5637dda751f55e4fa3f
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Dec 17 13:24:03 2014 -0500

    s390: Kill trailing whitespace

commit 02b7c89967307cea91714fb6e4e53048e1b5396e
Author: Dominik Vogt <vogt@linux.vnet.ibm.com>
Date:   Wed Dec 17 13:20:51 2014 -0500

    s390: Go closure support

commit 75b2199f264f42de814528ccf4bfd2ef427665b5
Merge: 8a3a2723 2f652469
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Dec 12 10:13:56 2014 -0500

    Merge pull request #157 from rth7680/x86
    
    Two fixes for x86

commit 8a3a2723aaa615cb95ee1c798469d7a3b2d95d31
Merge: 9ae3bc87 542e0047
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Dec 12 10:13:27 2014 -0500

    Merge pull request #156 from rth7680/sparc
    
    sparc: Define FFI_TARGET_SPECIFIC_VARIADIC for v9

commit 2f652469684d6d2b3e54705294c7e81cffe1341f
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Dec 11 14:16:00 2014 -0800

    x86: Handle void arguments as if an empty structure
    
    Since libffi currently doesn't allow empty structures, libgo
    currently maps them to ffi_type_void.  Given that we'll abort
    on this case, handle it gracefully.

commit 097ccfd6a6b94a3c3b5bfc269a7afd1dc4f7a051
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Dec 10 13:25:14 2014 -0800

    x86: Fix some unwind errors

commit 9ae3bc870ee07820b60d368f137ea3b5daca850e
Author: James Greenhalgh <james.greenhalgh@arm.com>
Date:   Sat Dec 6 23:58:41 2014 -0500

    Fix for https://github.com/atgreen/libffi/issues/141

commit a5a40960bb6ccb029d2d9d4e18d37f6e0dacb913
Merge: 9ca43706 590663b3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 19 21:13:50 2014 -0500

    Merge pull request #151 from amodra/master
    
    powerpc: go closures for linux

commit 590663b30b1f35b6136cf55d8870a2394ed78c21
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Nov 18 12:56:58 2014 +1030

    powerpc: Fix ffi_go_closure_linux64
    
    Unlike ffi_closure_LINUX64, this entry point is called normally,
    so we already have the TOC in R2 and the closure in R11.
    
            * powerpc/linux64_closure.S (ffi_closure_LINUX64): Remove a
            register dependency chain.
            (ffi_go_closure_linux64): Don't load r11 or r2.

commit fa1040c111b3e423bc9c7e78d9af89470c0fa2fb
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 10 09:42:31 2014 +1030

    GO closures for powerpc linux
    
    Plus .cfi async unwind info, rearrangement of ffi_call_linux64 and
    ffi_call_SYSV function params to avoid register copies, tweaks to
    trampolines.
    
            * src/powerpc/ffitarget.h (FFI_GO_CLOSURES): Define.
            * src/powerpc/ffi.c (ffi_call_int): New function with extra
            closure param, and args rearranged on ffi_call_linux64 and
            ffi_call_SYSV calls, extracted from ..
            (ffi_call): ..here.
            (ffi_call_go, ffi_prep_go_closure): New functions.
            * src/powerpc/ffi_linux64.c (ffi_prep_closure_loc_linux64): Make
            hidden.  Only flush insn part of ELFv2 trampoline.  Don't shuffle
            ELFv1 trampoline.
            (ffi_closure_helper_LINUX64): Replace closure param with cif, fun,
            user_data params.
            * src/powerpc/ffi_powerpc.h (ffi_go_closure_sysv): Declare.
            (ffi_go_closure_linux64): Declare.
            (ffi_call_SYSV, fi_call_LINUX64): Update.
            (ffi_prep_closure_loc_sysv, ffi_prep_closure_loc_linux64): Declare.
            (ffi_closure_helper_SYSV, ffi_closure_helper_LINUX64): Update.
            * src/powerpc/ffi_sysv.c (ASM_NEEDS_REGISTERS): Increase to 6.
            (ffi_prep_closure_loc_sysv): Use bcl in trampoline, put data words
            last, flush just the insn part.
            (ffi_closure_helper_SYSV): Replace closure param with cif, fun and
            user_data params.
            * src/powerpc/linux64.S (ffi_call_LINUX64): Replace hand-written
            .eh_frame with .cfi directives.  Adjust for changed param order.
            Pass extra "closure" param to user function in static chain.  Add
            .cfi directives to describe epilogue.  Don't provide traceback
            table for ELFv2 or _CALL_LINUX.
            * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Replace
            hand-written .eh_frame with .cfi directives.  Adjust for changed
            ffi_closure_helper_LINUX64 params.  Add .cfi directives to
            describe epilogue.  Don't provide traceback table for ELFv2 or
            _CALL_LINUX.
            (ffi_go_closure_linux64): New function.
            * src/powerpc/sysv.S: Remove redundant .globl ffi_prep_args_SYSV.
            (ffi_call_SYSV): Make hidden.  Replace hand-written .eh_frame with
            .cfi directives.  Adjust for changed params.  Pass extra "closure"
            param to user function in static chain.  Add .cfi directives to
            describe epilogue.
            * src/powerpc/ppc_closure.S (ffi_closure_SYSV): Make hidden.
            Replace hand-written .eh_frame with .cfi directives.  Adjust for
            changed ffi_closure_helper_SYSV params.  Add .cfi directives to
            describe epilogue.  Don't just use nops in the dead __NO_FPRS__
            epilogues.
            (ffi_go_closure_sysv): New function.

commit d3d06f4c94847402a08f0e4e2af2e4d726ed3180
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 10 13:50:05 2014 +1030

    Fix powerpc breakage from 6e8a4460
    
            * src/powerpc/ffitarget.h: #error on unexpected FFI_TYPE_LAST.
            (FFI_PPC_TYPE_LAST): Define.
            (FFI_TYPE_UINT128): Define in terms of FFI_PPC_TYPE_LAST.
            (FFI_SYSV_TYPE_SMALL_STRUCT, FFI_V2_TYPE_FLOAT_HOMOG): Likewise.
            (FFI_V2_TYPE_DOUBLE_HOMOG, FFI_V2_TYPE_SMALL_STRUCT): Likewise.

commit 9ca43706f9e59ee3a0b288884c90fd51d8926a9b
Merge: 5211c720 a9ed0c3a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 19 11:32:08 2014 -0500

    Merge pull request #148 from gpakosz/dlmalloc-preprocessor-fix
    
    dlmalloc: change defined(i386) to defined(__i386__)

commit 542e004710e3f1d7c137bba305a16538cd6257d6
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Nov 18 05:07:00 2014 -0800

    sparc: Define FFI_TARGET_SPECIFIC_VARIADIC for v9
    
    This is a port of
    
      http://gcc.gnu.org/viewcvs?rev=207763&root=gcc&view=rev
    
    aka GCC PR libffi/60073, to the rewritten Sparc codebase.
    Supposedly, we should have seen failures with the existing
    libffi.call/cls_double_va.c testcase, but I hadn't.
    Perhaps a gcc newer than 4.6.3 is required to see that...

commit a9ed0c3a0428f5fd4ed2166fa95a608595e11a4d
Author: Gregory Pakosz <gpakosz@myscript.com>
Date:   Tue Nov 18 09:37:07 2014 +0100

    dlmalloc: change defined(i386) to defined(__i386__)
    
    When compiling with --std==c99, GCC and clang don't define i386 but __i386__

commit 5211c7207ec81dfdfa9acdcd86b49b9ff66b9d91
Merge: 3316b666 ccdd7bb8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 17 09:07:07 2014 -0500

    Merge pull request #147 from rth7680/go/alpha
    
    testsuite: Fix alpha static chain register name

commit ccdd7bb8566b2fd1da5c4b5c8eaa2db43a69e720
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Nov 16 12:12:23 2014 +0100

    testsuite: Fix alpha static chain register name

commit 3316b666e3074fe0eebff4fe0458979961b26651
Merge: b698638d dea49e20
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 15 07:31:41 2014 -0500

    Merge pull request #145 from rth7680/master
    
    Configure and testsuite cleanups, v2

commit b698638d7601de994410c5c1b2f5c2c648015b7b
Merge: a353d5b1 771fabc6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 15 07:29:58 2014 -0500

    Merge pull request #144 from atrosinenko/testsuite-fp-comparison-fix
    
    Floating point number comparison fix for testsuite

commit a353d5b16cfbb60f1a42bdec74b0f272701f3ecb
Merge: 4aa702a0 e029c70f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 15 07:27:21 2014 -0500

    Merge pull request #143 from adamkaplan/patch-1
    
    Update i386 & armv7 minimum iOS version to 7.0

commit dea49e2020b2fc97ba9293200f316f7a7b3ca73b
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 14 13:05:14 2014 +0100

    x86: Fix typo in ffi_prep_go_closure
    
    Used the wrong register for THISCALL and FASTCALL.

commit c9f5b6648b0f052bbca8b50615284dd975e9ed29
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 14 13:04:33 2014 +0100

    testsuite: Add trivial tests for Go closures

commit c952a92e20aa6013d8202d0b3fa1d87838c83054
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 14 11:00:14 2014 +0100

    testsuite: Move complex tests to their own subdirectory
    
    It seems a bit silly to isolate them by globbing vs "*complex*"
    when we can just as easily put them in their own subdirectory.

commit f1301a54bb80e6ae23f7687c68f36875dae69134
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 14 10:50:29 2014 +0100

    testsuite: Use feature test rather than enumeration for complex

commit b5ade2fb5d9ba06519484677a5474e5dad48c2e3
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 13 09:06:10 2014 -0800

    testsuite: Detect clang
    
    Clang doesn't like the -Wno-psabi argument that we want to pass to GCC.
    Since clang is detected as GCC via __GNUC__, use ax_cv_c_compiler_vendor.

commit 5d69d57a053c5049df29242def492159e1fadbae
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 13 13:50:39 2014 +0100

    configure: Move target source selection into configure.host
    
    This eliminates the AM_CONDITIONAL ugliness, which eliminates
    just a bit of extra boilerplate for a new target.
    
    At the same time, properly categorize the EXTRA_DIST files
    into SOURCES and HEADERS, for the generation of ctags.

commit 771fabc6d5379e64e5ab9e5f1ca6eb5960617432
Author: Anatoly Trosinenko <anatoly.trosinenko@gmail.com>
Date:   Fri Nov 14 14:21:35 2014 +0300

    Take a float absolute value using fabs() instead of abs().
    
    Replace integer abs() by floating point fabs() in the approximate
    equality check for float values.

commit 9622ede2e24067a09380c63da8d5007ec1f03dc4
Author: Anatoly Trosinenko <anatoly.trosinenko@gmail.com>
Date:   Fri Nov 14 13:18:04 2014 +0300

    Fix floating point number comparisons in testsuite/libffi.call/float[123].c.
    
    Rewrite the checks for approximate equality of floating point return
    values to be in the form "fabs(a - b) < EPS" instead of just
    "a - b < EPS".

commit e029c70fa7da7a489157b2a2a88349aaffb051de
Author: Adam <adkapx@gmail.com>
Date:   Thu Nov 13 15:08:16 2014 -0500

    Update i386 & armv7 minimum iOS version to 7.0
    
    iOS 5 (and any below 7.1) is deprecated. Apple doesn't distribute the supporting libraries for this platform anymore as of Xcode 6, so it causes a linker error.

commit 57f52484573613e2def21171184f50bd72209cac
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 13 12:42:54 2014 +0100

    configure: Split out configure.host
    
    Split out the host case statement to a separate file, so that
    we don't have to regenerate configure.in for changes therein.

commit f8632815a6515a6709802ad23909585664ba1b9d
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 13 12:32:35 2014 +0100

    powerpc: Delete patch output
    
    Clearly added by mistake.

commit 4aa702a0e0ffc9b8a672af380103f607d339a822
Merge: 20562ac0 8d5debc7
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 12 08:08:57 2014 -0500

    Merge branch 'rth7680-go-closure'

commit 8d5debc7904aa5c4f1fbf5d5b26450ec5a5b43c6
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 12 08:04:51 2014 -0500

    Update in preparation for next release

commit 56735e05fed77a3920a8cac262666c9eb0e75b66
Merge: 20562ac0 0e303c06
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 12 07:11:53 2014 -0500

    Merge branch 'go-closure' of https://github.com/rth7680/libffi into rth7680-go-closure
    
    Conflicts:
            src/aarch64/ffi.c

commit 20562ac0427c3578250d04c6e34fb0127d4551cf
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 12 07:00:59 2014 -0500

    Fix for AArch64. Release as 3.2.1.

commit 0e303c065779afb42cfdb2ea20c0e1a557dc16f0
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 12 03:58:58 2014 -0800

    x86: Work around clang bugs
    
    http://llvm.org/bugs/show_bug.cgi?21500
    http://llvm.org/bugs/show_bug.cgi?21501
    http://llvm.org/bugs/show_bug.cgi?21515

commit 6eec410f1512d0584276db5f4b83711330e830d7
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Oct 26 15:29:04 2014 -0700

    sparc: Re-add abi compliant structure support
    
    The original code, removed in the "rewrite" patch, was incorrect for
    large structures, and required dynamic allocation of a trampoline on
    every ffi_call.
    
    Instead, allocate a 4k entry table of all possible structure returns.
    The table is 80k, but is read-only and dynamically paged, which ought
    to be better than allocating the trampoline.
    
    This is difficult to test with gcc.  One can only use -O0 at present.
    See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63668.

commit 92022496ef7a9439f48a2ef11e460c300ac863d7
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Oct 26 14:48:28 2014 -0700

    sparc: Add support for Go closures

commit ad89c2d9e93d5a713ae4113567b4ca6c4fbbf17c
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Oct 26 13:16:03 2014 -0700

    sparc: Add support for complex types

commit 20da5b41324de524ea3ee1f84f402828b7c332dc
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Oct 25 16:24:41 2014 -0700

    sparc: Handle more cases of structure return directly

commit 0686c2e71c8e094cf003f199e3f578bcdede43ba
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Oct 25 14:52:45 2014 -0700

    sparc: Preprocess float point struct return
    
    We can eliminate recursion and speed structure return
    by flattening a nested structure tree into a bitmask.

commit 2b27890ba77db6a23d37fc70897109e4b2803c2d
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 24 16:10:48 2014 -0700

    sparc: Rewrite everything
    
    It's impossible to call between v8 and v9 ABIs, because of the stack bias
    in the v9 ABI.  So let's not pretend it's just not implemented yet.  Split
    the v9 code out to a separate file.
    
    The register windows prevent ffi_call from setting up the entire stack
    frame the assembly, but we needn't make an indirect call back to prep_args.

commit 5d7b54450582f31d0d5d3ecca7f330b70446f195
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 24 11:45:53 2014 -0700

    sparc: Tidy up symbols
    
    Assembly to use local labels, .type annotation, hidden annotation.
    I do retain the _prefix for the symbols, but given that it wasn't
    done consistently across all symbols, I doubt it's actually needed.

commit fd4f7cc0cabae66a91e40f8645791740b9416bc1
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 24 11:11:53 2014 -0700

    sparc: Eliminate long double ifdefs

commit ab83cbb90b280195e636976098d3674f5ffc1d0a
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Oct 29 14:38:42 2014 -0400

    arm: Add support for Go closures

commit 6fa617dabc3d99e19d47ac9bc4127c56e3163008
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Oct 21 11:27:11 2014 -0400

    arm: Add argument space for the hidden struct return pointer
    
    This should have been failing all along, but it's only
    exposed by the complex_int test case.

commit a529bec27b64ab846ab2643ecbeb22e01f35c7dc
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Oct 21 11:26:59 2014 -0400

    arm: Add support for complex types

commit 5e88ebe62717b8e1e2f8d96c10f78a7134caa765
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Oct 20 15:10:43 2014 -0400

    arm: Remove internal FFI_TYPE constants
    
    These have been replaced by the contents of internal.h.

commit a4b785ea695e929b91d64e1e8b514411ae8bafe8
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 02:07:32 2014 -0400

    arm: Rewrite ffi_closure
    
    Move the push of the argument registers into ffi_closure_SYSV,
    reducing the size of the trampoline.

commit e7f15f60e86ad8931b2c4a516945d0b76b4bda20
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 01:27:16 2014 -0400

    arm: Rewrite ffi_call
    
    Use the trick to allocate the stack frame for ffi_call_SYSV
    within ffi_call itself.

commit a74a3aaddbcc730d9aa0a4787f136c9cc19b82b3
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 01:21:22 2014 -0400

    arm: Rewrite vfp_type_p
    
    Do not modify the ffi_type.  Rearrange the tests so that we
    quickly eliminate structures that cannot match.  Return an
    encoded value of element count and base type.

commit 0d39b4bb692b1a8e4f3354badcd9e123f8276bd4
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 01:02:52 2014 -0400

    arm: Deref ffi_put_arg arguments

commit 57b24fb3f5471262ce57e1a912774d6e7de5ada7
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 00:53:21 2014 -0400

    arm: Deref ffi_align argument

commit c129bea82a25c9b0f3af3bf48c35c55257092f87
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Oct 15 17:28:53 2014 -0400

    arm: Reindent arm/ffi.c

commit 9761b7bb70b4c47dc11dc74830964a0b3b3176d3
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 21:26:52 2014 -0700

    alpha: Add support for Go closures

commit f41bec3b576aa5ff8915b1188446c2dc086dfe64
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 20:46:48 2014 -0700

    alpha: Add support for complex types

commit 5f917371afcb4d3363fd33b547844c47264f6d4e
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 13:47:26 2014 -0700

    alpha: Clean up conversion of float values
    
    Don't use "real" conversion to double, lest we raise
    exceptions when passing signalling nans.

commit 32a26b75ba92665fa093b539318e83d916e3effb
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 12:33:53 2014 -0700

    alpha: Reorganize cif flags
    
    Unties the backend from changes to FFI_TYPE_* constants, and allows
    compilation to succeed after the addition of FFI_TYPE_COMPLEX.
    
    Delete the hand-written unwind info.

commit c6352b664c31835b9527d747f8a29b4754cabb0e
Author: Richard Henderson <rth@redhat.com>
Date:   Thu Oct 23 00:26:14 2014 -0400

    aarch64: Add support for Go closures

commit 0e41c73b092064e986d484270a13046479d6bda3
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 23:48:12 2014 -0400

    aarch64: Move x8 out of call_context
    
    Reduces stack size.  It was only used by the closure, and there
    are available argument registers.

commit a992f8789b5202ca180e67b16b47ee834160665c
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 22:58:09 2014 -0400

    aarch64: Add support for complex types

commit 658b2b56001e293848ea22b70068bd7f8daa7205
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 22:36:07 2014 -0400

    aarch64: Remove aarch64_flags
    
    This field was useless from the start, since the normal flags
    field is available for backend use.

commit 4a3cbcaa4f1d3834e0b74c9a841c3f51c5e0454c
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 22:32:13 2014 -0400

    aarch64: Unify scalar fp and hfa handling
    
    Since an HFA of a single element is exactly the same as scalar,
    this tidies things up a bit.

commit 12cf89ee04dc01650f71bc38ce414c953c83199a
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 21:53:30 2014 -0400

    aarch64: Move return value handling into ffi_closure_SYSV
    
    As with the change to ffi_call_SYSV, this avoids copying data
    into a temporary buffer.

commit 4fe1aea1211aaf228c2db867b8ac6f1620de72d4
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 17:06:19 2014 -0400

    aarch64: Move return value handling into ffi_call_SYSV
    
    This lets us pass return data directly to the caller of ffi_call
    in most cases, rather than storing it into temporary storage first.

commit 325471ea6a7bf954943485458a1bd391635dfaa8
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 13:58:59 2014 -0400

    aarch64: Merge prep_args with ffi_call
    
    Use the trick to allocate the stack frame for ffi_call_SYSV
    within ffi_call itself.

commit 8c8161cb623585d5d0c783b9d494b9b74ada6ced
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 12:52:07 2014 -0400

    aarch64: Tidy up abi manipulation
    
    Avoid false abstraction, like get_x_addr.  Avoid recomputing data
    about the type being manipulated.  Use NEON insns for HFA manipulation.
    
    Note that some of the inline assembly will go away in a subsequent patch.

commit b55e03665ddf2423df9baee0d3172892ba781c26
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 12:33:59 2014 -0400

    aarch64: Treat void return as not passed in registers
    
    This lets us do less post-processing when there's no return value.

commit 2e32f9bf6ffa6782b70fafe96bdf21c5aa44f534
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 22:49:05 2014 -0400

    aarch64: Use correct return registers
    
    There are fewer return registers than argument registers.

commit 95a04af134431ccc8230aca1641541a5e8fcbdc9
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 22:41:07 2014 -0400

    aarch64: Reduce the size of register_context
    
    We don't need to store 32 general and vector registers.
    Only 8 of each are used for parameter passing.

commit 77c4cddca6aeb6e545e21f235e29323e05f5a3a3
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 13:30:40 2014 -0400

    aarch64: Simplify AARCH64_STACK_ALIGN
    
    The iOS abi doesn't require padding between arguments, but
    that's not what AARCH64_STACK_ALIGN meant.  The hardware will
    in fact trap if the SP register is not 16 byte aligned.

commit b5f147d84761dc673ffe01d6af82bcde4ea47928
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 13:27:57 2014 -0400

    aarch64: Always distinguish LONGDOUBLE
    
    Avoid if-deffery by forcing FFI_TYPE_LONGDOUBLE different
    from FFI_TYPE_DOUBLE.  This will simply be unused on hosts
    that define them identically.

commit 38b54b9c180af13a3371e70a151a1a97e105b03f
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 13:17:39 2014 -0400

    aarch64: Improve is_hfa
    
    The set of functions get_homogeneous_type, element_count, and is_hfa
    are all intertwined and recompute data.  Return a compound quantity
    from is_hfa that contains all the data and avoids the recomputation.

commit 18b74ce54afab45fcf2a7d4eb86bb2ce9db8cec8
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 13:00:34 2014 -0400

    aarch64: Fix non-apple compilation

commit 2650f47fe8388f3281ec00e2d1e3bc777c1d3544
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 6 10:57:04 2014 -0800

    x86: Use win32 name mangling for fastcall functions

commit f8c64e2486c956109bf5255a0c0a85f24cc86c72
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 5 17:04:29 2014 +0100

    x86: Add support for Go closures

commit 198f469e91076f84ab6ac38055ad12a5490101cd
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 5 16:34:41 2014 +0100

    x86: Add support for Complex

commit b21ec1ce783f09335c0e6c6f96ccc7e89da5a1b4
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 5 10:15:25 2014 +0100

    x86: Rewrite closures
    
    Move everything into sysv.S, removing win32.S and freebsd.S.
    Handle all abis with a single ffi_closure_inner function.
    Move complexity of the raw THISCALL trampoline into assembly
    instead of the trampoline itself.
    Only push the context for the REGISTER abi; let the rest
    receive it in a register.

commit b9ac94f3af9b1ca1853850911b7d3bc058296c71
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Nov 1 15:10:34 2014 -0700

    x86: Rewrite ffi_call
    
    Decouple the assembly from FFI_TYPE_*.  Merge prep_args with ffi_call,
    passing the frame and the stack to the assembly.
    
    Note that this patch isn't really standalone, as this breaks closures.

commit 159d3788eb52b89ed6bc5dd6ebb85c02cd150232
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 31 12:07:02 2014 -0700

    x86: Convert to gas generated unwind info

commit e7b0056d60f29675072454a575eed98053fc63d6
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 30 13:57:39 2014 -0700

    x86: Force FFI_TYPE_LONGDOUBLE different from FFI_TYPE_DOUBLE
    
    There are few abis that set double = long double.  Eliminate the
    conditional compilation and let this code simply be unused there.

commit 4b2fad8fd583f1d9c36db0044c4d46316207aa49
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 30 12:41:31 2014 -0700

    x86: Remove some conditional compilation
    
    Removal of ifdefs made possible to due to ffi_abi unification.

commit ef76205647bca77796882d31f6ab5e889f461f07
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 30 12:13:31 2014 -0700

    x86: Tidy ffi_abi
    
    The x86_64 unix port only handles one ABI; don't define all of the
    other symbols.  The UNIX64 symbol retains the same value.
    
    The i386 ports ought to have the same symbols, even if we can't yet
    unify the values without incrementing the libffi soname.

commit 7cf841324f3d15c46833e0f2ddf8a98c4b24711e
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 7 06:56:55 2014 -0800

    testsuite: Add two dg-do run markers
    
    Caught by clang warning about unused -L parameter.

commit fc501750f41e2ee7f4268f490f590ce97a25a818
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 5 16:33:44 2014 +0100

    testsuite: Fix return_complex2 vs excessive precision
    
    Use the previously computed rc2 to validate, rather than
    recomputing a floating point result with excess precision.

commit 610c90bf7131de70318dc981a529a63ae36981b8
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Oct 28 11:21:50 2014 -0700

    x86_64: Add support for complex types

commit 32c56831636a489a1c5084e42ffbd935902b1033
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Oct 28 11:17:35 2014 -0700

    x86_64: Decouple return types from FFI_TYPE constants
    
    We can better support structure returns, and as prep for
    complex types.

commit 2e9dc1655600eb8928ebab13fa246187b6205109
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Oct 27 13:41:39 2014 -0700

    x86_64: Fixups for x32

commit ebd82769de5fc909ec9678aafca674ece394d173
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 23 23:57:06 2014 -0700

    win64: Remove support from ffi.c

commit 99db4d42acc7ee6d2ad206848be38083d7b5e094
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 23 14:12:18 2014 -0700

    win64: Rewrite
    
    It's way too different from the 32-bit ABIs with which it is
    currently associated. As seen from all of the existing XFAILs.

commit 6b62fb4a26d7363548a92f1a156562cfa648726e
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 11:11:58 2014 -0700

    x86-64: Support go closures
    
    Dumps all of the hand-coded unwind info for gas generated.  Move jump
    table data into .rodata.  Adjust ffi_call_unix64 to load the static
    chain.  Split out sse portions of ffi_closure_unix64 to
    ffi_closure_unix64_sse rather than test cif->flags at runtime.

commit 89bbde8b4e802625bdbf830ea14e938beea79835
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 10:55:11 2014 -0700

    Add ffi_cfi.h
    
    Have one copy of the HAVE_AS_CFI_PSEUDO_OP code
    to share between all backends.

commit e951d64c085267a30036907d02f94a70dee4c9d9
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 10:12:25 2014 -0700

    Add entry points for interacting with Go
    
    A "ffi_go_closure" is intended to be compatible with the
    function descriptors used by Go, and ffi_call_go sets up
    the static chain parameter for calling a Go function.
    
    The entry points are disabled when a backend has not been
    updated, much like we do for "normal" closures.

commit a0bdc5250cd36f1d2578358e33299fd2408091ac
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 11 09:43:01 2014 -0500

    Fix typo

commit 67c0c0705318d2e567fd48e680d63dca3619a235
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 11 07:30:49 2014 -0500

    Final 3.2 changes

commit ee826b933bbdeb68ee81876ffb508c3908eed371
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 11 07:29:26 2014 -0500

    Final 3.2 changes

commit c81a705d53be97899d314953987936213244b1ba
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 4 13:29:58 2014 -0500

    Mention OpenRISC

commit 6a17ad540d7ddb7a812687f4380bd0ef2d2865bb
Merge: 990eb9d4 0f316ab7
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 28 00:54:00 2014 -0400

    Merge pull request #134 from s-macke/openrisc
    
    Add OpenRISC support

commit 990eb9d4c244324771a7d878a168bb8eba1850c0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 28 00:50:29 2014 -0400

    Only run the complex type tests on supported platforms.

commit 0f316ab7c11b8315a838a6ae4645d36ff2c46f4c
Author: Sebastian Macke <sebastian@macke.de>
Date:   Sat Sep 27 00:19:15 2014 +0000

    Add OpenRISC support
    
    This patch adds support for the OpenRISC architecture.
    (http://opencores.org/or1k/Main_Page)
    
    This patch has been tested under Linux with QEMU-user emulation support.
    - 32 Bit
    - big endian
    - delayed instructions
    This is the only available configuration under Linux.
    
    The description of the ABI can be found on the official website.
    
    Is passes the testsuite except of the unwindtest_ffi_call.cc
    testcase, which seems to be a problem of gcc and not libffi.
    Some testcases of the gcc testsuite still fail.
    
    Signed-off-by: Sebastian Macke <sebastian@macke.de>

commit 6695983d2f0857caab220862de12f3f94a55bcf6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 07:44:37 2014 -0400

    Add complex type support. Mostly broken right now

commit fbbf48fbdf9b1491af0aefc00523a1b5d8bb9349
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 07:43:51 2014 -0400

    Compile tests with -Wno-psabi when using GCC

commit ae8d2554c5f192be54dadc9f99a1449b4df1b222
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 07:08:37 2014 -0400

    Update version to 3.2

commit b2ca59d39d2192021316561ea9dda3d35d8d35d9
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 07:08:05 2014 -0400

    More README updates for 3.2

commit f920a01ad8eafc79daaf331499ef9a97696c46a7
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 06:54:06 2014 -0400

    Update release notes.

commit bfcbf329c5e4bebdb32134d4e53260e17e4e66cc
Author: Bernd Edlinger <bernd.edlinger@hotmail.de>
Date:   Sat Sep 20 06:51:45 2014 -0400

    2014-05-11  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.

commit 32cb2ce81db9457c6bd43a2587d7fa23a2edb9b1
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Sat Sep 20 06:39:55 2014 -0400

    2014-09-10  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.

commit aaf3101ba81af8f488502881648e3f687721671e
Author: Matthias Klose <doko@ubuntu.com>
Date:   Sat Sep 20 06:37:04 2014 -0400

    Fix -Werror=declaration-after-statement problem

commit 6e8a4460833594d5af1b4539178025da0077df19
Author: Dominik Vogt <vogt@linux.vnet.ibm.com>
Date:   Sat Sep 20 06:21:19 2014 -0400

    2014-07-22  Dominik Vogt  <vogt@linux.vnet.ibm.com>
    
            * src/types.c (FFI_TYPEDEF, FFI_NONCONST_TYPEDEF): Merge the macros by
            adding another argument that controls whether the result is const or not
            (FFI_LDBL_CONST): Temporary macro to reduce ifdef confusion
            * src/prep_cif.c (ffi_prep_cif_core): Replace list of systems with new
            macro FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION
            * src/pa/ffitarget.h (FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION):
            Define.
            * src/s390/ffitarget.h (FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION):
            Define.
            * src/x86/ffitarget.h (FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION):
            Define.
    
    2014-07-22  Dominik Vogt  <vogt@linux.vnet.ibm.com>
    
            * doc/libffi.texi (Primitive Types): Document ffi_type_complex_float,
            ffi_type_complex_double and ffi_type_complex_longdouble
            (Complex Types): New subsection.
            (Complex Type Example): Ditto.
            * testsuite/libffi.call/cls_align_complex_double.c: New
            FFI_TYPE_COMPLEX test.
            * testsuite/libffi.call/cls_align_complex_float.c: Ditto.
            * testsuite/libffi.call/cls_align_complex_longdouble.c: Ditto.
            * testsuite/libffi.call/cls_complex_double.c: Ditto.
            * testsuite/libffi.call/cls_complex_float.c: Ditto.
            * testsuite/libffi.call/cls_complex_longdouble.c: Ditto.
            * testsuite/libffi.call/cls_complex_struct_double.c: Ditto.
            * testsuite/libffi.call/cls_complex_struct_float.c: Ditto.
            * testsuite/libffi.call/cls_complex_struct_longdouble.c: Ditto.
            * testsuite/libffi.call/cls_complex_va_double.c: Ditto.
            * testsuite/libffi.call/cls_complex_va_float.c: Ditto.
            * testsuite/libffi.call/cls_complex_va_longdouble.c: Ditto.
            * testsuite/libffi.call/complex_double.c: Ditto.
            * testsuite/libffi.call/complex_defs_double.c: Ditto.
            * testsuite/libffi.call/complex_float.c: Ditto.
            * testsuite/libffi.call/complex_defs_float.c: Ditto.
            * testsuite/libffi.call/complex_longdouble.c: Ditto.
            * testsuite/libffi.call/complex_defs_longdouble.c: Ditto.
            * testsuite/libffi.call/complex_int.c: Ditto.
            * testsuite/libffi.call/many_complex_double.c: Ditto.
            * testsuite/libffi.call/many_complex_float.c: Ditto.
            * testsuite/libffi.call/many_complex_longdouble.c: Ditto.
            * testsuite/libffi.call/return_complex1_double.c: Ditto.
            * testsuite/libffi.call/return_complex1_float.c: Ditto.
            * testsuite/libffi.call/return_complex1_longdouble.c: Ditto.
            * testsuite/libffi.call/return_complex2_double.c: Ditto.
            * testsuite/libffi.call/return_complex2_float.c: Ditto.
            * testsuite/libffi.call/return_complex2_longdouble.c: Ditto.
            * testsuite/libffi.call/return_complex_double.c: Ditto.
            * testsuite/libffi.call/return_complex_float.c: Ditto.
            * testsuite/libffi.call/return_complex_longdouble.c: Ditto.
            * src/raw_api.c (ffi_raw_to_ptrarray): Handle FFI_TYPE_COMPLEX
            (ffi_ptrarray_to_raw): Ditto.
            * src/prep_cif.c (ffi_prep_cif_core): Abort if FFI_TYPE_COMPLEX is not
            implemented in libffi for the target.
            * src/java_raw_api.c (ffi_java_raw_size): FFI_TYPE_COMPLEX not supported
            yet (abort).
            (ffi_java_raw_to_ptrarray): Ditto.
            (ffi_java_rvalue_to_raw): Ditto.
            (ffi_java_raw_to_rvalue):  Ditto.
            * src/debug.c (ffi_type_test): Add debug tests for complex types.
            * include/ffi.h.in (FFI_TYPE_COMPLEX): Add new FFI_TYPE_COMPLEX.
            (FFI_TYPE_LAST): Bump.
            (ffi_type_complex_float): Add new ffi_type_....
            (ffi_type_complex_double): Ditto.
            (ffi_type_complex_longdouble): Ditto.
    
    2014-07-22  Dominik Vogt  <vogt@linux.vnet.ibm.com>
    
            * src/s390/ffitarget.h (FFI_TARGET_HAS_COMPLEX_TYPE): Define to provide
            FFI_TYPE_COMPLEX support.
            * src/s390/ffi.c (ffi_check_struct_type): Implement FFI_TYPE_COMPLEX
            (ffi_prep_args): Ditto.
            (ffi_prep_cif_machdep): Ditto.
            (ffi_closure_helper_SYSV): Ditto.

commit 4c5c4088aa3e4d8103ff9ca441937da64fdd849a
Merge: 862f53de 5d6340ef
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 19:10:54 2014 -0400

    Merge pull request #132 from nielsAD/master
    
    Pascal and Register calling convention support on x86

commit 862f53de04ff898a128be7eec592bae60930d6df
Merge: 5df38407 aebf2c30
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 19:06:08 2014 -0400

    Merge pull request #130 from frida/fix/darwin-aarch64-float-alignment
    
    Fix alignment of FFI_TYPE_FLOAT for Apple's ARM64 ABI

commit 5df384077f3633ec8cf2e08f9199e5a44994dbad
Merge: 7b7a5284 0f4e09d2
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 19:05:35 2014 -0400

    Merge pull request #129 from frida/fix/darwin-aarch64-cif-prep
    
    Fix non-variadic CIF initialization for Apple/ARM64

commit 7b7a5284de7a99edfcee5ac362dbf76251698e1e
Merge: 4cd5e840 6172a995
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 18:28:05 2014 -0400

    Merge pull request #124 from knuesel/master
    
    Fix issue with builddir when calling configure with absolute path

commit 4cd5e840122e22636b5838943372c4ed74618e35
Merge: 1cee07be 08853e32
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 18:27:15 2014 -0400

    Merge pull request #123 from ehsan/clang-cl
    
    Add support for building with clang-cl

commit 5d6340ef2cf81432da79ac8b0b1b1218ab391438
Author: nielsAD <niels.a.d@gmail.com>
Date:   Mon Aug 25 17:29:44 2014 +0200

    Determine whether register arguments (THISCALL/FASTCALL/REGISTER) are really passed via register to closures. Use stack if not.

commit 6e346487b879b4b056a847268e381ae6efec4c21
Author: nielsAD <niels.a.d@gmail.com>
Date:   Mon Aug 25 12:23:29 2014 +0200

    Fixed THISCALL/FASTCALL closures and added basic support for PASCAL/REGISTER closures.

commit 098dca6b31e42dd0256ed7d966729e31961f1461
Author: nielsAD <niels.a.d@gmail.com>
Date:   Sat Aug 23 00:18:47 2014 +0200

    Support for calling functions with PASCAL and REGISTER calling conventions on x86 Windows/Linux.
    Also changed indentation to be more consistent throughout the (adjusted) files.

commit 08853e32fb6b750cda664ee6d3290d340429dd4d
Author: Ehsan Akhgari <ehsan@mozilla.com>
Date:   Thu Jul 31 20:33:33 2014 -0400

    Enable forcing the usage of the static CRT in libffi's msvc wrapper
    
    This is required for AddressSanitizer builds with clang-cl.

commit aebf2c3023b5ff056a708dc34169f7b549b2ec4f
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Fri Jul 25 21:40:50 2014 +0200

    Fix alignment of FFI_TYPE_FLOAT for Apple's ARM64 ABI

commit 0f4e09d27dc175ce3e95d070b794351663c7220e
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Sat Jul 26 00:11:06 2014 +0200

    Fix non-variadic CIF initialization for Apple/ARM64
    
    Turns out `aarch64_nfixedargs` wasn't initialized in the non-variadic
    case, resulting in undefined behavior when allocating arguments.

commit 6172a995e14bdbc6150aa02a361f710626a5c293
Author: Jeremie Knuesel <jeremie.knusel@sensefly.com>
Date:   Wed Jun 25 12:28:17 2014 +0200

    Fix issue with builddir when calling configure with absolute path

commit fb25cd08ed5a87640b02f0feeb10a09b37cfddbe
Author: Ehsan Akhgari <ehsan@mozilla.com>
Date:   Wed Jun 11 12:07:24 2014 -0400

    Add support for building with clang-cl

commit 1cee07be4712411baa5eb8af22698bc8443a6d6e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 12 06:30:59 2014 -0400

    Remove compiler warning

commit ad0d1d239afc7ad09203847793dcc020856d1035
Author: Samuli Suominen <ssuominen@gentoo.org>
Date:   Thu Jun 12 06:30:21 2014 -0400

    Fix paths in libffi.pc.in

commit df31a85103b0cc232bbc340d7e782a3853c7fad5
Merge: 69289c10 360aa8ca
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 6 08:24:35 2014 -0400

    Merge pull request #122 from rvandermeulen/1014976
    
    Don't make --enable-debug imply using the debug CRT in libffi

commit 360aa8ca1ead2fdaefa7b1c6f01ad001d8abae7e
Author: Mike Hommey <mh+mozilla@glandium.org>
Date:   Mon Jun 2 09:21:10 2014 -0400

    Bug 1014976 - Don't make --enable-debug imply using the debug CRT in libffi.

commit 69289c10b0acb4b52c8b5df4cf738193c618db40
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 31 08:54:08 2014 -0400

    Prepare for libffi 3.1.1

commit 978c9540154d320525488db1b7049277122f736d
Author: Samuli Suominen <ssuominen@gentoo.org>
Date:   Sat May 31 08:53:10 2014 -0400

    Add missing GNU stack markings in win32.S

commit cbc5a3c0200aa6c2cf8d6798d69a21501557c83f
Author: Ryan Hill <rhill@gentoo.org>
Date:   Sat May 31 08:26:34 2014 -0400

    Fix typo

commit 9d8e3018ac3d0d338373bff7eefa9f006746f4ec
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 24 23:28:42 2014 -0400

    Update current version.

commit 18d56cca5a4ee95ad48b129100adf26231518ed0
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 19 18:05:33 2014 -0400

    Increment libtool version number

commit 629f1029c47e522e4331988f02f32c203a070e28
Merge: 0403f332 c1166d4f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 19 18:04:28 2014 -0400

    Merge pull request #120 from l0kod/tmpfile
    
    Create temporary file with O_TMPFILE and O_CLOEXEC when available

commit c1166d4f653bf6d17ad8c265cf5e8da84e2e76dc
Author: Mickaël Salaün <mic@digikod.net>
Date:   Mon May 12 19:44:08 2014 +0200

    closures: Check for mkostemp(3)

commit 8daeed9570af72eb135c8ded460d2888f05b2e68
Author: Mickaël Salaün <mic@digikod.net>
Date:   Sun May 11 22:54:58 2014 +0200

    closures: Create temporary file with O_TMPFILE and O_CLOEXEC when available
    
    The open_temp_exec_file_dir function can create a temporary file without
    file system accessible link. If the O_TMPFILE flag is not defined (old
    Linux kernel or libc) the behavior is unchanged.
    
    The open_temp_exec_file_name function now need a new argument "flags"
    (like O_CLOEXEC) used for temporary file creation.
    
    The O_TMPFILE flag allow temporary file creation without race condition.
    This feature/fix prevent another process to access the (future)
    executable file from the file system.
    
    The O_CLOEXEC flag automatically close the temporary file for any
    execve. This avoid transmitting (executable) file descriptor to a child
    process.

commit 0403f332b1f478696c30d3d8a0e2f6eef24aaf88
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 19 09:41:32 2014 -0400

    Update date. Annoucing 3.1 today.

commit 94ac0c168ee7b115409121d88b25a4979446c8da
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 19 09:37:21 2014 -0400

    Increment libtool library revision number

commit 57465744b6e1295d7202de5a7734df589518f1c8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 11 10:30:22 2014 -0400

    Update to version 3.1

commit 0c2251a42df5108b6d9ebe5fe1cf83d0bcdf660e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 11 10:22:30 2014 -0400

    Support versions of git older than 1.8.5

commit 70c303cb88e23aaee91c87c56b108c50ab4f3c2f
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 11 09:56:40 2014 -0400

    Fix testsuite for GCC 4.9.0

commit 52b3457093ed19b2a7c5fcf243c4014c90ce6225
Author: Magnus Granberg <zorry@gentoo.org>
Date:   Sun May 11 09:55:28 2014 -0400

    Check /proc/self/status for PaX status.

commit 7ba4c5d72aa440a4b21fb57e999e67c5957761da
Author: Dominik Vogt <dominik.vogt@gmx.de>
Date:   Sun May 11 09:52:47 2014 -0400

    Use to get correct dir

commit 31e0d4ecff6dc2a6c75a066ee099b52a43f6ba27
Merge: 1c0e9a72 99909eb6
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Apr 23 19:24:47 2014 -0400

    Merge pull request #119 from joshtriplett/fastcall-fastball
    
    src/x86/win32.S: Define ffi_closure_FASTCALL in the MASM section, too

commit 99909eb6184b62408d88b6b4e7ab38e84e6d0bf3
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Tue Apr 22 21:17:52 2014 -0700

    src/x86/win32.S: Define ffi_closure_FASTCALL in the MASM section, too

commit 1c0e9a7297ced15413c2d2d5d35f6c650c4b46c9
Merge: 93a24f21 d3695227
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 21 12:41:56 2014 -0400

    Merge pull request #101 from joshtriplett/fastcall-closures
    
    Support closures for fastcall

commit d36952273d4fafbda91ecc205fc0824f7cc65e70
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Apr 20 12:03:25 2014 -0700

    Support fastcall closures
    
    libffi on 32-bit x86 now supports closures for all supported ABIs.
    Thus, rewrite the last remaining duplicated-by-ABI test (closure_stdcall
    and closure_thiscall) to use the generic ABI_NUM/ABI_ATTR mechanism.

commit 93a24f216bcdd1018b976d697179c6d49004015a
Merge: dd11a040 2349fec9
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:38:07 2014 -0400

    Merge pull request #80 from ueno/devel
    
    Fix typo in doc

commit dd11a04061cb49ce1d702545693c24eb1267d648
Merge: 8fa28123 03ca8800
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:37:21 2014 -0400

    Merge pull request #86 from joshtriplett/testsuite-CC-CXX
    
    testsuite ignores CC parameter supplied to configure or make

commit 8fa2812355e685a42abf9a62fbc674d616b2edee
Merge: 8a58e6b7 419503f4
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:32:08 2014 -0400

    Merge pull request #116 from frida/fix/darwin-aarch64-variadic
    
    Fix handling of variadic calls on Darwin/AArch64

commit 8a58e6b7805b736def197b8baf8e465a2a3f6913
Merge: 30b77c56 a539f7ff
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:30:18 2014 -0400

    Merge pull request #115 from frida/fix/darwin-aarch64-alignment
    
    Fix alignment of AArch64 assembler functions

commit 30b77c56f95c63ecd83399aafdbad7b07330f2fd
Merge: dc33cb3c 3e2b84d2
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:29:13 2014 -0400

    Merge pull request #117 from frida/fix/windows-regression
    
    Fix Windows regression

commit 3e2b84d295531720917bf46afc532fc6d877e3ec
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Sat Apr 12 01:04:04 2014 +0200

    Fix Windows regression
    
    Introduced by b5fed601948237037513a9b7f967c8fc6c9ff1f6.

commit 419503f409c321fe31ff59d963ef34bb913420d0
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Sun Apr 6 20:54:13 2014 +0200

    Fix handling of variadic calls on Darwin/AArch64

commit a539f7ffd6783aa11353d13265520e453c565fb4
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Sun Apr 6 20:53:02 2014 +0200

    Fix alignment of AArch64 assembler functions

commit dc33cb3c998da521a960385c1269c3aef552f69f
Merge: c860a992 b5fed601
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 5 23:41:22 2014 -0400

    Merge pull request #114 from joshtriplett/bounce-on-a-tiny-trampoline
    
    Fix ABI on 32-bit non-Windows x86: go back to trampoline size 10

commit b5fed601948237037513a9b7f967c8fc6c9ff1f6
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Apr 5 17:33:42 2014 -0700

    Fix ABI on 32-bit non-Windows x86: go back to trampoline size 10
    
    The trampoline size is part of the ABI, so it cannot change.  Move the
    logic from the stdcall and thiscall trampolines to the functions they
    call, to reduce them both to 10 bytes.
    
    This drops the previously added support for raw THISCALL closures on
    non-Windows.  (Non-raw THISCALL closures still work.)

commit 03ca880081b22efab09ba72268270f83017d3d7b
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Thu Mar 27 08:44:34 2014 -0700

    README: Note the testsuite changes to respect $CC and $CXX

commit d74df8c5d8c6722ecb908da98c86cc8e2c755b84
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Thu Mar 27 00:44:12 2014 -0700

    README: Update Windows example to set both CC and CXX

commit 7d698125b1f05173f3656a89755a2eb58813b002
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 23:17:56 2014 -0700

    Use the proper C++ compiler to run C++ tests
    
    Running the C compiler with -shared-libgcc -lstdc++ does not work on
    non-GCC compilers.

commit fa5e88f170cb37c7b2b9bb015c8c5b854ffd8a3e
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 23:53:57 2014 -0700

    .travis.yml: Make the build command more readable by splitting at &&
    
    "script" can contain multiple commands to run in sequence.

commit 0c3824702d3d59d37f8c177d646303f546187683
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 14:51:32 2014 -0700

    Always set CC_FOR_TARGET for dejagnu, to make the testsuite respect $CC
    
    This fixes cross-compilation and compilation with CC="gcc -m32".

commit 9946a92af31b30cb7760150d1f8ca6c11b01aeea
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 20:18:58 2014 -0700

    Stop looking for expect and runtest above top_builddir
    
    Users wishing to test hand-compiled versions of expect and runtest can
    easily enough put them in their path or set EXPECT and RUNTEST
    themselves.

commit acb202325215058639234efb7af1f04c1c8a1f44
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 20:18:41 2014 -0700

    Stop setting an empty AM_RUNTESTFLAGS

commit c860a992fef5d7cd7bb0975b1632d17a9fafe007
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 17:02:51 2014 -0400

    Upgrade version to 3.1-rc1

commit 9837073e6203048a162a226798c5d252600219ed
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:24:14 2014 -0400

    Update copyright date and clean up README notes.

commit 18d3baa9f597b026675baa1b4e5a5eeef7577a08
Merge: afee5373 f0c8a315
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:12:53 2014 -0400

    Merge pull request #108 from joshtriplett/freebsd
    
    [3.1 blocker] Fix FreeBSD support

commit afee53738a995e23bd2f89fd0f7b30b380566106
Merge: 7d247856 b2d610e0
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:12:35 2014 -0400

    Merge pull request #106 from joshtriplett/darwin-award
    
    [3.1 blocker] Update OS X build system to include win32.S on 32-bit

commit 7d2478568ed9f03cbf57627f449a2d2cf4d1571c
Merge: beab5f33 56be47f8
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:12:17 2014 -0400

    Merge pull request #110 from joshtriplett/w64
    
    Fix 64-bit Windows support

commit beab5f334d9ec5b8b91d1cc727d1029b40358e7e
Merge: 28fb1970 ef5890eb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:07:47 2014 -0400

    Merge pull request #105 from joshtriplett/win32-relocations
    
    [3.1 blocker] win32.S needs to handle relocations/GOT

commit f0c8a31577172104049283f0a80c723084a5bd77
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Mar 24 22:14:26 2014 -0700

    Compile win32.S on FreeBSD

commit b2d610e028b5ce48d1ad7e5d0debc9c321d891b2
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Fri Mar 21 11:10:13 2014 -0700

    Compile win32.S on 32-bit Darwin as well

commit be50b87a490e794362cb4a27ada2fbaab202adb8
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Mar 24 21:44:13 2014 -0700

    Always use configure to detect whether global symbols need underscores
    
    64-bit Windows already used this check; make it universal, and use it in
    place of an ifdef on X86_WIN32, to handle non-Windows platforms that use
    the underscore, such as Darwin.

commit 56be47f87629e31afbcb0774aa65735f539ee972
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Mar 24 21:24:53 2014 -0700

    Fix a warning on 64-bit Windows
    
    When sizeof(size_t) != sizeof(unsigned), adding a size_t to cif->bytes
    produces a "possible loss of data" warning.  However, the size_t in
    question refers to the size of a single parameter.  Use a cast to avoid
    the warning.

commit 48a8eda74aad8a21b6f26df5df08fe64c043d208
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Mar 24 21:21:12 2014 -0700

    Avoid referencing undefined ABIs on 64-bit Windows builds
    
    64-bit Windows does not have FFI_STDCALL, FFI_THISCALL, or FFI_FASTCALL.

commit f0f4138f90345d7d67dfa6783a7e1c7cc30d3c6f
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 22 10:00:53 2014 -0700

    win32.S: Add handling for position-independent code on Darwin
    
    Newer versions of Darwin generate the necessary stub functions
    automatically and just need a call instruction, but accomodating older
    versions as well requires adding the stub.

commit ef5890ebafb7cd2fbf9acf161edb55fe1382871c
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Fri Mar 21 11:01:39 2014 -0700

    win32.S: Use shifting for multiplication rather than repeated addition
    
    The jump table code added a register to itself twice to multiply by 4;
    shift the register left by 2 instead.

commit 4fca48901e7e4f53bf490ed22607b2d2d8f4bfcc
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Fri Mar 21 11:00:41 2014 -0700

    win32.S: Make the jump tables position-independent
    
    Now that non-Windows platforms include win32.S, it needs to support
    building as position-independent code.  This fixes build failures on
    target platforms that do not allow text relocations.

commit 2087dcf736274286f76c69d3988fb6d7cc4fd0f5
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Fri Mar 21 10:57:06 2014 -0700

    win32.S: Make calls to ffi_closure_SYSV_inner position-independent
    
    Now that non-Windows platforms include win32.S, it needs to support
    building as position-independent code.  This fixes one source of build
    failures on target platforms that do not allow text relocations.

commit 28fb197079cf1d11da4eef7c8c243ab05590c528
Merge: c697472f c3dd0a1a
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 18 12:19:36 2014 -0400

    Merge pull request #107 from rvandermeulen/msvcc
    
    Various compatibility fixes and improvements to msvcc.sh.

commit c3dd0a1a0245fc174361a70876e88ae24285f861
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Tue Mar 18 12:09:45 2014 -0400

    Various compatibility fixes and improvements to msvcc.sh.
    
    * Don't try to mix incompatible optimization flags in debug builds.
    * Workaround ax_cc_maxopt.m4 not supporting MSVC and change -O3 to -O2.
    * Fix MSVC warning by properly passing linker flags to compiler.
    * Make msvcc.sh return 1 if invalid command line options are used rather than silently eating them.
    * Add more comments.

commit c697472fccfbb5b87b007c053cda9ef014b346b9
Merge: 83fd2bce e48918ec
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 17 00:32:42 2014 -0400

    Merge pull request #102 from joshtriplett/test-generic
    
    Add ABIs to the test matrix; unify many bits of the testsuite

commit e48918ecf876bc85d040fc50a232059c566553a8
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 20:29:27 2014 -0700

    testsuite: Add ABIs to the test matrix; unify tests across ABIs
    
    This eliminates all the *_win32.c tests in favor of the tests they were
    branched from, and expands test coverage to run many more tests on
    stdcall, thiscall, and fastcall.
    
    This same mechanism also supports testing any other target that has
    multiple ABIs.

commit 4d4d368e5a55d9443c4c53b1b70d58ab6d8c941c
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 17:02:05 2014 -0700

    testsuite: Replace ffitestcxx.h with ffitest.h
    
    ffitest.h contains a superset of the functionality of ffitestcxx.h;
    make the C++ tests include ffitest.h instead, and remove ffitestcxx.h.

commit 3f97cf3413c46caf2a79f32ac9cda4620972c2d7
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 16:53:42 2014 -0700

    testsuite: Unify the C and C++ testsuites
    
    These two testsuites differ only in the source file glob and a couple of
    additional compiler options; unify the remaining bits.

commit 0d9cce8edb937bbe771a6cdd25f671edf06d2128
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 16:22:58 2014 -0700

    testsuite: ffitest.h: Parenthesize the CHECK macro

commit 5695ec1444c5323e48fe4314f8c8f027625e67df
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 16:04:58 2014 -0700

    testsuite: Factor out a function to run a matrix of tests
    
    This commons up code from libffi.call/call.exp and
    libffi.special/special.exp, unifies the optimization option matrix
    between the two, and makes it easier to add more axes to the matrix
    in the future.

commit dfdb02cc869855d3b68571e5f7aa77ae8c9d254a
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 15:26:26 2014 -0700

    testsuite: Introduce a __THISCALL__ compiler-specific macro

commit 83fd2bce0456224483435d4b764063f4513fd464
Merge: 3658a070 06ff9242
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 22:03:29 2014 -0400

    Merge pull request #99 from joshtriplett/gitignore
    
    .gitignore: Ignore more generated files

commit 3658a0700a50d37a2fdba04fd9d79ad2f706d9f5
Merge: d948d0a7 46c5d3c3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 21:37:42 2014 -0400

    Merge pull request #100 from rvandermeulen/bug-756740
    
    Change double quotes in Makefile.am to single quotes.

commit 46c5d3c30fdc2b43c076ad955078d7c5f1e75b37
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Sun Mar 16 21:16:08 2014 -0400

    Change double quotes in Makefile.am to single quotes.
    
    This was originally done in PR #84, except the change was made to Makefile.in instead of Makefile.am and was therefore reverted the next time the files were regenerated.

commit 06ff924215a2f9739efa2c059dc595bc4ec1c851
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 16:19:46 2014 -0700

    .gitignore: Ignore more generated files
    
    The build process generates doc/libffi.info and fficonfig.h.in, so add
    them to .gitignore.

commit bad8948346e9b8813023a0cc78a3b6eb8d9c14c6
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 15:16:18 2014 -0700

    testsuite: Introduce a __STDCALL__ compiler-specific macro
    
    Several tests want to use stdcall, which differs in syntax by compiler,
    so introduce a macro for it in ffitest.h.

commit 98a793fa36a4ab3ba24d059cb80a2891cdb940e1
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 15:20:36 2014 -0700

    testsuite: Common up the ifdef blocks for compiler-specific macros

commit d948d0a729c934b0224749338a3ba0a2c8f51c45
Merge: b61b472b a86bd318
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 10:53:48 2014 -0400

    Merge pull request #98 from joshtriplett/unconfigure.host
    
    Merge configure.host into configure.ac

commit a86bd318e2424d879d784ee7b29d6536d7a17c18
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 06:58:59 2014 -0700

    Merge configure.host into configure.ac
    
    configure.host only has a single entry, and shows no signs of needing
    more added.

commit b61b472bd0647006d6685238721002017f1d119c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 09:45:55 2014 -0400

    Update version to 3.1-rc0.  Clean up README.

commit 7a64e7dbba54e6e9f69954adfb943be1856ff928
Merge: 11a5c5c3 eef2e02a
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 09:39:08 2014 -0400

    Merge pull request #97 from joshtriplett/remove-more-generated-files
    
    Remove more generated files

commit 11a5c5c39f5861011f6c5ddf795da3a32b5f0082
Merge: 9a62a21f 1c68c072
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 09:38:47 2014 -0400

    Merge pull request #96 from joshtriplett/sawing-changelogs
    
    Generate ChangeLog from git in make dist; remove it from version control

commit eef2e02a13d7d1c8145d47a64467f654406a3548
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 06:26:03 2014 -0700

    doc: Remove autogenerated info file and stamp

commit 9fb403d3c5d9643e0f561cab6d4a07b1e54907ff
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 06:25:52 2014 -0700

    fficonfig.h.in: Remove, configure generates it

commit 1c68c07217fda78a779778c1480fedef7a58d5b4
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 06:11:58 2014 -0700

    Generate ChangeLog from git in make dist
    
    Archive the existing ChangeLog to ChangeLog.libffi-3.1

commit c65ed55e655711e008282edbdd82ce95d008b4f6
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 05:52:00 2014 -0700

    ChangeLog.v1: Fix typo in explanatory header.

commit 9a62a21f5c3a8e1da463229f3170c8ab3031d920
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 09:03:57 2014 -0400

    Add missing ChangeLog entry.  Clean up some entries.

commit 9bc704c58cb7a049d867837e3a11e2e31886ec66
Merge: 694447aa e892e581
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 08:41:00 2014 -0400

    Merge pull request #95 from joshtriplett/news
    
    README: Update news for 3.0.14

commit e892e581d1838a06c18c7ecd50ebd79915cff92b
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 05:38:24 2014 -0700

    README: Update news for 3.0.14

commit 694447aa29deadd571efb4e9a26ee3f68ede1493
Merge: fdc87f3b 45a6c21e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 08:32:05 2014 -0400

    Merge pull request #93 from joshtriplett/travis-dist
    
    Make Travis check "make dist"

commit 45a6c21efa944b520842e631dc54919b04884744
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 05:29:08 2014 -0700

    .travis.yml: Test "make dist" too.

commit fdc87f3b2ea37b58a4a9ae6c35083f544909fe3c
Merge: 7412b838 e1911f78
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 08:05:51 2014 -0400

    Merge pull request #85 from joshtriplett/stdcall
    
    stdcall support on Linux

commit e1911f78df113ca58738b66089a070d4cf747de7
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 03:25:53 2014 -0700

    Add support for stdcall, thiscall, and fastcall on non-Windows x86-32
    
    Linux supports the stdcall calling convention, either via functions
    explicitly declared with the stdcall attribute, or via code compiled
    with -mrtd which effectively makes stdcall the default.
    
    This introduces FFI_STDCALL, FFI_THISCALL, and FFI_FASTCALL on
    non-Windows x86-32 platforms, as non-default calling conventions.

commit 7412b838d543aae4fa925862bd5702d3dacbc29a
Merge: c0cc5fda 9531d05f
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:58:16 2014 -0400

    Merge pull request #90 from joshtriplett/win32-unifdef
    
    prep_cif.c: Remove unnecessary ifdef for X86_WIN32

commit c0cc5fdaa237b67e86f22d2f6e13f3b42d9aae33
Merge: 98b52960 b3a5da06
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:57:59 2014 -0400

    Merge pull request #89 from joshtriplett/travis32
    
    .travis.yml: Test on both 32-bit and 64-bit

commit 9531d05f64c2a674e0197158ffad68d69f177bd0
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 01:50:02 2014 -0700

    prep_cif.c: Remove unnecessary ifdef for X86_WIN32
    
    ffi_prep_cif_core had a special case for X86_WIN32, checking for
    FFI_THISCALL in addition to the FFI_FIRST_ABI-to-FFI_LAST_ABI range
    before returning FFI_BAD_ABI.  However, on X86_WIN32, FFI_THISCALL
    already falls in that range, making the special case unnecessary.
    Remove it.

commit b3a5da068abd2f2983d9e67adbf41b0e0f34e37f
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 15 23:27:56 2014 -0700

    .travis.yml: Test on both 32-bit and 64-bit

commit 98b52960485a261399f081915f36063de3854a5f
Merge: 134ce4c0 f6dd1845
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:51:33 2014 -0400

    Merge pull request #94 from joshtriplett/esp-extra-stackery-perception
    
    ChangeLog: Document testsuite changes to remove fragile stack pointer checks

commit f6dd1845434dd53e22129becdfa092c082df307c
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 04:49:36 2014 -0700

    ChangeLog: Document testsuite changes to remove fragile stack pointer checks

commit 134ce4c0266bf994f07518fc534de53f1d3c8de8
Merge: 2680e9ea 9c279328
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:47:17 2014 -0400

    Merge pull request #91 from joshtriplett/esp-extra-stackery-perception
    
    testsuite: Remove fragile stack pointer checks

commit 9c279328ee12fc869adff63ca81f1230977bd42b
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 02:31:19 2014 -0700

    testsuite: Remove fragile stack pointer checks
    
    testsuite/libffi.call/closure_stdcall.c and
    testsuite/libffi.call/closure_thiscall.c include inline assembly to save
    the stack pointer before and after the call, and compare the values.
    However, compilers can and do leave the stack in different states for
    these two pieces of inline assembly, such as by saving a temporary value
    on the stack across the call; observed with gcc -Os, and verified as
    spurious through careful inspection of disassembly.

commit 2680e9ea9b4c87ea8042a61e551bd667493d4bd3
Merge: 071eab32 82f8cb24
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:44:08 2014 -0400

    Merge pull request #88 from joshtriplett/such-precision-many-fail-wow
    
    testsuite/libffi.call/many.c: Avoid spurious failure due to excess precision

commit 82f8cb24a1d976db35ae31a4b86cec8926da327d
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 04:27:32 2014 -0700

    ChangeLog: Document many.c and many_win32.c changes to avoid spurious failures

commit 88d562a8b5912e99306063fe3bc289bab6ca6ebe
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 15 22:08:19 2014 -0700

    testsuite/libffi.call/many_win32.c: Avoid spurious failure due to excess precision
    
    The test case testsuite/libffi.call/many_win32.c can spuriously fail due
    to excess floating-point precision.  Instrumenting it with some printf
    calls shows differences well above FLT_EPSILON.  (Note when
    instrumenting it that multiple computations of the difference, such as
    one in a print and another in the conditional, may produce different
    results.)
    
    Rather than complicating the test suite with architecture-specific flags
    to avoid excess precision, just simplify the floating-point computation
    to avoid a dependency on potential excess precision.

commit c00a49ecd165b2d06c1c9b249d212dc843fa116f
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 15 22:08:19 2014 -0700

    testsuite/libffi.call/many.c: Avoid spurious failure due to excess precision
    
    The test case testsuite/libffi.call/many.c can spuriously fail due to
    excess floating-point precision.  Instrumenting it with some printf
    calls shows differences well above FLT_EPSILON.  (Note when
    instrumenting it that multiple computations of the difference, such as
    one in a print and another in the conditional, may produce different
    results.)
    
    Rather than complicating the test suite with architecture-specific flags
    to avoid excess precision, just simplify the floating-point computation
    to avoid a dependency on potential excess precision.

commit 071eab32a7f9fbbef46c0d8f37d9985bc9cceb37
Merge: 2228c7ab 2f44952c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:36:52 2014 -0400

    Merge pull request #92 from joshtriplett/autogen
    
    Re-add libtool-ldflags

commit 2f44952c95765c1486fad66f57235f8d459a9748
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 04:35:12 2014 -0700

    Re-add libtool-ldflags

commit 2228c7ab190f3c529b9018495467b841fa21cba2
Merge: 76d19d00 35634dbc
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:25:18 2014 -0400

    Merge pull request #87 from joshtriplett/autogen
    
    Remove autogenerated files from the repository

commit 35634dbceaac0a1544f7385addc01d21ef1ef6a8
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 15 18:11:16 2014 -0700

    Remove autogenerated files from the repository
    
    Add an autogen.sh to regenerate them.

commit 76d19d004e36e99d261ee78261e2f52cea5e4ab1
Merge: c86d9b6c a1a6f71b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 14 16:54:31 2014 -0400

    Ensure the linker supports @unwind sections in libffi.

commit c86d9b6cc6e16ee262844a33b40441374400758c
Merge: 4efb7dbf f8cdf114
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 14 16:51:20 2014 -0400

    Fix merge

commit 4efb7dbfd9427c478a948cd0d464210123db8de8
Merge: 634a475e 18eb81d0
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 14 16:47:57 2014 -0400

    Merge pull request #81 from rvandermeulen/bug-756740
    
    Allow building for mipsel with Android NDK r8.

commit a1a6f71bfe4199293043b2e4cfb4c8d3cb1112f9
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Mon Mar 10 15:12:47 2014 -0400

    Remove stray hunk that shouldn't have been included in this patch.

commit f8cdf11467181f2a9a6b7e748167569aa58e3a81
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Mon Mar 10 15:04:58 2014 -0400

    Replace double quotes with single quotes in Makefile.in to improve compatibility between some versions of MSYS and gmake. From Mozilla bug 943728.
    https://bugzilla.mozilla.org/show_bug.cgi?id=943728

commit dfa3738732e1bc3a7f4130395ae4bab55fcebb99
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Mon Mar 10 14:53:48 2014 -0400

    Ensure the linker supports @unwind sections in libffi. From Mozilla bug 756740.
    https://bugzilla.mozilla.org/show_bug.cgi?id=778414
    
    Also tracked as issue #42.
    https://github.com/atgreen/libffi/issues/42

commit 18eb81d032f29d645d0498ba92bddfd651f009ae
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Mon Mar 10 14:43:37 2014 -0400

    Allow building for mipsel with Android NDK r8. From Mozilla bug 756740.
    https://bugzilla.mozilla.org/show_bug.cgi?id=756740

commit 2349fec9a818fb52fd2f294bcbc7b3156cd113de
Author: Daiki Ueno <ueno@gnu.org>
Date:   Wed Mar 5 17:53:02 2014 +0900

    Fix typo in doc

commit 634a475eaf1bee31c09f7d519e31c13b64cd24df
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 1 18:37:29 2014 -0500

    Update Makefile for new darwin scripts

commit c7b67e874bb89859f9a07d1cf9606052b6c0dcc1
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 1 18:34:18 2014 -0500

    Add README note

commit a04e30ba3dc303133d459c1ac273ceefe4d49b32
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 17:20:59 2014 -0500

    Add missing -DFFI_DEBUG flag

commit 934dc1b5c8d6a9e727bedc72342831eb7d62c35f
Merge: 11d7aa9d 67fbef3b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:10:17 2014 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit 11d7aa9d7a4bbe642944edc0f07cf96db9b270b6
Merge: b40aeda3 3b44d411
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:06:48 2014 -0500

    Merge pull request #46 from makotokato/android-clang
    
    Fix build failure when using clang for Android

commit 67fbef3b56ff0ef88f9b1a7fe48cb77222fa6cec
Merge: b40aeda3 3b44d411
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:06:48 2014 -0500

    Merge pull request #46 from makotokato/android-clang
    
    Fix build failure when using clang for Android

commit b40aeda31a74d95a37c723b6243aabac466e67c4
Merge: 20698abc 53ceaf14
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:01:29 2014 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit 53ceaf14c5eeb16ba09745f0ca87cca367d41a90
Merge: 860fe664 cc9b5186
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:01:02 2014 -0500

    Merge pull request #40 from wojdyr/master
    
    Correct the -L flag in libffi.pc.in

commit 20698abc6a00092fd7fd3e434a3a29dc0f048f1e
Merge: 64bd0699 1a0b01e1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:56:27 2014 -0500

    Merge pull request #66 from ppizarro/master
    
    BlackFin fixes - Fatal error when calling a function defined in a shared library from within the function called by FFI

commit 860fe6646f5ae603e99a8d1d722ddddba8b75769
Merge: 64bd0699 1a0b01e1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:56:27 2014 -0500

    Merge pull request #66 from ppizarro/master
    
    BlackFin fixes - Fatal error when calling a function defined in a shared library from within the function called by FFI

commit 64bd06990a7accf72271516a2110b86cdccd8df4
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:52:56 2014 -0500

    Add ChangeLog entry for Josh's change

commit edf29c5169b06fcfc241445e152e325bc3c50e0e
Merge: 33c9954f 3998d260
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:50:25 2014 -0500

    Merge pull request #75 from joshtriplett/longdouble
    
    Fix build error on x86 without distinct long double

commit 33c9954f2eec539011a0f93270aaf013318837ae
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:38:41 2014 -0500

    Rebuilt with new libtool

commit 926b6989fbd08488b9105943293353d45ac527e0
Merge: 5a88c85f cc82051c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:26:57 2014 -0500

    Merge branch 'master' of github.com:/atgreen/libffi
    
    Conflicts:
            ChangeLog

commit 5a88c85fde304052bed1581ed0b6452ac2c68838
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:23:04 2014 -0500

    Fix spelling errors

commit cc82051c7e80cea772c4b72da026eb7e68d598fc
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:23:04 2014 -0500

    Fix spelling errors

commit 001aaf4b1b56349596bb6f6b5c1613dcbbd84ea8
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:20:17 2014 -0500

    When no VFP arguments are present the IP register is used
    uninitialized. Initialize it to the value of FP.
    
    This fixes a number of testsuite failures when configured for
    armv7l-unknown-linux-gnueabihf

commit 49f7729c3ce697c12408c42ccb29cdf4eb66bb85
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:17:16 2014 -0500

    aarch64 fix

commit 447483d51c6aa9df7116f346a73fc1cf795f4c2b
Merge: 51377bda b4df9cf9
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 27 15:42:41 2014 -0500

    Fix ChangeLog merge

commit 3998d2604b5c0d45a098ff3119a9fd9710ef429d
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Feb 17 11:20:33 2014 -0800

    Fix build error on x86 without distinct long double
    
    src/x86/ffi64.c: In function 'classify_argument':
    src/x86/ffi64.c:205:5: error: duplicate case value
         case FFI_TYPE_LONGDOUBLE:
         ^
    src/x86/ffi64.c:202:5: error: previously used here
         case FFI_TYPE_DOUBLE:
         ^

commit 51377bda9aed0b2c1309c818460cab9d9ab3d46e
Merge: f08da546 40927bd3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 15 08:06:29 2014 -0500

    Merge pull request #72 from heiher/devel
    
    MIPS N32: Fix call floating point va function

commit f08da5465463e60a28f5e921f23ebf2ba984c148
Merge: 3dc3f32c fa5f25c2
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 15 08:06:11 2014 -0500

    Merge pull request #68 from zeldin/master
    
    Linux/ppc64: Remove assumption on contents of r11 in closure

commit 40927bd3e1e7c6007025ba10854fd8a0664e47df
Author: Heiher <r@hev.cc>
Date:   Tue Jan 21 23:18:27 2014 +0800

    Fix call floating point va function
    
    I'm not sure floating-point arguments in GPR or FPR before calling
    variable number arguments function. so, load all arguments to GPR and
    FPR.

commit b4df9cf9cc4a9a9401a53fd6bea1f3c2c283b97b
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Wed Feb 5 14:22:52 2014 -0500

    AArch64: Fix void fall-through case when assertions are enabled

commit f466aad0d91a117e42571d1d6fb434fa0433c930
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Tue Jan 21 16:38:31 2014 -0500

    AArch64: Fix missing semicolons when assertions are enabled

commit 7ea677733bd98917241852b8901a6b7580728895
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 20:58:31 2013 -0500

    Remove build-ios from Makefile
    
    Conflicts:
            ChangeLog

commit 6ae046cc59c12b2cd40158d6bcb96f4a59886159
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 21:06:51 2013 -0500

    Mention Aarch64 on iOS

commit bfc06b3fdb32abe90ce0749aedfec649df85a7ef
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 17:36:39 2013 -0500

    Update ChangeLog

commit 0a0f12ce1f7be81006b08a3c81a636926d283a9b
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:50:17 2014 -0500

    AArch64: Remove duplicitous element_count call.
    
    This inhibits an analyzer warning by Clang.

commit 4330fdcd92e67c816288d64ab230237065768206
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:53:30 2014 -0500

    Darwin/aarch64: Respect iOS ABI re: stack argument alignment

commit 0a333d6c3973935d4fe02aae76b10e39d3c88e07
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 14:03:29 2014 -0500

    Darwin/aarch64: Fix size_t assumptions

commit 2c18e3c76aad1b426617db05a4384e7c3a920176
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 16:14:02 2013 -0500

    Darwin/aarch64: Fix "shadows declaration" warnings

commit 1b8a8e20e344f3c55495ab6eb46bd14e843d4b3e
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:55:21 2014 -0500

    Darwin/aarch64: Use Clang cache invalidation builtin

commit 6030cdcae776f8fb5876a53168f7d1e75d28a242
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 15:45:51 2013 -0500

    Darwin/aarch64: Account for long double being equal to double

commit 5658b0892683d2e24e4d5842978c184a7ad33858
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 16:33:47 2013 -0500

    Darwin/aarch64: Use CNAME, restrict .size like ARM

commit 07175780802acec5dc49fdedd6d20a62409a6707
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 17:48:22 2013 -0500

    Darwin/aarch64: Fix invalid reference in assembly

commit 9da28b44277fea3aeb827c35dd63d609d2524a8b
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 16:23:21 2013 -0500

    Darwin/x86_64: Fix 64-bit type shortening warnings

commit 821d398f08bd1d540a5b235507812ffeee49b580
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:15:06 2014 -0500

    Darwin: Merge build scripts, redo project, incl. arm64

commit 6eff9ff9e72463b9783be2514f944b6f05692054
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 17:48:10 2013 -0500

    Darwin/iOS: Improve unified syntax use for LLVM

commit ba0ea99c82aadd5957386a031e3122011bd36d52
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 15:27:44 2013 -0500

    Fix dlmalloc warnings due to set_segment_flags, sizeof(size_t)

commit 994be3a5c1d0d17b19103396103e128517fd62f9
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 15:27:14 2013 -0500

    Darwin/iOS: Fix mis-typing of vfp_reg_free

commit a8e0a835ab1f62d03ad6391760e3e8b7732d24f8
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 15:26:20 2013 -0500

    Darwin/ARM: Assert on NULL dereference
    
    This inhibits an analyzer warning by Clang on all platforms.

commit 13675341581c489ed9df8ba390c8e08a732decb2
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:42:08 2014 -0500

    Darwin/i386: Inhibit Clang previous prototype warnings

commit 66469c381e2e2cc96e7d409266dea0ffe177eeca
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:41:45 2014 -0500

    Darwin/ARM: Inhibit Clang previous prototype warnings

commit 5bfe62a00d2d659eec9f19b39802b6e69844fc27
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:41:27 2014 -0500

    Darwin/AArch64: Inhibit Clang previous prototype warnings

commit fa5f25c20f76a6ef5e950a7ccbce826672c8a620
Author: Marcus Comstedt <marcus@mc.pp.se>
Date:   Sat Jan 4 19:00:08 2014 +0100

    Linux/ppc64: Remove assumption on contents of r11 in closure

commit 1a0b01e171e9c750437cef2f18917f5a6e32c498
Author: Paulo Pizarro <paulo.pizarro@gmail.com>
Date:   Thu Jan 2 16:17:59 2014 -0200

    When the function called by the ffi called a function defined in a shared library generate a fatal error
    The correction was to take into consideration the GOT.

commit 3dc3f32c35db5ab995a835225f6815369735ceb7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Dec 5 16:23:25 2013 -0500

    Undo iOS ARM64 changes.

commit 356b2cbc304bfe5bdc28b8d1c68d1ff084e9ec37
Merge: 484a7584 07345a30
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 22:38:13 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit 484a7584260e2fbb399ce90083046834271bf9ff
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 21:06:51 2013 -0500

    Mention Aarch64 on iOS

commit 07345a30ec0a2fa45a7c363d301f57723690cfa0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 21:06:51 2013 -0500

    Mention Aarch64 on iOS

commit d4b931c1b872378c35f12ddbb9a6d55e7f17c65e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 20:58:31 2013 -0500

    Remove build-ios from Makefile

commit dfbf236d70fc1ec68e6ff193584a154353508e2f
Merge: 852ac3bd bb9740e5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 20:54:54 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi
    Add ChangeLog entry.

commit bb9740e545205f93a525c77aa6d1cbf4ca9371f3
Merge: ac753688 4d701e03
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 17:54:39 2013 -0800

    Merge pull request #60 from zwaldowski/ios-redo
    
    Mac/iOS support, including aarch64 port

commit 4d701e03faa475a5eb3b54b90046114a1e27b813
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 13:25:27 2013 -0500

    Darwin: Properly export headers from Xcode project

commit 022f12eb9ad2264e838fa5fb453733f5177888f4
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 12:21:38 2013 -0500

    Darwin: Freshen gen scripts, remove old build-ios.sh

commit e820fe2025d7ad3df7584407946dfaad2af69599
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 12:03:51 2013 -0500

    Darwin/iOS: Include x86_64+aarch64 pieces in library

commit 0278284e470ec91db7cdc15ac3dcd64683305848
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 03:03:37 2013 -0500

    Darwin/aarch64: size_t assumptions

commit 9775446b6441c91cd9059215c106aa3bcf949767
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:39:34 2013 -0500

    Darwin/aarch64: Fix “shadows declaration” warnings

commit 4260badc37705d3618e774dfe61184ac709881c1
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:08:14 2013 -0500

    Darwin/aarch64: Use Clang cache invalidation builtin

commit 9fa7998d5f9250908cbf12a671479852ebadf9d1
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:07:48 2013 -0500

    Darwin/aarch64: Inhibit Xcode warning

commit 0e832048a93830575b0976406444e134e649a4f7
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:07:34 2013 -0500

    Darwin/aarch64: double == long double

commit 602dc22d76931092610234cf063f9f1b8dbc1a51
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:06:00 2013 -0500

    Darwin/iOS prep script: try and compile for arm64

commit b513dfe79de4725e8a717325a9e3b5b9f69f63dc
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:05:22 2013 -0500

    Darwin/aarch64: Restrict .size to ELF like arm32.

commit bc978099bf2812de755c076b67ef9c2547607572
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:04:57 2013 -0500

    Darwin/aarch64: Potentially(?) fix compile error

commit d6bb9314467c6e0683156559d23ca341c43fa3c8
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:04:22 2013 -0500

    Darwin/aarch64: Use CNAME refs

commit 33c46ce5680eea28d3437c8771ec1d137e226b45
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 04:13:42 2013 -0500

    Darwin/Mac: Fix 64/32 shortening warnings

commit 0612081e6c161d9d820742f995975d35da2adbc2
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 03:03:00 2013 -0500

    Darwin: Misc size_t warnings

commit 6a6247d179ec3859311c2d8775841b884f309f66
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:55:48 2013 -0500

    Darwin: Fix dlmalloc warnings due to sizeof(size_t)

commit 4d60d9e1e32de6166ffd63bbe9ce54cf961c78fc
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 04:09:30 2013 -0500

    Darwin: Rebuild Xcode project

commit cb719a5c1c2eb391d6a5f5e02484ba4aa990a51b
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 04:09:18 2013 -0500

    Darwin/iOS: Fix LLVM 3.3 warning re: memcpy.

commit 21bde92c9abb378f9c456a9d95e6f9b99ef8c920
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 03:43:42 2013 -0500

    Darwin: Clean up, modernize generator scripts

commit fd54eab74cef7891e4acaaafb71e783142ecb69e
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 03:38:02 2013 -0500

    Darwin/Mac: Also exclude OS X generated source

commit 953b6f14c655141f9e7d82550a312c3eeb961091
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Tue Apr 24 11:16:20 2012 -0400

    Darwin/iOS: More unified syntax support w/ Clang.
    
    Signed-off-by: Zachary Waldowski <zwaldowski@gmail.com>

commit c713a55379481c339877f2e0003d97cb8d9ed80e
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Tue Apr 24 10:25:29 2012 -0400

    Darwin/iOS: Simplify RETLDM arguments for LLVM 3.1
    
    Signed-off-by: Zachary Waldowski <zwaldowski@gmail.com>

commit 16ba1b80028db5cb71cf86e5f79f5e48317f83c8
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Wed Apr 11 23:26:04 2012 -0400

    Darwin: Silence Clang warnings.

commit 852ac3bd302d6ed97b1ef65f4cbed69c258a48df
Merge: ab79d6e2 ac753688
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 21 21:25:44 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi
    
    Conflicts:
            ChangeLog

commit ab79d6e21992dd86139ba07530ff888833b78a04
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Nov 21 06:12:35 2013 -0500

    This separates the 32-bit sysv/linux/bsd code from the 64-bit linux
    code, and makes it possible to link code compiled with different
    options to those used to compile libffi.  For example, a
    -mlong-double-128 libffi can be used with -mlong-double-64 code.
    
    Using the return value area as a place to pass parameters wasn't such
    a good idea, causing a failure of cls_ulonglong.c.  I didn't see this
    when running the mainline gcc libffi testsuite because that version of
    the test is inferior to the upstreamm libffi test.
    
    Using NUM_FPR_ARG_REGISTERS rather than NUM_FPR_ARG_REGISTERS64 meant
    that a parameter save area could be allocated before it was strictly
    necessary.  Wrong but harmless.  Found when splitting apart ffi.c
    into 32-bit and 64-bit support.

commit ac7536889334d4be50709006d7e23536364d7891
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Nov 21 06:12:35 2013 -0500

    This separates the 32-bit sysv/linux/bsd code from the 64-bit linux
    code, and makes it possible to link code compiled with different
    options to those used to compile libffi.  For example, a
    -mlong-double-128 libffi can be used with -mlong-double-64 code.
    
    Using the return value area as a place to pass parameters wasn't such
    a good idea, causing a failure of cls_ulonglong.c.  I didn't see this
    when running the mainline gcc libffi testsuite because that version of
    the test is inferior to the upstreamm libffi test.
    
    Using NUM_FPR_ARG_REGISTERS rather than NUM_FPR_ARG_REGISTERS64 meant
    that a parameter save area could be allocated before it was strictly
    necessary.  Wrong but harmless.  Found when splitting apart ffi.c
    into 32-bit and 64-bit support.

commit 69df91cfb4fa6bcb644350a80bff970f27478a6a
Merge: 2f450822 aa1f62c0
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 06:34:04 2013 -0800

    Merge pull request #59 from iains/powerpc-darwin-unwind-fix
    
    Fix PowerPC Darwin FDE encodings to use pcrel correctly.  Modernise the picbase labels.

commit aa1f62c0a093c30325dff1d4d2b6b4b22eb96929
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Mon Nov 18 13:11:56 2013 +0000

    Fix PowerPC Darwin FDE encodings to use pcrel correctly.  Modernise the picbase labels.

commit 2f450822a8698ba88441c56d152c7dc8924b127f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 06:52:29 2013 -0500

    Clean up code to appease modern GCC compiler.

commit 16d56c51aded374730920a4acde76ff3d2860ae1
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 18 06:36:03 2013 -0500

    An #endif in the wrong place would cause compile failure on powerpcle.
    Using bl instead of b doesn't cause runtime failures as you might think,
    but does mess the processor branch prediction.

commit 34f878a5ef28663f6b1d7fd26fb099429ea1579e
Merge: 83f65b63 1fd04578
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 16 06:57:54 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi
    
    Conflicts:
            ChangeLog
            src/powerpc/ffi.c

commit 83f65b63d9764a9cc7688fc5cda5ee2bd23faf54
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:53:50 2013 -0500

    Finally, this adds _CALL_ELF == 2 support.  ELFv1 objects can't be
    linked with ELFv2 objects, so this is one case where preprocessor
    tests in ffi.c are fine.  Also, there is no need to define a new
    FFI_ELFv2 or somesuch value in enum ffi_abi.  FFI_LINUX64 will happily
    serve both ABIs.

commit 1fd045784cac874b5d76b7fa931f67209a8280d3
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:53:50 2013 -0500

    Finally, this adds _CALL_ELF == 2 support.  ELFv1 objects can't be
    linked with ELFv2 objects, so this is one case where preprocessor
    tests in ffi.c are fine.  Also, there is no need to define a new
    FFI_ELFv2 or somesuch value in enum ffi_abi.  FFI_LINUX64 will happily
    serve both ABIs.

commit 362851379a49ce07d3e36e82c4e5c7b6cc16a352
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:52:43 2013 -0500

    Andreas' 2013-02-08 change reverted some breakage for struct return
    values from 2011-11-12, but in so doing reintroduced string
    instructions to sysv.S that are not supported on all powerpc variants.
    This patch properly copies the bounce buffer to destination in C code
    rather than in asm.
    
    I have tested this on powerpc64-linux, powerpc-linux and
    powerpc-freebsd.  Well, the last on powerpc-linux by lying to
    configure with
    
    CC="gcc -m32 -msvr4-struct-return -mlong-double-64" \
    CXX="g++ -m32 -msvr4-struct-return -mlong-double-64" \
    /src/libffi-current/configure --build=powerpc-freebsd
    
    and then
    
    make && make CC="gcc -m32" CXX="g++ -m32" \
    RUNTESTFLAGS=--target_board=unix/-m32/-msvr4-struct-return/-mlong-double-64\
     check

commit 1c06515d927d9de1582438d4eb5953890e79c5c7
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:41:36 2013 -0500

    The powerpc64 ABIs align structs passed by value, a fact ignored by
    gcc for quite some time.  Since gcc now does the correct alignment,
    libffi needs to follow suit.  This ought to be made selectable via
    a new abi value, and the #ifdefs removed from ffi.c along with many
    other #ifdefs present there and in assembly.  I'll do that with a
    followup patch sometime.
    
    This is a revised version of
    https://sourceware.org/ml/libffi-discuss/2013/msg00162.html

commit a97cf1fae575d8bfd5259c5c422025ad43911326
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:40:13 2013 -0500

    This patch prepares for ELFv2, where sizes of these areas change.  It
    also makes some minor changes to improve code efficiency.

commit 164283f4ac5972ce2ab5e015cc2ab1014c23276c
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:38:55 2013 -0500

    The powerpc64 support opted to pass floating point values both in the
    fpr area and the parameter save area, necessary when the backend
    doesn't know if a function argument corresponds to the ellipsis
    arguments of a variadic function.  This patch adds powerpc support for
    variadic functions, and changes the code to only pass fp in the ABI
    mandated area.  ELFv2 needs this change since the parameter save area
    may not exist there.
    
    This also fixes two faulty tests that used a non-variadic function
    cast to call a variadic function, and spuriously reasoned that this is
    somehow necessary for static functions..

commit 31257b3189f81a199bc2902c22bc5f2d7c54ccde
Author: Andrew Haley <aph@redhat.com>
Date:   Sat Nov 16 06:35:51 2013 -0500

    Fix sample closure code

commit db0ace3a38496af73eae3df02ef353736d16909f
Author: Andrew Haley <aph@redhat.com>
Date:   Sat Nov 16 06:29:25 2013 -0500

    Fix broken test cases

commit de10f5039ed7a53382ddcc95c368d03e535edb98
Merge: 58c2577a f3657da2
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 14 10:56:29 2013 -0500

    Merge branch 'master' of https://github.com/bivab/libffi
    
    Conflicts:
            ChangeLog

commit f3657da278dd63afcdd8762894a9bdaea8ef028a
Author: David Schneider <david.schneider@bivab.de>
Date:   Thu Nov 14 13:02:16 2013 +0100

    update Changelog

commit 58c2577a3ff80e7416ef0434769e2af23365719c
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Nov 13 16:55:36 2013 -0500

    This enshrines the current testsuite practice of using ffi_arg for
    returned values.  It would be reasonable and logical to use the actual
    return argument type as passed to ffi_prep_cif, but this would mean
    changing a large number of tests that use ffi_arg and all backends
    that write results to an ffi_arg.

commit 8af42f9944f7ed72c81ae360aac6a84dc11f89dc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 16:40:28 2013 -0500

    Respect HAVE_ALLOCA_H

commit cdf405d574f479b782454516366bd4f4b9b3415e
Author: David Schneider <david.schneider@bivab.de>
Date:   Wed Nov 13 15:50:21 2013 +0100

    add a testcase for the double/float issue on ARMHF

commit 77f823e31ffb557a466b24f7fba845fbf7831798
Author: David Schneider <david.schneider@bivab.de>
Date:   Wed Nov 13 14:26:57 2013 +0100

    stop trying to assing vfp regs once we are done with the registers

commit 37067ec5036f2a6ed7a4799f83f8f53160460344
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Nov 12 19:49:01 2013 +0100

    mark all vfp registers as used when done.
    
    To avoid assigning registers the would fit, once arguments have been on
    the stack, we mark all registers as used once we do not find a free
    register for the first time.

commit 2f5b7ce545473a7f6e41193edc29407cbebe82d5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 9 06:16:32 2013 -0500

    UltraSPARC IIi fix.  Update README and build configury.

commit becd754434173032f426d22ffcbfe24f55b3c137
Author: Mark Kettenis <kettenis@gnu.org>
Date:   Wed Nov 6 06:43:49 2013 -0500

    Align the stack pointer to 16-bytes.

commit 05c31093409f7b3e6d795fac21d2c954313d8162
Author: Konstantin Belousov <kib@freebsd.org>
Date:   Wed Nov 6 06:40:58 2013 -0500

    Mark executable as not requiring executable stack.

commit cf6bf9818e8394cfcdb07a40c6a5e2ee6b01d333
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 17:23:59 2013 -0400

    Fix up docs

commit 02177176854d16fc0f1a5958aa34da2f306630ee
Merge: c2422174 c265b4ca
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 17:11:22 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit c2422174b3edc0de0b148dfd6b67087bb881c4a6
Merge: f4b843f8 d918d478
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 14:08:23 2013 -0700

    Merge pull request #45 from foss-for-synopsys-dwc-arc-processors/arc_support
    
    arc: Fix build error

commit c265b4cacb9130f042699a85de9c7242b3f49cc3
Merge: f4b843f8 d918d478
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 14:08:23 2013 -0700

    Merge pull request #45 from foss-for-synopsys-dwc-arc-processors/arc_support
    
    arc: Fix build error

commit f4b843f83710ac378c48abd87fe66bb519d30d2e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 17:01:15 2013 -0400

    Don't align stack for win32

commit f3cd39345713db8e414cf642b6cb65a4cfe6018c
Merge: 666f3e71 6aa15900
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 13:17:57 2013 -0700

    Merge pull request #51 from vbudovski/for_upstream
    
    Don't use 16 byte aligned stack for WIN32

commit 666f3e71b56d92c49fcd2d7f349b8f8ebca0f8a3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 26 09:12:42 2013 -0400

    Add more credits to README.  Tidy up.

commit 73ada14e756bad97fad0e6915a821a3c7e079f81
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 26 09:09:45 2013 -0400

    Update README

commit d3372c54ce7117e80d389ba875dc5b6b2213c71e
Author: Mark H Weaver <mhw@netris.org>
Date:   Sat Oct 26 08:30:06 2013 -0400

    Fix N32 ABI issue for MIPS.

commit d6716aba8118eb0513885cfe557bedebb7016e8b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 15 15:42:49 2013 -0400

    Update travis-ci build dependencies to include texinfo

commit 16b93a211bcfbe4bd0efdcf94de225a71aa0ee02
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Tue Oct 15 15:33:59 2013 -0400

    Add nios2 port.

commit 2f5626ce02fce8267ab48ceb6d7d0ed7d672a75e
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Tue Oct 15 15:32:16 2013 -0400

    Fix testsuite bug

commit f64e4a865557e440774436b4c2b2fd7374290e97
Author: Marcus Shawcroft <marcus.shawcroft@arm.com>
Date:   Tue Oct 15 15:20:14 2013 -0400

    Fix many.c testcase for Aarch64

commit 128cd1d2f358f26d9fa75a27cf2b30356f5dd903
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 8 06:45:51 2013 -0400

    Fix spelling errors

commit ff06269d707cafbfef2a88afb07a79c9d1480c5f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 8 06:32:18 2013 -0400

    Update README for M88K and VAX

commit d2fcbcdfbea750d1f6a9f493e2e6c4d5ffa71b34
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 8 06:27:46 2013 -0400

    Add m88k and VAX support. Update some configury bits.

commit 6aa15900accc0a648cdebf11ec11d11697ebfffd
Author: Vitaly Budovski <vbudovski@gmail.com>
Date:   Thu Sep 5 12:05:06 2013 +1000

    Don't use 16 byte aligned stack for WIN32
    
    This fixes a crash when accessing __stdcall functions in Python ctypes.

commit 3b44d41156149af8da2a58825fefdfa23274ae7a
Author: Makoto Kato <m_kato@ga2.so-net.ne.jp>
Date:   Wed Jul 10 15:34:53 2013 +0900

    Fix build failure when using clang for Android
    
    clang for Android generates __gnu_linux__ define, but gcc for Android doesn't.  So we should add check it for Android

commit d918d47809c174d62283306b282749f8db93661f
Author: Mischa Jonker <mjonker@synopsys.com>
Date:   Mon Jul 8 15:51:36 2013 +0200

    arc: Fix build error
    
    One part of the patch for ARC support was missing in the upstreamed
    version.
    
    Signed-off-by: Mischa Jonker <mjonker@synopsys.com>

commit d3d099b40c122550279789200263346f120f6909
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 16:11:38 2013 -0400

    little-endian ppc64 support

commit 0f8690a84c874ec09a090c8c6adfb93c594acac6
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 15:54:40 2013 -0400

    Rebuild for ARC additions

commit f88118b345f27c46f5445d6e4832c498ff9a6d85
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 15:51:27 2013 -0400

    Revert "Merge pull request #36 from abergmeier/emscripten_fix"
    
    This reverts commit 6a4d901dde7b3f87984c563505717cde3113d16e, reversing
    changes made to b50a13b9c07ec09af4b9697e482acdad571e6961.

commit 6a4d901dde7b3f87984c563505717cde3113d16e
Merge: b50a13b9 587002c0
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 12:12:34 2013 -0700

    Merge pull request #36 from abergmeier/emscripten_fix
    
    Fixes for building with Emscripten

commit b50a13b9c07ec09af4b9697e482acdad571e6961
Merge: 767f1f96 b082e150
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 12:10:26 2013 -0700

    Merge pull request #44 from foss-for-synopsys-dwc-arc-processors/arc_support
    
    Add ARC support

commit 767f1f96e5282da44d7340e6815e9820a3f78e39
Merge: c3c40e02 b8a91d81
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 12:08:04 2013 -0700

    Merge pull request #43 from JensTimmerman/__m128
    
    added include for xmmintrin.h

commit b8a91d81be77d479327fdb6bdd9fdae6d18e6e63
Author: Jens Timmerman <jens.timmerman@ugent.be>
Date:   Tue Jul 2 10:57:37 2013 +0200

    added include for xmmintrin.h

commit b082e15091961373c03d10ed0251f619ebb6ed76
Author: Mischa Jonker <mjonker@synopsys.com>
Date:   Mon Jun 10 16:19:33 2013 +0200

    Add ARC support
    
    This adds support for the ARC architecture to libffi. DesignWare ARC
    is a family of processors from Synopsys, Inc.
    
    This patch has been tested on a little-endian system and passes
    the testsuite.
    
    Signed-off-by: Mischa Jonker <mjonker@synopsys.com>

commit cc9b518687e46b0d1acafdd4bc3f3b281c25a3d9
Author: Marcin Wojdyr <wojdyr@gmail.com>
Date:   Tue May 14 15:01:23 2013 +0200

    Update libffi.pc.in
    
    use -L${toolexeclibdir} instead of -L${libdir}
    to be consistent with Makefile.am

commit 587002c092cffe6e7a8d7028f246c241d03b738c
Author: Andreas Bergmeier <andreas.bergmeier@gmx.net>
Date:   Fri Apr 19 17:12:24 2013 +0200

    Enable disabling of libtool on platforms where it does not work (e.g. LLVM).
    Build libraries normally then.

commit c3c40e0290377d7cf948b072eedd8317c4bf215e
Merge: ede96e4e 4750e3c6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 30 05:24:14 2013 -0700

    Merge pull request #34 from davidsch/armhf
    
    Fix ARM hard-float support for large numbers of VFP arguments

commit 4750e3c662fd9569cb3e2d28f539685fd1ca8caf
Author: David Schneider <david.schneider@bivab.de>
Date:   Thu Mar 28 16:56:36 2013 +0100

    update changelog

commit 9708e7cf09f1bf815f4d6485eb1f180fabb35804
Author: David Schneider <david.schneider@bivab.de>
Date:   Wed Mar 27 19:31:04 2013 +0100

    folow the ARM hard-float ABI in ffi_prep_incoming_args_VFP

commit b41120981e5e49ca2da10b94b154775f50da5f36
Author: David Schneider <david.schneider@bivab.de>
Date:   Wed Mar 27 16:38:35 2013 +0100

    create separated versions of ffi_prep_incoming_args_* for SYSV and VFP ABIs.
    
    The different versions will be called depending on the value of cif->abi

commit dd26f1f39c54861c5b91931f0f37a72942c2a072
Author: David Schneider <david.schneider@bivab.de>
Date:   Thu Mar 28 15:39:01 2013 +0100

    add a failing test for closures on ARM hardfloat

commit 3c1608613ab3c2184222b98c5482cddedd6b559b
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 19:24:47 2013 +0100

    extend ffi_prepare_args for FFI_VFP (hard-float ABI), fixing an issue with passing VFP arguments in VFP registers and the stack, while at the same time not using all core registers.

commit 0f2ff2d4c92719be8936179f9ab674f4d1a3fd14
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 19:22:02 2013 +0100

    separate ARM ffi_prepare_args in a version implementing the simple SYSV calling convention and one for the hard-float calling convention

commit 3a352b8a8252400a83de22c7c424bf1887b4a2ef
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 14:24:04 2013 +0100

    move the hardfloat specific argument copying code to the helper function

commit 5df6b7944a4225b6eb329f3886be64e04e966f29
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 14:02:21 2013 +0100

    extract setting of arguments to be passed to a helper function

commit 7d1048c471bb4b1f9d67a9e9f8e95f9a1d2e6d45
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 11:33:33 2013 +0100

    extract code to align the argument storage pointer to a helper function

commit b9f013788f0f384c423ad963475aaacb55598135
Author: David Schneider <david.schneider@bivab.de>
Date:   Mon Mar 25 13:27:36 2013 +0100

    add a testcase, that on ARM hardfloat needs more than the 8  VFP argument registers to pass arguments to a call

commit 2fbdb0f231cafdb77b025d3cd8afe90cda99b3ba
Author: David Schneider <david.schneider@bivab.de>
Date:   Mon Mar 25 13:26:02 2013 +0100

    use the absolute value to check the test result against an epsilon

commit ede96e4eb660bbf3e0fe048135efa8106f48af5d
Merge: f22ab3c6 9e34992a
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:38:21 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit f22ab3c6877cbdd07f058b68816b0086b1cb0e1e
Merge: 12b1886d d08124be
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:34:54 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit 9e34992a5ea2fda1dba5875bf96dc91a7230f51f
Merge: 12b1886d d08124be
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:34:54 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit 12b1886d7b1f8aa264b1d348bfa47a0e14712df4
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:32:12 2013 -0400

    cygwin fix & updates for 3.0.13

commit d08124bedf2c6d61874fe215404783aeb9f6f1ac
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:32:12 2013 -0400

    cygwin fix & updates for 3.0.13

commit cb32c812d04d1dfa72002cc04924e7e4fef89e02
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 09:27:55 2013 -0400

    Fix lib install dir

commit efd7866a361a6f636bae8400d26c6811e56ca207
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:35:57 2013 -0400

    2.0.13rc1

commit ff647ad4dff2f07dd153f295a1f70b1d906cd6ca
Merge: 4acf0056 d9dd417b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:20:40 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi
    
    Conflicts:
            ChangeLog

commit 4acf0056f55c757490dae6c29a65b0321327ea8a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:18:45 2013 -0400

    Build fix for soft-float power targets

commit 675c9839224e4268187f1ec6f512127f9db555d0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:12:38 2013 -0400

    Documentation fix

commit 8a286f570ccd41db81f74ea7f248da62241d898a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:01:19 2013 -0400

    Fix for m68000 systems

commit d9dd417b09566af55b7b3000bb53ccaf2e1d6c92
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:01:19 2013 -0400

    Fix for m68000 systems

commit 215763d012a944d95406b394d6013b80d220e870
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 07:57:35 2013 -0400

    Update configury.

commit 9180d8f39c9b6afe17b78277c2711a5d9948e824
Merge: 2fb527a0 7e1b3264
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 07:46:55 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit 2fb527a017a4943e176a489ff103231b86464b59
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 07:46:38 2013 -0400

    Add Meta processor support

commit 211a9ebf4d1a9801e15e103566aed2b8c42790be
Merge: f308faf1 ee18766b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 04:24:40 2013 -0700

    Merge pull request #32 from alex/patch-1
    
    Fix for a crasher due to misaligned stack on x86-32.

commit 7e1b32649efd24814e86172e196f390566f9e970
Merge: f308faf1 ee18766b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 04:24:40 2013 -0700

    Merge pull request #32 from alex/patch-1
    
    Fix for a crasher due to misaligned stack on x86-32.

commit ee18766b169811426c14b011fbb46d81e344f926
Author: Alex Gaynor <alex.gaynor@gmail.com>
Date:   Thu Mar 14 15:00:33 2013 -0700

    Fix for a crasher due to misaligned stack on x86-32.
    
    Full information on reproduction (using Python's ctypes available here: http://bugs.python.org/issue17423)

commit f308faf1eabaf8dc24966ab17fbf94368f46b9c7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 11 14:25:13 2013 -0500

    Add moxie support.  Release 3.0.12.

commit 4ea22e54e3b143fe05c413f6dddd236af6bcbfb2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 10 08:48:38 2013 -0500

    Update README

commit 10e77227b6ae85f46f28590bfb09ca3608554358
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 10 08:47:26 2013 -0500

    mend

commit a9521411a53d58f2bf88199242200ceb0d4dae3a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 9 06:54:40 2013 -0500

    sparc v8 and testsuite fixes

commit 70b11b47eea93bf43627588d494d0b3b0d062481
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 16:12:19 2013 -0500

    Fix small struct passing on ppc

commit 63ba1fa79f7c4ce42de848debe233aab31aecb51
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 15:18:19 2013 -0500

    Remove xfail for arm*-*-*.

commit 24fbca4c1d57d4ea628c0a8ba643684daf54a37e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 14:19:56 2013 -0500

    Fix typo

commit b0fa11cb0a94ce6baca058eab9b10e40475e71d6
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 14:17:13 2013 -0500

    More man page cleanup

commit 8bd15d139a58a6e46dc90a1cb2d89f59f32f06c7
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 13:56:37 2013 -0500

    Fix many.c testcase for ppc

commit 7aab825cf198be85490d3cd80e778d415d85ad9b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 13:26:21 2013 -0500

    Add missing files to dist

commit cb03ea8f4eb08024e44abe4392edc77b89fbfbad
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 12:25:18 2013 -0500

    sparc v9 fixes for sun tools

commit 35ee8d44f31dd3d3b88083c837dc351593e13cc2
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 07:12:41 2013 -0500

    Fix microblaze big-endian struct issue

commit 9db7e1a958fc484ba149efe027008b9a170395fb
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 21:06:08 2013 -0500

    Fix botched sparc patch. Update version.

commit ce0138e61455f268af326e26908b9680ec2c4bea
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 18:04:01 2013 -0500

    Update bug report address. rc2.

commit fd07c9e40451e0ec1d0475cd54a83d45ccaea2c0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 18:00:36 2013 -0500

    Add cache flushing routine for sun compiler on sparc solaris 2.8

commit ed6ae9501b2bab45daf93b4935eb0c977635b763
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 16:43:36 2013 -0500

    Add libtool-ldflags. Define toolexeclibdir for non-GCC builds.

commit ffef2e046aaec853be356f0b8770a335185ea9cf
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 15:47:01 2013 -0500

    x32 and libtool fixes

commit 95eecebb2858dc6f1495a61072ff36d0a8127144
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 15:32:46 2013 -0500

    Remove a.out cruft from dist

commit 176aa9d2e23d9cd57d6f250692d910b408f9a651
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 15:29:22 2013 -0500

    Fix GCC usage test and update README

commit f3a4f3fdde89b04d66983a42a25d09161c5d4d54
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 09:57:20 2013 -0500

    Fixes for AIX xlc compiler.

commit 522f8fef49848927482bc63c94afaea5b84e5ec1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 20:31:31 2013 -0500

    Fix man page. Clean out junk.

commit c4dfa259eb4e8e6f4c397868d7fee80aa0bb6a12
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 17:43:24 2013 -0500

    Bump soversion

commit f62bd63fe6123cadedb8b2b2c72eb549c40fbce9
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 17:38:32 2013 -0500

    Release candidate 1

commit f7cd61e9e68a4a51147df04d75bfe5b91b9d9286
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 17:38:04 2013 -0500

    Fix pkgconfig install bits

commit 6a790129427121f7db2d876e7218a3104e6d2741
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 17:37:15 2013 -0500

    Work around LLVM ABI problem on x86-64

commit 370112938e705128fd5dd4017fc1a1210bd0271a
Merge: bada2e32 bcc0c280
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jan 27 05:09:04 2013 -0800

    Merge pull request #28 from jralls/master
    
    Reorder x86_64 checks

commit bcc0c28001b6d427d5cd8037d2e3c892babc6b4c
Author: John Ralls <jralls@ceridwen.us>
Date:   Sat Jan 26 15:21:14 2013 -0800

    Reorder x86_64 tests
    
    So that darwin and cygwin/mingw are tested before the generic check --
    which allows them to actually be set.

commit bada2e326d9a9acf3ae40cfa4f5d7a9ba97b2ea8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 08:02:07 2013 -0500

    Update README

commit 655bb8f3690feba8e840a5f1854b1d78ed08f692
Merge: 1035ffb2 840f9758
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 08:01:24 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit 1035ffb2f468e1a1c401d58cff7e7abb69838e68
Merge: aeb8719a 40860245
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:55:53 2013 -0500

    Update README

commit 840f975866052fdd91b2c224d56e01ae5900b60d
Merge: aeb8719a 40860245
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:55:53 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit aeb8719a34756969970603fca4568530d56708af
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:37:30 2013 -0500

    New microblaze support

commit 40860245a4fd91a1b88adc9171ec993c549e45d5
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:37:30 2013 -0500

    New microblaze support

commit 20cae32b152b43679ae65a85db9a1c6bb8a143dd
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:07:38 2013 -0500

    Xtensa support

commit 9742f91782faef4a15941508a22c408fb7d1d227
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:03:41 2013 -0500

    Mention IBM XL compiler support on AIX.

commit f03eab08248f122ce3b623a18df9e19fae1b6e98
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 17:14:11 2013 -0500

    Remove obsolete inline test functions

commit 05fbe1faedc7b2580d5f14010d00e9e3cee73951
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 16:54:40 2013 -0500

    xlc compiler support

commit 0b4986a7889ed1864674192228f1162c1b5770a8
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 11:19:52 2013 -0500

    [travis] install dejagnu with sudo

commit 3c337eef51ab9a4993fc875bfa26289dd6a08881
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 11:18:14 2013 -0500

    [travis] install dejagnu

commit 90720962ce1baf9fc35d1bde1738102bcd5bd5ed
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 10:57:30 2013 -0500

    Add first travis config file

commit bff052d9cd5be41ba9e47c76114054af487d3c30
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 10:24:32 2013 -0500

    32-bit x86 fix and more

commit cd41aeab6176f839167955c016ecc19f65f75df3
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 17:25:45 2013 -0500

    Add compiler column to table

commit 8bf987d4df7c4d21435b9211f6cc86abf5904b42
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 17:24:51 2013 -0500

    Fix for sunpro compiler on Solaris

commit 3ee74fd6dc8ccd32b608bbff73526838fc34f70b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 17:15:03 2013 -0500

    Update documentation version.

commit 13e2d7b92557a9511a0414df82bf2df3edc55cba
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 10:52:02 2013 -0500

    Handle both 32 and 64-bit x86 builds regardless of target triple

commit 5141543000fc86a3d49a907a2313713ee79e504d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 07:35:53 2013 -0500

    Don't run EH tests with non-GNU compiler

commit 56ba8d86f47937a0afb81a2b9e77c9d235d9db45
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 07:25:10 2013 -0500

    Don't use warning checking macro with sun compiler

commit 6a028caec1b2c7904feb4c4f9cb7e1125e1d1b60
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 01:19:43 2013 -0500

    Don't use GCCisms to define types when
    +       building with the SUNPRO compiler.

commit 2d9b3939751b3ef9739049509d353ade10b32a8f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 9 21:14:54 2013 -0500

    Fix for closures with sunpro compiler

commit 8308984e479e3274a36e98e8272b5adbb6b774c2
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 15:14:21 2013 -0500

    Make sure we're running dejagnu tests with the right compiler.

commit f26c7ca67147450db2fe25ea932944e6cf145d5c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 14:47:05 2013 -0500

    Make compiler options in dejagnu runs compiler specific

commit 74c776e21907fc2e59257c021f23077f8b7966cb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 12:25:54 2013 -0500

    Switch x86 Solaris to X86 from X86_64

commit 8962c8c8d06803e310bac0ffc8e84ea15daeff3f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 12:22:24 2013 -0500

    Fix read-only eh_frame test

commit 35ddb69c2b49746d940e919ca226ecc1be94f14a
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 07:53:37 2013 -0500

    Only emit DWARF unwind info when building with GCC

commit f7879bc3f3a8d0bbfcc38771732c160a58ba9cd8
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 07:30:28 2013 -0500

    Testsuite fix for Solaris vendor compiler

commit 67cea90fc0897021466fd102671019d30db474cd
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 7 06:30:24 2013 -0500

    mend

commit 0de3277b18cf54be3b81d509b9be9b47d9bc1e82
Author: Thorsten Glaser <tg@mirbsd.de>
Date:   Mon Dec 3 00:02:31 2012 +0000

    Testsuite fixes (was Re: [PATCH] Fix libffi on m68k-linux-gnu, completely)
    
    Dixi quod…
    
    >although I believe some 3.0.11 checks to be broken:
    
    And indeed, with a few minor changes on top of git master,
    I still get a full run of PASS plus one XPASS on amd64-linux!
    
    With the other patches (from this message’s parent) and
    these applied, I get a full PASS on m68k-linux as well.
    
    So, please git am these three diffs ☺
    
    bye,
    //mirabilos
    --
    FWIW, I'm quite impressed with mksh interactively. I thought it was much
    *much* more bare bones. But it turns out it beats the living hell out of
    ksh93 in that respect. I'd even consider it for my daily use if I hadn't
    wasted half my life on my zsh setup. :-) -- Frank Terbeck in #!/bin/mksh
    From 5cb15a3bad1f0fb360520dd48bfc938c821cdcca Mon Sep 17 00:00:00 2001
    From: Thorsten Glaser <tg@mirbsd.org>
    Date: Sun, 2 Dec 2012 23:20:56 +0000
    Subject: [PATCH 1/2] Fix tests writing to a closure retval via pointer casts
    
    As explained in <Pine.BSM.4.64L.1212022014490.23442@herc.mirbsd.org>
    all other tests that do the same cast to an ffi_arg pointer instead.
    
    PASS on amd64-linux (Xen domU) and m68k-linux (ARAnyM)
    
    Signed-off-by: Thorsten Glaser <tg@mirbsd.org>

commit 8f4772f383abd71cfa141c8a70ba11c1aa4ebe2c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 7 06:14:53 2013 -0500

    m68k fixes for signed 8 and 16-bit calls.

commit ea7f8440d58afbebb181e295ff564fdf3d6590a0
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 4 09:09:32 2013 -0500

    remove gcc-ism

commit f06c0f10377ac04eeba5e632dbe5c62c629df4e6
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 09:39:17 2013 -0500

    Add missing ChangeLog entry and generated files.

commit 1f8675d4c101d19d67ca0a55ff2ba973349558ad
Merge: 335f419a f6b58d2b
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 06:34:38 2013 -0800

    Merge pull request #26 from rofl0r/master
    
    fix build error on ppc when long double == double

commit 335f419a86090cda9f215d149572f9481c3ad034
Merge: 53236d50 6d6f7110
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 06:30:03 2013 -0800

    Merge pull request #23 from rurban/master
    
    cygwin/mingw shared libs need libtool LDFLAGS = -no-undefined

commit 53236d5061034cc0a7f4647fc1bd05ba1aeb3d2a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 09:24:55 2013 -0500

    Regenerate files

commit 72222ca3fbe560e13c8dc89ca441b28b7cc74daf
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 09:06:38 2013 -0500

    Update texinfo.tex

commit 1e326c95431fc9896422fa36659f3e833852579c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 09:05:02 2013 -0500

    Update config.guess and config.sub

commit cb6671f5b8a9596ff968c6b6c304f70adf71b368
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:56:07 2013 -0500

    Missing .gitignore changes for xcode support

commit ebbe77966855395a2a47ed2c09a38f93eb0481cf
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:54:05 2013 -0500

    missed x32 libtool patch.

commit 4394096da0aca0dd422b479a043c18b4f05c5770
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:51:35 2013 -0500

    missed trampoline_table patch. Move to GCC.

commit ed7a59c3ff7c84bd95c374a5aff21599f705e6dc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:48:01 2013 -0500

    Windows symbol export fix.  Move to GCC.

commit ccee09a4ff843b11c7d8b6819776f57d187305c7
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:41:55 2013 -0500

    +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.

commit 089dbce7cc0889eb26444d89ae062c73c69f26f0
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:37:35 2013 -0500

    med

commit 980a334c42b4b0eff32e55929ec6727d1326b05d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 07:36:42 2013 -0500

    Test GCC update

commit 8bad679ade5000e57cdc9cacde22e8b99840930f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:28:35 2013 -0500

    New stand-alone patch

commit 981c32ee115e9f0d6546a74592875e138222a9d1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 07:34:03 2013 -0500

    Merge with GCC.  Eliminate quilt bits.

commit 61a054929517fb80c437ba71c91f3e20cfff581a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 28 06:07:41 2012 -0500

    Refresh config.guess and config.sub

commit f6b58d2bdc0a24ce94dedce59802f091979df265
Author: rofl0r <retnyg@gmx.net>
Date:   Thu Nov 22 16:26:21 2012 +0100

    fix build on ppc when long double == double

commit 69da33a0761aeac73f9e9646269da61c906d6020
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 12 15:25:47 2012 -0500

    Pull in config.sub for aarch64 support and more

commit f680b598b7bdde325ac9349e8c35151c228bf2df
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 6 16:00:40 2012 -0500

    Add missing aarch64 configury bits

commit dfadfb19853c57c8623c436d0ef2bdafab24b433
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 31 06:46:41 2012 -0400

    Rebase for ppc64 fix

commit e944b8c7eb1e2eeb9c0f3b9742b4d7f476860ce1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 14:06:09 2012 -0400

    Add PaX work-around

commit 9ccd51be1fdeb99f8b4f42f905166c2abbba8ac0
Merge: f342996c fa5d7479
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 13:37:37 2012 -0400

    Fix commit conflicts

commit f342996cb50eb23b868afcff5ac0cdbb6b505d63
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 07:42:27 2012 -0400

    Darwin12 fix

commit 58e8b66f70cef2e3c9b0e5a707b45d634cbbf5d9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 07:07:19 2012 -0400

    AArch64 port

commit fa5d747905472571fd472c07d4726017624f66b3
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 07:07:19 2012 -0400

    AArch64 port

commit 6993a6686f43f2313b18142c1e96189a27db2aa3
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 06:59:32 2012 -0400

    Fix autoconf macros

commit 70084e70ddb13b29dd05c751b1904de206bbe790
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Oct 12 23:55:06 2012 -0400

    Update Tile* port info

commit 9c00a3f6742d61404b31268cc773e7130ff43331
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Oct 12 16:46:06 2012 -0400

    TILE-Gx/TILEPro support

commit 048d2f41c3a6664b4b64bf21e804686662da4160
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 11 10:55:25 2012 -0400

    Rebase

commit 6d6f71108064f5069edd7bf771059d3b82640135
Author: Reini Urban <rurban@cpanel.net>
Date:   Sat Jul 7 12:42:00 2012 -0500

    cygwin/mingw shared libs need libtool LDFLAGS = -no-undefined
    
    otherwise only static libs are created.

commit d330f19292da8f39a78a9e2b0ba08df8094e3bc5
Author: Nicolas Lelong <rotoglup>
Date:   Sat May 5 09:37:02 2012 -0400

    iOS build fixes.

commit 09b23cfc1d6d15361eee18818851fd3cacb26559
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 27 08:29:48 2012 -0400

    Update README with Blackfin/uClinux support

commit 213ed15c70e72d666154c08e2b41dae3f61f20d3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 27 01:34:15 2012 -0400

    Add blackfin supprt from Alexandre Keunecke.

commit ff3d76fd427382ce7d2b2ed54acdd0bce470ca4f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Apr 11 23:16:48 2012 -0400

    3.0.11

commit 7e0a412c4fd9cbe77b467a9bf86f56aea62632c3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Apr 11 22:47:44 2012 -0400

    Update files to ship

commit 39e6a5860416f7bad992149817e1da1ba7c460d4
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Wed Apr 11 22:39:46 2012 -0400

    More mac/ios build improvements

commit 853cc722a16f8d1254573ef3bb73c7b8f3d8a110
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Apr 10 06:33:33 2012 -0400

    Fix typo for darwin targets

commit 3f5023068cda07a3dd6dacbaa875a5b5fc96d4bb
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 20:34:51 2012 -0400

    mend

commit ebb8e8945681ce0af7a5c47a980287e8ece84b84
Author: Mike Lewis <mikelikespie@gmail.com>
Date:   Fri Apr 6 20:02:08 2012 -0400

    Build iOS library with xcode

commit a098b44f4c592c2192fcdef4fad6108eb3f4301c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 17:04:35 2012 -0400

    Reapply missing testsuite changes for arm

commit 10d1e51393f08c14045db85843208f44f9f1e9ba
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 11:57:14 2012 -0400

    Update to rc4.  Upgrade autoconf version.

commit 9bcc884276dc0a807b2605e510b11b1740dd9aa2
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 11:53:07 2012 -0400

    Fix Linux/x32 reference in README

commit a044a56b1cd2a0924f5ec0d6b5a5089d14fcd1a1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 10:39:10 2012 -0400

    Linux/x32 libtool fix

commit 59bb61a36661b972e8443531d3b7bc736e131a4b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 08:26:14 2012 -0400

    Update libtool version, README, tests dists

commit f2981454cbe25cf9411b710f46c5f5552003a123
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Apr 5 15:45:19 2012 -0400

    Revert debug code changes

commit 39dccddb606f6fdb8dcb177d416e884041da6e30
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Thu Apr 5 12:32:41 2012 -0400

    Fix building with Clang for Darwin (OS X 10.6+ and iOS
     4.0+)

commit 3afaa9a34a81a305227ae8cf4f12b9d0484d055e
Author: Peter Rosin <peda@lysator.liu.se>
Date:   Tue Apr 3 07:40:31 2012 -0400

    Fix return_uc.c test case on windows.

commit 65f40c35a2873d8328359ec4512bd0736dbe32c7
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Apr 3 07:35:59 2012 -0400

    Repair ppc build regression.

commit 0a1ab12a8d15caa894116a82249551f23ef65612
Author: Peter Rosin <peda@lysator.liu.se>
Date:   Fri Mar 30 08:14:08 2012 -0400

    Various MSVC-related changes.

commit e1539266e6c6dde3c99832323586f33f977d1dc0
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 30 00:40:18 2012 -0400

    ARM VFP fix for old toolchains

commit 7c5e60b5f47d725036a72162f136272bc407e3a1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 08:48:22 2012 -0400

    Rebase on fixed GCC sources

commit e72ed5eeaa9cfb0fdc86f6b3422734177b659f96
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 21 09:52:28 2012 -0400

    Fix vararg float test

commit bd78c9c3311244dd5f877c915b0dff91621dd253
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 21 08:09:30 2012 -0400

    More cygwin fixes

commit 84d3253f86dad6b4f261231935675d35fd964b05
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 19 23:07:35 2012 -0400

    Rebase post GCC merge

commit 964c5b93f80dcaacf73056b7d15a4d2b4b7a217c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 3 14:46:20 2012 -0500

    abi check fixes and Linux/x32 support

commit 6c194233a5f6f1d274669afc5924a9e1f69d4876
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 3 14:17:54 2012 -0500

    Add -no-undefined for both 32- and 64-bit x86
    windows-like hosts.

commit 8360bf1cd0aba8db5582266da70467de7e89a57a
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 23 07:01:13 2012 -0500

    Ensure that users don't include ffitarget.h directly

commit d578b89619cf3d2baff027b203619dc307fc12e3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 15 00:18:18 2012 -0500

    Fix ABI check regression

commit dee20f8e45c486f5018f31e09bb362992aa498c3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 10 13:06:46 2012 -0500

    Rebased from gcc

commit 4130e1972d001143e5e9f3c6b65f2a6f9524169e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 3 13:18:27 2012 -0600

    Refresh autoconf-archive m4 scripts

commit 1ff9c604bb214b5a305064af1049577ef783730a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 1 16:34:30 2012 -0600

    Rebase from GCC

commit 211060eb8f714af0e935430efa6bb45e8e3ffc5d
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 14:24:01 2012 -0500

    Alpha fix

commit 78d9c638ba0de6edfbc603fd65d19c6562663248
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 14:17:24 2012 -0500

    mend

commit afaf3381604bd81803d8a5f3bf4d462299f1aac3
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 14:17:13 2012 -0500

    mend

commit 9e9c4aeb77de5608d602109f22100c1c0c79faad
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 14:11:23 2012 -0500

    Add Amiga support

commit 8efc0b1f4027d5a3cbf205e55d422d94e60f3226
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 13:47:38 2012 -0500

    Unlikely fixes

commit 1df51398ae183dc208ba4599ee867278b04d13d3
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 13:43:59 2012 -0500

    mend

commit cd2277cc796b96b149cd284ae85326529fe7fb9c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 13:43:38 2012 -0500

    mend

commit 164e6fe04b189746c8bd5810c6e3e919770bb9d4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 12:41:06 2012 -0500

    m68k fixes

commit c365ee7577bef00cb3c2c0b5224147aea04138d8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 11:13:18 2012 -0500

    Refresh

commit f22c38bbd93bcc0c04bf26c3e414556b3177c385
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 18 15:13:41 2011 -0500

    Update variadic patch

commit 03e9ee321a3c208f88d2432587ce40b2bb2430ba
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 18 15:13:00 2011 -0500

    Fix cls_double_va.c and update docs

commit 95f31151ec792809cfb80d385350f9f56d95aa25
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 23:46:05 2011 -0500

    Rerun automake

commit 198ed1ef85cf18342627f8d44bc3f12c9975a49d
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 23:45:20 2011 -0500

    Update version number

commit 4f17e1f142e805b13959ba2594ee735eae439f4e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 17:22:24 2011 -0500

    Fix last patch

commit ff9454da44859716a5bd4eaa344499288c79694f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 17:18:51 2011 -0500

    Add David Gilbert's variadic function call support

commit ea14ae85e8f54ff046b7fb8a9cfe349475272044
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:36:59 2011 -0500

    clean up

commit 52891f8a93f9b8de801cca4cf05639422dc9773e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:35:55 2011 -0500

    Add powerpc soft float support

commit c8f1bde8e2566c5a87474b4d08aa934d6d28ee75
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:21:02 2011 -0500

    Remove junk file

commit 6a6e7f862f3cc677e19131587caa619e7f9c7ffd
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:20:42 2011 -0500

    Fix kfreebsd

commit d52fbed05ccbdee9ed8b9c911cbb4f85b0ff0f2a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:13:41 2011 -0500

    Add missing ChangeLog entry

commit 322052ce65c4fdac85bedc24726fd0e0094ba521
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:11:49 2011 -0500

    Fix arm wince alignment issue

commit af18df2bc2f52df81e7b5c619bd86db8489dc873
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 15:52:08 2011 -0500

    Remove use of ppc string instructions

commit 236c9391321f83ad40daf03f40c35c9ebc1da6b3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 07:37:40 2011 -0500

    Fix darwin11 build problem

commit c411f140f305ebb00d33c92b7cb2742bcd241b6a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 07:32:36 2011 -0500

    Fix ax_enable_builddir macro on BSD systems

commit 3d56106b07735abef6ae9f032e94f560a0ed2f30
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 07:20:24 2011 -0500

    Rebase

commit 8c01954c50bf8ef2e00a3db166060a1b8f83a20d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 14:26:32 2011 -0400

    Build assembly files with debug info

commit fed646a2078969f4ce89c29107f1e72e03f4a977
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 09:50:20 2011 -0400

    Regenerate configury with missing m4 macros

commit d76441cf71216f8f1e62e7ec852a7f4e21371ec8
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 24 10:14:23 2011 -0400

    Update list of supported OpenBSD systems

commit ee6696fdf4768ba6dd037fb6dd99435afa13816e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Aug 23 12:30:29 2011 -0400

    3.0.11-rc1. soname bump.

commit c6265c36a91eab8175d0e72db84d8225418f2379
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Aug 23 10:31:33 2011 -0400

    Version 3.0.10

commit cc5e41bf32d18a14dbdd653d52eacdbdc934c392
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Aug 22 16:34:24 2011 -0400

    Fix use of autoconf macros

commit 049d8386ff52399e69a530b55b9feedc8a2589d2
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Aug 22 14:50:10 2011 -0400

    Many new patches

commit 3b7efa4e74f0dcebf70b447391987aedd3473306
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Aug 15 13:25:13 2011 -0400

    Revert remove-debug-code patch temporarily (for ARM Fedora release)

commit d992ac54a2a9e7e064ffebcb91e05e7cb86185c7
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jul 29 17:32:53 2011 -0400

    Refresh from GCC

commit 2d3fb36420e09304220ee6c0652bae5eccdb965d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 30 16:54:42 2011 -0400

    Fix darwin EH

commit 30ff28e1d8cd9ed5319f1fbe9c7cccacc8161fb3
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 28 15:36:23 2011 -0500

    Fix permissions

commit 09f8f310f4f53a24289682d3d28f4399d7bafc3b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 28 15:36:07 2011 -0500

    More AIX fixes. rc9.

commit 53d7b165642c220aa5166ba350b490802f359b54
Merge: 18dd85d6 3000dc23
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 28 15:23:31 2011 -0500

    Merge branch 'master' of https://github.com/landonf/libffi-ios

commit 18dd85d6cb9f3f3eea2a3b70eb4e150045905c55
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 25 16:23:04 2011 -0500

    rc8. fix last patch.

commit 74ee6ea8b42e60d44a3ae8938b1e42a38c1e66b4
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 25 15:52:14 2011 -0500

    rc7.  More AIX fixes.

commit 2541679dbd3db0014890f42192dbf8008ab923fa
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 25 15:09:13 2011 -0500

    Fix ppc32 bug

commit cbb062cc35c518004f1ab45c847f8ec4f66069ad
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 17 20:39:21 2011 -0500

    Another non-GCC configury fix

commit 8cf8878425e9971866fa6b27a3e4914729ad3960
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 15 15:19:49 2011 -0500

    Fix ax_cc_maxopt.m4

commit 24b72070c0937f9000744c77a636f07e04786b6a
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 14 15:30:57 2011 -0500

    Fix warning and msvcc patches

commit d72c49e556a8c516e97f6722d1be2f1209c21207
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 13 11:41:05 2011 -0500

    Add missing msvcc.sh

commit 3000dc237f6017a7445d8404097a4f46b73fdd29
Merge: 55e4a5aa 1fbf9dc4
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Feb 13 08:55:53 2011 -0500

    Merge remote branch 'upstream/master'

commit 1fbf9dc44feea564e84ad7406d17c5d5906ce0e0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 13 08:06:39 2011 -0500

    Fix bad_abi test. rc5.

commit 90af15ef5c1614b76370c4d13954586fabf9e8e3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 12 12:29:36 2011 -0500

    iOS fixes

commit 55e4a5aa1568558a04aa40f16fc022e459af53e3
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 12:13:46 2011 -0500

    Add support for building a full armv6/armv7/i386 universal iOS library

commit a0c80f279b8733d001cb5e5c5a3289ecb7a6e56a
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 11:43:49 2011 -0500

    Update my e-mail address.

commit 8195e0e11df7a53fa474caa9375f73ca1136ed66
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 11:27:00 2011 -0500

    Fix symbol prefixes on Darwin.

commit 56b3f8cef0f28cefaa0f40fe0cf7c524adef131d
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 11:14:54 2011 -0500

    Modify the ffi_closure structures to hold table/table entry pointers instead of a code buffer.
    
    This re-integrates commit da2773e02ab26cc11a7f.

commit 28a00f61ff3f64c4eb2269ce2aea3d493274469e
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 11:01:48 2011 -0500

    Apple assembler support; fixed most gas/ELF-isms.

commit 7f2ea33a80bfced5e48ed7292f3b8f057d54ff8f
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:39:18 2011 -0500

    Replace RETLDM macro.
    
    The macro is incompatible with Apple's assembler; switch to
    a simple inline version.

commit 92ff23e77fa586455b427b71f49e1d9502470e6e
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:24:49 2011 -0500

    Switch to the current iOS 4.2 SDK.

commit 58fb8ca2dfb89ad70284bb9678d3d4dbb658c8a7
Merge: cc3fbd97 71c792f5
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:23:19 2011 -0500

    Merge remote branch 'upstream/master'

commit cc3fbd975ce9366d4c40a6ff6c108f664867bd7c
Merge: e449a43b f6ab3edc
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:21:02 2011 -0500

    Merge branch 'master' of github.com:landonf/libffi-ios

commit e449a43bbe12f8119399928db1ae26adc71dde14
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:20:42 2011 -0500

    Allow specification of the minimum supported iOS version.

commit 71c792f51bcf3e2f334e5ea1fb1a8b667cb3aedb
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 12 09:33:11 2011 -0500

    rc4

commit 7c7c9f327299331022f6000603a35f2310dfe308
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 12 09:29:29 2011 -0500

    ungccify parts of the build

commit ed62e48b95a0fa60b685f647cb73c9e190eec35c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 11 12:23:58 2011 -0500

    Fix permissions

commit 17d9e9e68ddb1b915a0b9751713033861b598575
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 11 12:23:20 2011 -0500

    Use newer autotools.  Only build debug.c when --enable-debug.

commit 6972a4ffda75761eaab7dfbe0fb1516b255e8e0c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 11 07:32:51 2011 -0500

    Fix xlc build on AIX

commit 1833aa0fb9831eb0725b63e35886c0f6d35df480
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 11 07:11:04 2011 -0500

    sparc ABI test fix.

commit f1fb139b4e283fffdcf205a903943d5e9d2bb2a2
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 18:30:02 2011 -0500

    Fix tests

commit 5cb470331d181c84d5d621e88868327a324a5898
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 15:23:06 2011 -0500

    Fix permissions

commit 269deef6dbbb426695919d3398357fada3bb288c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 15:22:23 2011 -0500

    rc3

commit 42695e72504f647444b8e8e9b90bd24f1e3220e1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 15:12:35 2011 -0500

    Fix IRIX support

commit a6e56b97f62a3feeb3301c24a2e4cae55e546021
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 15:00:42 2011 -0500

    Add powerpc64-*-darwin* support

commit 747d6c32d4abb07c10c3a1f93579c3929aaa2487
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 14:56:23 2011 -0500

    Add Interix support

commit eab6e41cde382aa07de6c011d514a14c0d62eb47
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 10:15:02 2011 -0500

    Remove README.markdown form libffi-ios

commit 69dbe845f4ee3e6ce8999f17a1e4f2179ef7da89
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 07:38:43 2011 -0500

    Fix xfails

commit f498318c07b95137fe259d86bdbe15347588b84a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 06:26:46 2011 -0500

    Update README for iOS again

commit 630b9c0ac43c7edcbfd892e23c09fb26724f4ac0
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 06:24:23 2011 -0500

    Update to rc2

commit 0cad4386fa4c9ea5f8ca88b16247db4e5c8fea90
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 06:11:46 2011 -0500

    Add ChangeLog entry.  Fix copyright headers.

commit 09cb76f2645bd2c151846e9249d8ea707ba01e8c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 20:39:51 2011 -0500

    Add missing change

commit 2e3a48ccdd54340983c46a29a0b41985e3e789ac
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 20:37:26 2011 -0500

    Fix make dist

commit 5e4814d9928e236a2a4afe84d6e1d4fdaa473206
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:46:28 2011 -0500

    fix permissions

commit 5c0cc6f1536aa1738795a97303810a823c7fa2cb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:45:59 2011 -0500

    3.0.10rc1

commit 857fe3de46d2286afa2fe772920ecf4aefa1688f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:39:20 2011 -0500

    Clean ups

commit e2214f8adb5577c247452e2cc9f4cbe304d7ca9f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:22:56 2011 -0500

    Update README

commit 1106229a5721a659da5c231ec0e8211119615394
Merge: bc9d0be2 f6ab3edc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:20:09 2011 -0500

    Add iOS support

commit bc9d0be2958ce475757f34dd2c878948aa77a39f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 17:04:26 2011 -0500

    3.0.10rc0 changes

commit 3b836249feae6d08d3e6887486e4b9961ddafa09
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 14:28:59 2011 -0500

    Rebase from GCC

commit a26e3940619faeba6de54824c9540c90b1aab513
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 13:56:12 2011 -0500

    copyright updates patch

commit b8099539f00e224107594101e9760b6dc081a056
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 13:50:43 2011 -0500

    Fix msvcc.sh botch

commit dc411e8f99113a34656bfd2d3ae51259972488cc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:49:29 2011 -0500

    Fix HP-UX build

commit 404585d1348e30ac58203bbd876d9131e5aed874
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:44:36 2011 -0500

    Fix sparc v8 aggregate type returns for sun's compiler

commit 19ce713188e193e4522740d24c20170411883d2d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:34:23 2011 -0500

    grammar fix

commit 89284fe55f1a8ad3bddbea796ee00d0e3ba411ce
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:19:19 2011 -0500

    Fix AIX build with IBM XLC

commit ba022c338af97cb18d9f8ed5a607fd483a61c09c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:12:48 2011 -0500

    fix win64-underscore patch

commit 097e5f3924ee92a3ba6cd72f787da8a3eb14fea3
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:11:00 2011 -0500

    x86 pcrel test part 2

commit ed2c518d960b91d444be74e5a55779a9c4602f3b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:10:07 2011 -0500

    x86 pcrel test

commit 0e5843995f46900ef212531281e08b224464f413
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 07:52:40 2011 -0500

    Refresh from GCC

commit 5b9cd52784339a42e417174a55e310e214d435f9
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 22 15:19:57 2010 -0500

    win64-underscore patch

commit 2db72615b50eb5c0f29725c02c740a2f0d7fc7d9
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 21 10:50:56 2010 -0500

    Rebase

commit f6ab3edc23dc8fc7c47a31c896044150c23f04b5
Author: Landon Fuller <landonf@plausible.coop>
Date:   Wed Oct 27 19:34:51 2010 -0400

    Include the license header in the generated output.

commit cef619462887fa0f360e3ee702d1e04f112b5b38
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Wed Oct 27 13:59:30 2010 -0400

    Add missing copyright/license header.

commit 53f387b203413c9aa6e31f49dbb70d37d816330b
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 19:57:17 2010 -0700

    Minor README fix.

commit 4fbcb5b5fbce11f4b168060e00639db33c85b75b
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 19:50:37 2010 -0700

    Minor README fix.

commit 8e7652ef6acab5db7a29f786686a54f05cdbdc7d
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 19:49:39 2010 -0700

    Add a libffi-ios-specific github README.

commit 83038cf24aa1a92b62b91ffee1dcc25d79243484
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:36:45 2010 -0700

    Implement FFI_EXEC_TRAMPOLINE_TABLE allocator for iOS/ARM.
    
    This provides working closure support on iOS/ARM devices where
    PROT_WRITE|PROT_EXEC is not permitted. The code passes basic
    smoke tests, but requires further review.

commit b00ff3e98fdde622cef617030e14d5356dff988f
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:22:26 2010 -0700

    Rename the generated symbol

commit da2773e02ab26cc11a7fe87e985599f35cdf0649
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:21:37 2010 -0700

    Modify the ffi_closure structures to hold table/table entry pointers instead of a code buffer.

commit 01d71b7bed41844f80cb9feef20dcc5ece5ba2d0
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:21:14 2010 -0700

    Regenerated the autoconf script

commit 19afda0069c42e51c81dca7b10a5cf884b4cdce0
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:20:52 2010 -0700

    Enable AC_SUBST for FFI_EXEC_TRAMPOLINE_TABLE

commit 9e1196444e78aef20028c18891f44ebe39a815fd
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 10:43:06 2010 -0700

    Add a hard-coded FFI_EXEC_TRAMPOLINE_TABLE arm implementation.
    
    This implements support for re-mapping a shared table of executable
    trampolines directly in front of a writable configuration page, working
    around PROT_WRITE restrictions for sandboxed applications on Apple's
    iOS.
    
    This implementation is for testing purposes; a proper allocator is still
    necessary, and ARM-specific code needs to be moved out of
    src/closures.c.

commit f38364b399184e682fc3e785084bd497827bc5af
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 10:42:36 2010 -0700

    Fix symbol prefix for ffi_closure_SYSV_inner on Darwin.

commit 36849e7716b77aa25e4175d1f4be1b93dbf47aac
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 09:35:04 2010 -0700

    Whitespace/comment fixes.

commit b764162526854686e579a48b6ac5981f4eb886a3
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 09:04:34 2010 -0700

    Fix the script name (build-iphone.sh -> build-ios.sh)

commit a3d9aa85013341451ea97766485b7a11852d32b2
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 09:03:52 2010 -0700

    Update the autogenerated autoconf/automake files.

commit c71480eaf839f26bbdfcd8965f65ac4d8defddc0
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 09:02:05 2010 -0700

    Update automake/autoconf to conditionally build src/arm/trampoline.S if FFI_EXEC_TRAMPOLINE_TABLE is enabled.

commit 9af9291b73bc5e27ecd949bec8157f20426d65b8
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 08:52:33 2010 -0700

    Add the trampoline table generated by gentramp.sh

commit 68ce0c383ece84f69945d1c8c3fed03f7f9cb5d6
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 08:38:19 2010 -0700

    Add a shell script that generates the ARM trampoline page.
    
    This generates a page of 340 trampolines, aligned within one page. The
    trampolines use pc-relative addressing to reference config data
    (context, jump address) from a page placed directly prior to the
    trampoline page. This can be used on systems -- such as iOS -- that do not
    support writable, executable memory by remapping the executable page
    containing the trampolines directly above a newly allocated writable
    config page.

commit 75af086be8830a8eafe9b1ebda199d788bcb0c62
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 18:12:19 2010 -0700

    Update autoconf files

commit 1ac92cca9b02ef8d6a769f0de1adccd5c9630355
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 18:08:14 2010 -0700

    Add autoconf check for W^X platforms that require a trampoline table.
    
    This adds the FFI_EXEC_TRAMPOLINE_TABLE. The flag is enabled for
    arm-apple-darwin, where PROT_EXEC on writable (or formerly writable) pages is
    not permitted for sandboxed binaries.

commit be72fbab29b7190c702d8e1ac3d149855e95879d
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 18:02:25 2010 -0700

    Use the correct host triple for arm/darwin

commit 70150bdf4509269965c72f2032bf74f285767afe
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 16:38:03 2010 -0700

    Add missing UNWIND entry; disables .pad on non-EABI targets.

commit 6b452bafaec498df975ba8ac4c99de174e5f74f7
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 16:21:32 2010 -0700

    Apple assembler support; fixed most gas/ELF-isms.

commit 8ddac835b6f8b54ede764d0ea977dee4c82e2d67
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 15:38:06 2010 -0700

    Fix placement of the __APPLE__ macro.

commit 69043d02936bb0579ac59b4ee1ed8dec38c38db7
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 15:32:08 2010 -0700

    Work-around libffi's FP ABI detection.
    
    On iOS, we must use the AAPCS floating point return value calling
    conventions. libffi's ARM implementation will only use these conventions
    if __SOFTFP__ is defined, which is not the case when GCC's
    -mfloat-abi defaults to 'softfp' instead of 'soft'. To work around this
    we manually define __SOFTFP__ for Apple platforms in the ARM-specific
    sysv.S.
    
    See also:
      http://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/iPhoneOSABIReference/Introduction/Introduction.html
      http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042d/IHI0042D_aapcs.pdf

commit a82e6c354ea805114642a6e440abd0832cb1d23f
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 14:44:24 2010 -0700

    Add a stub iOS build script to drive autoconf

commit 84e8de6e9fc19388f6f1102c013b7d0d52940ecc
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Aug 6 01:35:12 2010 -0400

    Restore execute permissions

commit 3aeecc9eb1a6feba6549849cdd335c926415a4fc
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 15:19:00 2010 -0400

    Fix win64-struct-args patch

commit 00d0b59cd13f89ab8b44bd894eb7f0a131fcb472
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 14:56:53 2010 -0400

    Fix debug build for windows

commit bda487e87064f27965155459a62dc52a744778d0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 09:02:41 2010 -0400

    Don't use -safeseh with ml64

commit c1d28ba8d5029795af313ffeb81c97efc6d4c847
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 08:48:16 2010 -0400

    stdcall-x86-closure-fix

commit 5feacad4a56c85b3f23a267a30b2cf424cd59548
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 08:30:04 2010 -0400

    define generic symbols carefully

commit 10ea848900bc3018ac213cef52b44cacbe5cbebc
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 08:24:27 2010 -0400

    don't copy win64 struct args

commit d14178be4c49c3ada44a9fe9efe11d444372ddab
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 23 09:14:00 2010 -0400

    FFI_LAST_ABI fix

commit 3f5b1375ab1e2b8e3d593e21b27097a4a50f9b83
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jul 12 14:39:18 2010 -0400

    rebase

commit eaf444eabc4c78703c0f98ac0197b1619c1b1bef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jul 10 08:59:09 2010 -0400

    Fix selinux test

commit 630974152247f100ece4d44f10c3721bb4599fbf
Author: Anthony Green <green@gmachine.(none)>
Date:   Wed May 5 20:14:56 2010 -0400

    Micharl Kohler's spelling fixes

commit 9dc9a293f3d4589fcaf02dd4288c8cebaefa508e
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Apr 13 10:33:52 2010 -0400

    Rebase to latest GCC sources

commit f2c2a4fce9b3eca9f39b4f3545118bc256da4a73
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Apr 13 10:19:28 2010 -0400

    Remove warnings and add OS/2 support

commit c0b69e57d529e33d18b658cc5572a21e3663247c
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Mar 30 08:30:22 2010 -0400

    Dan Witte's windows build fixes.

commit 59a259f4d348f593b45f452309f4d020a28051c4
Author: Anthony Green <green@gmachine.(none)>
Date:   Mon Mar 15 05:57:51 2010 -0400

    Remove junk file

commit 3de1eb36d37a66829e606421939874d0d60d816d
Author: Anthony Green <green@gmachine.(none)>
Date:   Mon Mar 15 05:57:24 2010 -0400

    fix-comments patch

commit c3813b6d7f8a777700f4c5862190c0db148d4de8
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Jan 26 16:48:56 2010 -0500

    Rebuild Makefiles with automake 1.11.1 for CVE-2009-4029.

commit 8d27f68baa365bf883b6053c5f6bc819646d5434
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 15 11:35:37 2010 -0500

    Mention recent changes in README

commit ff3cd68b8cf2d9a28cad7aa9beff46236eacec8c
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 15 11:27:24 2010 -0500

    Add msvc.sh wrapper

commit cadeba6cb53414a1253582f1719c286665de7b6c
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 15 10:46:51 2010 -0500

    Microsoft Visual C port

commit 0739e7dc00db766eb64f502ec4137b817638c9a1
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 15 09:48:33 2010 -0500

    Add x86 Sun Studio compiler support

commit edfdfd2e85b8d01d2455934f1d7f4d7eb2f3cf1c
Author: Anthony Green <green@gmachine.(none)>
Date:   Wed Jan 13 02:56:19 2010 -0500

    Add closure example doc

commit 7b7a42f221cf171e8d09df34cac6dc1fd8458cc3
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Jan 12 09:14:14 2010 -0500

    Rebase from GCC

commit 4b18d1f73dc7733137869e4ab5725cb90c1c8fde
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 1 10:24:27 2010 -0500

    Add x86-64 MingW to README

commit c3042afaf3f84abbbe9c91bf9bc9896b0d9eb003
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 1 08:08:02 2010 -0500

    Reset quilt patches post 3.0.9 merge with GCC

commit b0304e9679bdfec6ac45a57b5c96542697249418
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 31 11:32:40 2009 -0500

    Update version

commit 2e7e03d014d9c9bf40e97ce75cba089ad052fa6b
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 31 07:43:22 2009 -0500

    Final updates before 3.0.9

commit aea706c52825c8eee677ffa7fdbdd3aed1725492
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Dec 29 10:09:31 2009 -0500

    really 3.0.9rc12

commit 0cfe60e9d13f132b88995cfee41f2156344f6fa2
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Dec 29 10:06:04 2009 -0500

    3.0.9rc12

commit 14e2e92e8645804b6940b3e96c98e9f7f384a6b2
Author: Anthony Green <green@gmachine.(none)>
Date:   Sun Dec 27 21:03:33 2009 -0500

    3.0.9rc11

commit 884402787bf8eaf7ec207085037cf8ace2f660ec
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 12:57:23 2009 -0500

    HPUX support and avr32 test fixes.

commit 01c78756aff22efb1f122f8e93e068d7bf2185c7
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 10:05:18 2009 -0500

    3.0.9rc9

commit 70868464651320268d79c6894db5a50fdc11032a
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 09:58:03 2009 -0500

    Remove xfails for mips and arm

commit 838d4ad920ec85cf5ca3b511221d67f6d9a99024
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 09:57:27 2009 -0500

    Remove a bunch of xfails.

commit 7e37eaaf772f48906e69618c773b0a36c3927de9
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 07:46:50 2009 -0500

    Fix huge_struct for solaris

commit 07cc7a37194bc34064ebed7f2724333a798411c8
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 07:23:04 2009 -0500

    3.0.9rc8

commit 2b9be16ffabc81326128bc1bbdddff8ddc5d13d3
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 07:04:45 2009 -0500

    3.0.9rc8

commit 9458d88f676e9a21ab8993a54e16754b11687419
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 07:02:27 2009 -0500

    Rebase from GCC

commit 6a3412417593f068a04dc6163f4269cb295ad5ca
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 06:51:33 2009 -0500

    Add Andreas Schwab's powerpc fix

commit 39c8792ece1043f41f4c395a2ce71f4cf0ff4674
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 21:52:28 2009 -0500

    3.0.9rc7

commit 1d04af52e3e24db69f742064694c22f8df5cc70e
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 09:50:36 2009 -0500

    Updated some mips XFAILs

commit 26e9509c9b7929bc4fcf697071699051a652b1fd
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 02:19:23 2009 -0500

    Clean up ChangeLog.libffi for older patches.

commit 9c157d3215e4393777f83eb6fa801df6528f40d7
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 02:15:40 2009 -0500

    Clean up undefine_AC_ARG_VAR_PRECIOUS patch.

commit d22de05b0bfc480766bc1240615ce2830eee71b8
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 02:04:23 2009 -0500

    Fix patches

commit 1fe3dc7c20dc4dbd8fed0d19c8618027d44ed971
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 01:39:00 2009 -0500

    Add windows support patch.

commit f7c0bc613a88f7dbc2d18b345c10fa438833c170
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 01:22:11 2009 -0500

    3.0.9rc6

commit c7fa2da8260258c11ab1dc7ac06fb611a2c1b50f
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 24 07:22:44 2009 -0500

    3.0.9rc6

commit da11bece0fde66fc0268db3a01207dda857e25d2
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 24 05:34:46 2009 -0500

    Release 3.0.9rc5

commit e3399b11edeab546b066bfc18574f3edb905d0dc
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 24 01:09:32 2009 -0500

    Update README

commit 115ab36fceee69740a01ce49bc27e1908cc237b1
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 24 00:22:00 2009 -0500

    Update missing changes for 3.0.9r4.

commit f8c7a245bf5a80bd7e730ec03fcad17c8dcfcb07
Author: Anthony Green <green@gmachine.(none)>
Date:   Wed Dec 23 23:46:22 2009 -0500

    Switch to quilt. Rebase to latest GCC.

commit ce806772f02387b9a74f6496a263a368bccd5d59
Merge: cd98813d dcc1f6b4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:41:35 2009 -0400

    Merge branch 'master' of git@github.com:atgreen/libffi

commit dcc1f6b4f1ffd2713bf68b791a13f85d455c8b1b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:29:33 2009 -0400

    More clean up.

commit 2829f5941a223b9d851d8ab6318318e6197d7e01
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:28:03 2009 -0400

    Clean up

commit cd98813de517ea64041637e3e78d27a001d6d3b4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:25:29 2009 -0400

    From Jens Rehsack.  Fix for 64-bit AIX.

commit e4a91de766acc47f6c50f13cc11719a65e23ecba
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:16:17 2009 -0400

    From Abdulaziz Ghuloum.  Adds special case for Snow Leopard.

commit 3425a763bcdaadb8b430226f427ec833afdcc96a
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 23:57:29 2009 -0400

    Fix detection of free/openbsd.  From Alexis Ballier.

commit 2340e7a777902de61499d47823ad8d5e0eeb6203
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 23:53:17 2009 -0400

    AVR support

commit 5cbe2058c128e848446ae79fe15ee54260a90559
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 23:53:11 2009 -0400

    Initial stand-alone patch.

commit c6dddbd02bad9654ed58cdb0feb360934d105dec
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 08:11:33 2009 -0400

    Initial commit

commit 5ffc0c37486fb1538bccc0ca7acc807d4f1af932
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 07:58:22 2009 -0400

    Update version to 3.0.9rc1.  Add more useful things to .gitignore.

commit bd29f83ee9f6fa6b65adee9d3f57834f364d9887
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 29 12:07:26 2009 -0400

    Add .gitignore

commit 9474f853f83e3f0167c1b306177321bfcc93e56d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 29 11:13:02 2009 -0400

    Remove old CVSROOT files.

commit 0c25275ec24bfe2c2c25a000465f0950ef9dd51b
Author: twall <twall>
Date:   Wed Aug 19 12:57:34 2009 +0000

    Apply Dave Korn's cygwin/GCC changes

commit 39228c27ed3f677a95b46380a8d31602b5777e1a
Author: aph <aph>
Date:   Tue Jun 16 18:00:47 2009 +0000

    2009-06-16  Wim Lewis  <wiml@hhhh.org>
    
            * src/powerpc/ffi.c: Avoid clobbering cr3 and cr4, which are
            supposed to be callee-saved.
            * src/powerpc/sysv.S (small_struct_return_value): Fix overrun of
            return buffer for odd-size structs.

commit 5e93cc704d127c2c8ae7f5d2cef621145d43e777
Author: aph <aph>
Date:   Tue Jun 16 17:41:47 2009 +0000

    2009-06-16  Andreas Tobler  <a.tobler@schweiz.org>
    
            PR libffi/40444
            * testsuite/lib/libffi-dg.exp (libffi_target_compile): Add
            allow_stack_execute for Darwin.

commit b509af8959dc371b92392c623522ea6f4946a71d
Author: aph <aph>
Date:   Tue Jun 16 16:17:52 2009 +0000

    2009-06-16  Andrew Haley  <aph@redhat.com>
    
            * configure.ac (TARGETDIR): Add missing blank lines.
            * configure: Regenerate.

commit d57e96dc56ee76fbbb9b59d73aeaa92354db5ecb
Author: aph <aph>
Date:   Tue Jun 16 09:59:02 2009 +0000

    2009-06-16  Andrew Haley  <aph@redhat.com>
    
            * testsuite/libffi.call/cls_align_sint64.c,
            testsuite/libffi.call/cls_align_uint64.c,
            testsuite/libffi.call/cls_longdouble_va.c,
            testsuite/libffi.call/cls_ulonglong.c,
            testsuite/libffi.call/return_ll1.c,
            testsuite/libffi.call/stret_medium2.c: Fix printf format
            specifiers.
            * testsuite/libffi.call/huge_struct.c: Ad x86 XFAILs.
            * testsuite/libffi.call/float2.c: Fix dg-excess-errors.
            * testsuite/libffi.call/ffitest.h,
            testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRIuLL): Define.

commit b01d6d1982c9e020507029bfd5a58a8c60d111fa
Author: aph <aph>
Date:   Tue Jun 16 09:44:54 2009 +0000

    2009-06-16  Andrew Haley  <aph@redhat.com>
    
            * testsuite/libffi.call/err_bad_typedef.c: xfail everywhere.
            * testsuite/libffi.call/err_bad_abi.c: Likewise.

commit 35b6ded138591900a88055a8a8ac1fadc29a76d6
Author: aph <aph>
Date:   Fri Jun 12 15:29:20 2009 +0000

    2009-06-11  Kaz Kojima  <kkojima@gcc.gnu.org>
    
            * testsuite/libffi.call/cls_longdouble_va.c: Add xfail sh*-*-linux-*.
            * testsuite/libffi.call/err_bad_abi.c: Add xfail sh*-*-*.
            * testsuite/libffi.call/err_bad_typedef.c: Likewise.

commit acc46605f2d95d67d69398e7644610f10a157ce3
Author: aph <aph>
Date:   Fri Jun 12 14:21:28 2009 +0000

    2009-06-12  Andrew Haley  <aph@redhat.com>
    
            * ChangeLog.libffi: testsuite/libffi.call/cls_align_sint64.c,
            testsuite/libffi.call/cls_align_uint64.c,
            testsuite/libffi.call/cls_ulonglong.c,
            testsuite/libffi.call/return_ll1.c,
            testsuite/libffi.call/stret_medium2.c: Fix printf format
            specifiers.
            testsuite/libffi.special/unwindtest.cc: include stdint.h.

commit 16d1996ed0797bd7c11aca2b0fe7e7748751aaf6
Author: twall <twall>
Date:   Thu Jun 11 14:27:42 2009 +0000

    update changelog

commit 92a515c33efe91be3cb0258f01c63aff208489c7
Author: twall <twall>
Date:   Thu Jun 11 14:27:28 2009 +0000

    use ffi_closure_alloc instead of stack-based closure

commit e4363160ba9e50167f9ca0a7399d537a1d2cd0ce
Author: twall <twall>
Date:   Thu Jun 11 14:26:23 2009 +0000

    remove unused extern

commit 1dc2781d2ba38f5f000ff70069d617fb21e1d2af
Author: twall <twall>
Date:   Thu Jun 11 11:36:16 2009 +0000

    remove not-yet-applied changelog entries

commit bb27735fe689dac97ec0dc847ed8d3d519620109
Author: twall <twall>
Date:   Wed Jun 10 10:42:36 2009 +0000

    add win64 support

commit b2a54c100c74854a409820817d54617fdda39eb8
Author: aph <aph>
Date:   Mon Jun 8 16:50:49 2009 +0000

    2009-06-08  Andrew Haley  <aph@redhat.com>
    
            * testsuite/libffi.call/err_bad_abi.c: Add xfails.
            * testsuite/libffi.call/cls_longdouble_va.c: Add xfails.
            * testsuite/libffi.call/cls_dbls_struct.c: Add xfail x86_64-*-linux-*.
            * testsuite/libffi.call/err_bad_typedef.c: Add xfails.
    
            * testsuite/libffi.call/stret_medium2.c: Add __UNUSED__ to args.
            * testsuite/libffi.call/stret_medium.c: Likewise.
            * testsuite/libffi.call/stret_large2.c: Likewise.
            * testsuite/libffi.call/stret_large.c:  Likewise.

commit 25723e7141f73d3736d7244b980c89d97db852b6
Author: aph <aph>
Date:   Fri Jun 5 13:03:40 2009 +0000

    2009-06-05  Andrew Haley  <aph@redhat.com>
    
            * src/x86/win32.S (_ffi_closure_STDCALL): Import from gcc.

commit 70758199c7cd41f411987360ccb302b497a56dc9
Author: aph <aph>
Date:   Thu Jun 4 16:29:58 2009 +0000

     2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/powerpc/ffitarget.h: Fix misapplied merge from gcc.

commit e8bb12563f9aa23ddf36fa6a5b92b16b5c3e1a7f
Author: aph <aph>
Date:   Thu Jun 4 14:59:18 2009 +0000

    2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/mips/o32.S,
            src/mips/n32.S: Fix licence formatting.

commit d66a8e32c3671479e3ce0f6819673e5932ba6b7f
Author: aph <aph>
Date:   Thu Jun 4 14:43:40 2009 +0000

    2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/x86/darwin.S: Fix licence formatting.
            src/x86/win32.S: Likewise.
            src/sh64/sysv.S: Likewise.
            src/sh/sysv.S: Likewise.

commit 7c3b7fd6b5db746b5b09a718f3044f811372f941
Author: aph <aph>
Date:   Thu Jun 4 14:39:20 2009 +0000

    2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/sh64/ffi.c: Remove lint directives.  Was missing from merge
            of Andreas Tobler's patch from 2006-04-22.

commit 1a2f93a8b362db13638afd9fcb3f2650180bfa17
Author: aph <aph>
Date:   Thu Jun 4 10:45:51 2009 +0000

    2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/sh/ffi.c: Apply missing hunk from Alexandre Oliva's patch of
            2007-03-07.

commit 944c95cf7aaaaf7c5fa368cda4673dd38f45020e
Author: aph <aph>
Date:   Wed Jun 3 17:42:56 2009 +0000

    2009-05-22  Dave Korn  <dave.korn.cygwin@gmail.com>
    
           * src/x86/win32.S (_ffi_closure_STDCALL):  New function.
           (.eh_frame):  Add FDE for it.
    
    2009-05-22  Dave Korn  <dave.korn.cygwin@gmail.com>
    
           * configure.ac:  Also check if assembler supports pc-relative
           relocs on X86_WIN32 targets.
           * configure:  Regenerate.
           * src/x86/win32.S (ffi_prep_args):  Declare extern, not global.
           (_ffi_call_SYSV):  Add missing function type symbol .def and
           add EH markup labels.
           (_ffi_call_STDCALL):  Likewise.
           (_ffi_closure_SYSV):  Likewise.
           (_ffi_closure_raw_SYSV):  Likewise.
           (.eh_frame):  Add hand-crafted EH data.
    
    2008-11-21  Eric Botcazou  <ebotcazou@adacore.com>
    
           * src/sparc/ffi.c (ffi_prep_cif_machdep): Add support for
           signed/unsigned int8/16 return values.
           * src/sparc/v8.S (ffi_call_v8): Likewise.
           (ffi_closure_v8): Likewise.
    
    2008-03-26  Kaz Kojima  <kkojima@gcc.gnu.org>
    
           * src/sh/sysv.S: Add .note.GNU-stack on Linux.
           * src/sh64/sysv.S: Likewise.
    
    2008-03-26  Daniel Jacobowitz  <dan@debian.org>
    
           * src/arm/sysv.S: Fix ARM comment marker.

commit 00fa972430bb1535a4b34bf029ebcad500027b0c
Author: twall <twall>
Date:   Sat Dec 27 16:59:05 2008 +0000

    properly glob-match

commit f5179e6794ac35af26fe86e468b8508a7a570c55
Author: twall <twall>
Date:   Fri Dec 26 19:06:28 2008 +0000

    Mark XFAIL on longdouble tests for x86_64/mingw

commit 80e2b5a749208c8a18f994ec5bee84594d051cc8
Author: twall <twall>
Date:   Mon Dec 22 15:21:15 2008 +0000

    clean up tests for win64 use

commit 7063d9996f742576095c7b0eb5016c0f9a670aec
Author: green <green>
Date:   Fri Dec 19 16:13:46 2008 +0000

    Version 3.0.8 with x86-solaris support

commit bdfeb13f0df0a63b19d62597517237b54d92228b
Author: green <green>
Date:   Fri Dec 19 15:47:44 2008 +0000

    Bump to 3.0.7

commit 69205de17d6ac4c11d4ba92d6a5b40a0c5f246b2
Author: green <green>
Date:   Thu Jul 24 18:03:48 2008 +0000

    Many test fixes (failures due to excessive compiler warnings).

commit 260d513fea00b3613fe957a44a157fe72c4ca29e
Author: green <green>
Date:   Thu Jul 17 13:13:52 2008 +0000

    Version 3.0.6.  sh/sh64 fixes.

commit 3704031875feabb74e3655ed03cff4c2b3c76ac6
Author: green <green>
Date:   Thu Apr 3 18:57:57 2008 +0000

    Rev 3.0.5.

commit 8406f5f48f7f58a1c982a93a95d521cf82b3241f
Author: green <green>
Date:   Thu Apr 3 18:57:34 2008 +0000

    3.0.5

commit 23a9e73212b62f9684cedb0ce70e92c59cfdaffa
Author: green <green>
Date:   Wed Mar 5 00:07:02 2008 +0000

    2008-03-04  Anthony Green  <green@redhat.com>
                Blake Chaffin
                hos@tamanegi.org
    
            * testsuite/libffi.call/cls_align_longdouble_split2.c
              testsuite/libffi.call/cls_align_longdouble_split.c
              testsuite/libffi.call/cls_dbls_struct.c
              testsuite/libffi.call/cls_double_va.c
              testsuite/libffi.call/cls_longdouble.c
              testsuite/libffi.call/cls_longdouble_va.c
              testsuite/libffi.call/cls_pointer.c
              testsuite/libffi.call/cls_pointer_stack.c
              testsuite/libffi.call/err_bad_abi.c
              testsuite/libffi.call/err_bad_typedef.c
              testsuite/libffi.call/huge_struct.c
              testsuite/libffi.call/stret_large2.c
              testsuite/libffi.call/stret_large.c
              testsuite/libffi.call/stret_medium2.c
              testsuite/libffi.call/stret_medium.c: New tests from Apple.

commit 429e37d3ad653e52e75bf725c883ab79e859f89a
Author: green <green>
Date:   Thu Feb 28 04:50:19 2008 +0000

    clicky

commit 51e79c428348c033314f54bcb30f7e388c59e347
Author: green <green>
Date:   Thu Feb 28 04:47:35 2008 +0000

    getclicky

commit affcab04e280efeace45a72c4dc6152c0e4f1b7f
Author: green <green>
Date:   Tue Feb 26 19:01:53 2008 +0000

    2008-02-26  Jakub Jelinek  <jakub@redhat.com>
                Anthony Green  <green@redhat.com>
    
            * src/alpha/osf.S: Add .note.GNU-stack on Linux.
            * src/s390/sysv.S: Likewise.
            * src/powerpc/linux64.S: Likewise.
            * src/powerpc/linux64_closure.S: Likewise.
            * src/powerpc/ppc_closure.S: Likewise.
            * src/powerpc/sysv.S: Likewise.
            * src/x86/unix64.S: Likewise.
            * src/x86/sysv.S: Likewise.
            * src/sparc/v8.S: Likewise.
            * src/sparc/v9.S: Likewise.
            * src/m68k/sysv.S: Likewise.
            * src/ia64/unix.S: Likewise.
            * src/arm/sysv.S: Likewise.

commit 59689d5522c159a3ac967adb6b891cf5f22c890f
Author: green <green>
Date:   Tue Feb 26 17:40:51 2008 +0000

    2008-02-26  Anthony Green  <green@redhat.com>
                Thomas Heller  <theller@ctypes.org>
    
            * src/x86/ffi.c (ffi_closure_SYSV_inner): Change C++ comment to C
            comment.

commit b13c84cf4668828ff8429ba4a2f94cd1eb574ae0
Author: green <green>
Date:   Tue Feb 26 17:38:15 2008 +0000

    2008-02-26  Anthony Green  <green@redhat.org>
                Thomas Heller <theller@ctypes.org>
    
            * include/ffi.h.in: Change void (*)() to void (*)(void).

commit 265289f679ffd24a88ae1aa2cef0e4aa14703cd8
Author: green <green>
Date:   Tue Feb 26 17:34:36 2008 +0000

    2008-02-26  Anthony Green  <green@spindazzle.org>
    
            * src/alpha/ffi.c: Change void (*)() to void (*)(void).
            src/alpha/osf.S, src/arm/ffi.c, src/frv/ffi.c, src/ia64/ffi.c,
            src/ia64/unix.S, src/java_raw_api.c, src/m32r/ffi.c,
            src/mips/ffi.c, src/pa/ffi.c, src/pa/hpux32.S, src/pa/linux.S,
            src/powerpc/ffi.c, src/powerpc/ffi_darwin.c, src/raw_api.c,
            src/s390/ffi.c, src/sh/ffi.c, src/sh64/ffi.c, src/sparc/ffi.c,
            src/x86/ffi.c, src/x86/unix64.S, src/x86/darwin64.S,>         src/x86/ffi64.c: Ditto.

commit fb5036cd6d0f909918e90f7d2d9fd80d46682d5d
Author: green <green>
Date:   Sun Feb 24 17:25:25 2008 +0000

    fix date

commit 40bec108e7d0181e6c9928aa7a33187bcc0f3d6f
Author: green <green>
Date:   Sun Feb 24 17:25:02 2008 +0000

    New release

commit b922048fa82ea109a4af269ee47bbc2a586bbac2
Author: green <green>
Date:   Sun Feb 24 17:24:00 2008 +0000

    2008-02-24  Anthony Green  <green@spindazzle.org>
    
            * configure.ac: Accept openbsd*, not just openbsd.
            Bump version to 3.0.4.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * libtool-version: Increment revision.
            * README: Update for new release.

commit affca4b92d06e5554784c7e9b233029ef83f7d8a
Author: green <green>
Date:   Fri Feb 22 21:53:29 2008 +0000

    sync readme with web page.

commit 3e53d8752ea74859b4c64fbbf935e62a937c4d78
Author: green <green>
Date:   Fri Feb 22 21:52:38 2008 +0000

    New release

commit 4d92f6c8e78fe084be65f3e8b58b859901ba796d
Author: green <green>
Date:   Fri Feb 22 21:49:46 2008 +0000

    2008-02-22  Anthony Green  <green@redhat.com>
    
            * configure.ac: Bump version to 3.0.3.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * libtool-version: Increment revision.
            * README: Update for new release.  Clean up test docs.

commit 0e185fa11a01f816824ba2687ed3715ab6219bef
Author: green <green>
Date:   Fri Feb 22 21:43:18 2008 +0000

    Update configure script.

commit f73986bd211cfbbaa593d1309504d0dc68626191
Author: green <green>
Date:   Fri Feb 22 21:40:53 2008 +0000

    2008-02-22  Bjoern Koenig  <bkoenig@alpha-tierchen.de>
                Andreas Tobler  <a.tobler@schweiz.org>
    
            * configure.ac: Add amd64-*-freebsd* target.
            * configure: Regenerate.

commit 0208f68fe5de30c33e7f70ebc281635917013f5a
Author: green <green>
Date:   Fri Feb 22 21:15:44 2008 +0000

    2008-02-22  Thomas Heller <theller@ctypes.org>
    
            * configure.ac: Add x86 OpenBSD support.
            * configure: Rebuilt.

commit 01adb0e638a86cf0d5e668ed8e08be9b0cd2505f
Author: green <green>
Date:   Thu Feb 21 16:17:26 2008 +0000

    Fix README.

commit 1edd4563225981a14f7d4fb9919b1ed88e38082f
Author: green <green>
Date:   Thu Feb 21 13:39:01 2008 +0000

    3.0.2

commit c9b542800864e2204db6e83f3843a17813ba6165
Author: green <green>
Date:   Thu Feb 21 13:36:43 2008 +0000

    add missing file

commit d5fa5633d5c8d3c212a2267cfa38fba4091baa2c
Author: green <green>
Date:   Thu Feb 21 13:36:19 2008 +0000

    2008-02-21  Anthony Green  <green@redhat.com>
    
            * configure.ac: Bump version to 3.0.2.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * libtool-version: Increment revision.
            * README: Update for new release.
    
    2008-02-21  Björn König <bkoenig@alpha-tierchen.de>
    
            * src/x86/freebsd.S: New file.
            * configure.ac: Add x86 FreeBSD support.
            * Makefile.am: Ditto.

commit ac35bfc6fcadd8880c1efce36724820f9074b318
Author: green <green>
Date:   Sat Feb 16 01:03:56 2008 +0000

    Updated

commit f7942975fee7b0162647dd79e2652615b737e98e
Author: green <green>
Date:   Sat Feb 16 01:02:00 2008 +0000

    2008-02-15  Anthony Green  <green@redhat.com>
    
            * configure.ac: Bump version to 3.0.1.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * libtool-version: Increment revision.
            * README: Update for new release.
    
    2008-02-15  David Daney  <ddaney@avtrex.com>
    
            * src/mips/ffi.c: Remove extra '>' from include directive.
            (ffi_prep_closure_loc): Use clear_location instead of tramp.

commit 59aa6bb1bfc86a610ac1a8b123443efd75854dd1
Author: green <green>
Date:   Fri Feb 15 20:52:26 2008 +0000

    Add more platforms.

commit 45a45ab99074448be0ae1a8d2ade50d28b60f8de
Author: green <green>
Date:   Fri Feb 15 19:16:36 2008 +0000

    3.0 notes

commit 4db74cbea888c9f1251b85baf00d99b83d3b994d
Author: green <green>
Date:   Fri Feb 15 19:10:26 2008 +0000

    Update

commit c3e1101ffabf44d8a2ee46e03ba9ab582050a825
Author: green <green>
Date:   Fri Feb 15 18:43:40 2008 +0000

    2008-02-15  Anthony Green  <green@redhat.com>
    
            * configure.ac: Bump version to 3.0.0,
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
    
    2008-02-15  David Daney  <ddaney@avtrex.com>
    
            * src/mips/ffi.c (USE__BUILTIN___CLEAR_CACHE):
            Define (conditionally), and use it to include cachectl.h.
            (ffi_prep_closure_loc): Fix cache flushing.
            * src/mips/ffitarget.h (_ABIN32, _ABI64, _ABIO32): Define.

commit 7e0cc12e9233ad285db41ce8dbdda61ed2a7fb06
Author: green <green>
Date:   Fri Feb 15 15:51:03 2008 +0000

    New release

commit 2d7dc885ec40d53866f29984d595511942c8b686
Author: green <green>
Date:   Fri Feb 15 15:30:26 2008 +0000

            * man/ffi_call.3, man/ffi_prep_cif.3, man/ffi.3:
            Update dates and remove all references to ffi_prep_closure.
            * configure.ac: Bump version to 2.99.9.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.

commit a0525f03eeaaed33b1eac80e0c016455cee3615d
Author: green <green>
Date:   Fri Feb 15 15:14:30 2008 +0000

    New release.

commit 2b30dfb3146ee26ad956d00ee05eb835ca1a95b4
Author: green <green>
Date:   Fri Feb 15 15:12:43 2008 +0000

            * man/ffi_prep_closure.3: Delete.
            * man/Makefile.am (EXTRA_DIST): Remove ffi_prep_closure.3.
            (man_MANS): Ditto.
            * man/Makefile.in: Rebuilt.
            * configure.ac: Bump version to 2.99.8.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.

commit bf41e64840ebcb6cc31a6f028253c1fde82705d8
Author: green <green>
Date:   Fri Feb 15 01:56:50 2008 +0000

    Update.

commit 4d39ddee677bbb61d621893b91e11eac5e7c4af7
Author: green <green>
Date:   Fri Feb 15 01:24:06 2008 +0000

    * configure.ac: Bump version to 2.99.7.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * include/ffi.h.in LICENSE src/debug.c src/closures.c
              src/ffitest.c src/s390/sysv.S src/s390/ffitarget.h
              src/types.c src/m68k/ffitarget.h src/raw_api.c src/frv/ffi.c
              src/frv/ffitarget.h src/sh/ffi.c src/sh/sysv.S
              src/sh/ffitarget.h src/powerpc/ffitarget.h src/pa/ffi.c
              src/pa/ffitarget.h src/pa/linux.S src/java_raw_api.c
              src/cris/ffitarget.h src/x86/ffi.c src/x86/sysv.S
              src/x86/unix64.S src/x86/win32.S src/x86/ffitarget.h
              src/x86/ffi64.c src/x86/darwin.S src/ia64/ffi.c
              src/ia64/ffitarget.h src/ia64/ia64_flags.h src/ia64/unix.S
              src/sparc/ffi.c src/sparc/v9.S src/sparc/ffitarget.h
              src/sparc/v8.S src/alpha/ffi.c src/alpha/ffitarget.h
              src/alpha/osf.S src/sh64/ffi.c src/sh64/sysv.S
              src/sh64/ffitarget.h src/mips/ffi.c src/mips/ffitarget.h
              src/mips/n32.S src/mips/o32.S src/arm/ffi.c src/arm/sysv.S
              src/arm/ffitarget.h src/prep_cif.c: Update license text.

commit d58b032b41a12bd3d72148da6822ab59dd698ff9
Author: green <green>
Date:   Fri Feb 15 00:59:25 2008 +0000

    New release

commit 91e5478df6d5ac63efbb10f025807b4606afab56
Author: green <green>
Date:   Fri Feb 15 00:50:30 2008 +0000

    Update supported platforms.  Bump version.

commit bd0768f877c8f7fd0d36af2191b203d4d057b1ce
Author: green <green>
Date:   Fri Feb 15 00:45:33 2008 +0000

    * configure.ac: Bump version to 2.99.5.
            * configure: Rebuilt.
            * Makefile.am (EXTRA_DIST): Add darwin64.S
            * Makefile.in: Rebuilt.
            * testsuite/lib/libffi-dg.exp: Remove libstdc++ bits from GCC tree.
            * LICENSE: Update WARRANTY.

commit 49d345f767bd2cfee951bceaab6a1a07986cf293
Author: green <green>
Date:   Thu Feb 14 23:43:27 2008 +0000

    update license reference

commit 12ac48fc79b515db7c9accd9fcaa87b0dcefccdb
Author: green <green>
Date:   Thu Feb 14 23:42:08 2008 +0000

    Update WARRANTY

commit 6b91c41da87e78552f2990dfc504a0a3349f340b
Author: green <green>
Date:   Thu Feb 14 23:38:27 2008 +0000

    fix tarball reference

commit 2b59579e3533334bee4788e076b4e520c2ab518c
Author: green <green>
Date:   Thu Feb 14 23:35:58 2008 +0000

    First update in 5 years!

commit 6cbdf3f3a3777a93382a2d508ddef1c353ff0955
Author: green <green>
Date:   Thu Feb 14 22:44:06 2008 +0000

    Fix .pc file bug and bump version

commit 1d1dc81104b209df3cfef0840735c59efae2f655
Author: green <green>
Date:   Thu Feb 14 22:03:37 2008 +0000

    Add man files and info file. Update README.  Tag as 2.99.3.

commit f045a2367f793fa8b01534cf2e25bcc46afc8fa1
Author: tromey <tromey>
Date:   Thu Feb 14 20:46:57 2008 +0000

    Move entry from ChangeLog to ChangeLog.libffi

commit 6257f07d1a9efd27fa83639cfba281f5d3188731
Author: tromey <tromey>
Date:   Thu Feb 14 20:33:17 2008 +0000

            * aclocal.m4, Makefile.in, configure, fficonfig.h.in: Rebuilt.
            * mdate-sh, texinfo.tex: New files.
            * Makefile.am (info_TEXINFOS): New variable.
            * doc/libffi.texi: New file.
            * doc/version.texi: Likewise.

commit 4232af563c5509c3760a33e3684a2b958be755e1
Author: green <green>
Date:   Thu Feb 14 16:19:21 2008 +0000

            * Makefile.am (AM_CFLAGS): Don't compile with -D.
            (lib_LTLIBRARIES): Define.
            (toolexeclib_LIBRARIES): Undefine.
            * Makefile.in: Rebuilt.
            * configure.ac: Reset version to 2.99.1.
            * configure.in: Rebuilt.

commit 961543615c31f092b578a4b4cda914db64f9d0fa
Author: green <green>
Date:   Thu Feb 14 15:57:40 2008 +0000

    Fix typo.

commit aeb0abab87222f637fbf352d4effd3b76b52ed26
Author: green <green>
Date:   Thu Feb 14 15:54:27 2008 +0000

          * libffi.pc.in: Usse @PACKAGE_NAME@ and @PACKAGE_VERSION@.
            * configure.ac: Reset version to 2.99.1.
            * configure.in: Rebuilt.
            * Makefile.am (EXTRA_DIST): Add ChangeLog.libffi.
            * Makefile.in: Rebuilt.
            * LICENSE: Update copyright notice.

commit 77fe243556433eae119d8bd7469bfccdd5bd8a1a
Author: green <green>
Date:   Thu Feb 14 15:37:00 2008 +0000

    Fix make dist again

commit d4970cf4529459bf0f0e43c602cac396786c6802
Author: green <green>
Date:   Thu Feb 14 15:18:56 2008 +0000

    Fix make dist

commit f0b1462f2d3024922ad71421bd5c4311fcb16da5
Author: green <green>
Date:   Thu Feb 14 15:01:41 2008 +0000

    Use pkgconfig.  Increment libtool CURRENT version.

commit 27e52f33baa069012a5adb2a3807f9ca1f2165ab
Author: green <green>
Date:   Sun Feb 3 13:59:48 2008 +0000

    Fix header installs when using DESTDIR.

commit fadab28eb6e33fb6dcdd7b9323e147142216d548
Author: twall <twall>
Date:   Sun Feb 3 12:32:22 2008 +0000

    update changelog

commit b5e44c8dfa92c87b99762c303cf5574a16db8f27
Author: twall <twall>
Date:   Sun Feb 3 01:12:32 2008 +0000

    offset from code base address, not data base address

commit f359848d1a995c0e44566d815f218729dc996e22
Author: green <green>
Date:   Fri Feb 1 21:29:43 2008 +0000

    Fix header installs.

commit c30df49e157c7bfc8e19e3f8a72b9464fe225e54
Author: green <green>
Date:   Fri Feb 1 21:13:55 2008 +0000

    Revert my broken changes to twall's patch.

commit 675561bb9aa0732c76698df10dd3007b5d0ec759
Author: green <green>
Date:   Thu Jan 31 13:44:25 2008 +0000

    Fix make dist .

commit abc0bbf3813dc43e23d4c23e6fe794dbf287639b
Author: green <green>
Date:   Thu Jan 31 11:58:57 2008 +0000

    Add Tim Wall's x86 windows patch.

commit e332366d15a31198735b593ec8f7fc0558d783b8
Author: green <green>
Date:   Wed Jan 30 13:21:02 2008 +0000

    Add HJ's -fomit-frame-pointer struct return fix

commit d4204240392af5b7750a08671b08e9c22dff5e93
Author: green <green>
Date:   Wed Jan 30 12:42:34 2008 +0000

    Clean up for new automake.

commit f4932dd020df574637c9fb3fc1bb18e5a8f304cc
Author: green <green>
Date:   Wed Jan 30 12:40:25 2008 +0000

    Fixes to run testsuite

commit 085520ddc8db6a916bfc416b871fcb2d00074d40
Author: green <green>
Date:   Tue Jan 29 15:16:43 2008 +0000

    New files from gcc tree.

commit 77175b3f7234e4875a4ef554ed1fe9fdc4133794
Author: green <green>
Date:   Tue Jan 29 15:15:20 2008 +0000

    Latest gcc svn sources

commit 2544e45a0b2b634053df02da3a2ed9680eeed2a1
Author: green <green>
Date:   Tue Jan 29 14:28:13 2008 +0000

    Install ffitarget.h in $prefix/include.

commit 6002211b1cc4daeb587d054b4f83968bda2c981e
Author: green <green>
Date:   Tue Jan 29 12:30:10 2008 +0000

    Add new files.

commit ccabd2b16be883cd03e5f0cd88ccfdd6ca39239d
Author: green <green>
Date:   Tue Jan 29 12:28:15 2008 +0000

    Merge from gcc

commit e680ecfbfca1da8d1823e48bc89b8375e66e128b
Author: tromey <tromey>
Date:   Sun Dec 24 23:12:15 2006 +0000

    Pulled in libffi from gcc trunk.
    Fixed build and install for standalone use.

commit e7ba08965942ce872fdbc69f70f9848cc3d0bad6
Author: root <root>
Date:   Sun Jun 4 23:22:24 2006 +0000

    sourcware.org

commit 0cd4aa24e21aaa964dfbdebc25ec5c8188049375
Author: root <root>
Date:   Sun May 30 01:51:57 2004 +0000

    Add LockDir

commit 5826120fbd940d26cca76ed2522187505581e1ed
Author: green <green>
Date:   Tue Nov 4 06:09:08 2003 +0000

    Add link to Gianni's web site.

commit 220aa4b27db42d7ffaac5056000d5179f00d5ea3
Author: jsm <jsm>
Date:   Tue Jan 21 08:07:42 2003 +0000

    Newer, better, increased from before!  (list of acceptable anon usernames)

commit 1c3adc892cc1403dc4d3d7003a2385899836612e
Author: green <green>
Date:   Fri Dec 6 01:28:03 2002 +0000

    Fixed Cygnus references.

commit 4af66bb62fab9a8e318af3bf01e5486596a0c8d4
Author: green <green>
Date:   Sun Oct 21 19:18:42 2001 +0000

    Testsuite fixes.

commit 5435965f9015ce40584c98d3816c3d05e7de1d21
Author: green <green>
Date:   Mon Apr 23 00:32:03 2001 +0000

            * include/ffi_common.h: Delete, after moving contents to...
            * include/ffi_private.h: Subsume contents of ffi_common.h.
            * include/Makefile.am (noinst_HEADERS): Remove ffi_common.h.
            * include/Makefile.in: Rebuilt.
            * arm/ffi.c, m68k/ffi.c, mips/ffi.c, powerpc/ffi.c, s390/ffi.c,
            ia64/ffi.c: Include ffi_private.h, not ffi_common.h.
            * alpha/ffi.c, sparc/ffi.c, x86/ffi.c: Don't include ffi_common.h.
            * types.c, raw_api.c, java_raw_api.c, prep_cif.c: Don't include
            ffi_common.h.
            * debug.c: Include ffi_private.h instead of ffi_common.h.
    
            * mips/ffi.c (calc_n32_struct_flags): Make static.
            (FIX_ARGP): Remove call to debugging routine ffi_stop_here.
    
            * mips/n32.S: Include ffi_private.h.
            * mips/o32.S: Include ffi_private.h.

commit 6fdb7de0fe3b7385e1fd78812ae69d9b3069d994
Author: green <green>
Date:   Sun Apr 22 19:38:34 2001 +0000

            * README: Update some comments.
    
            * Makefile.am (SUBDIRS): Add include so ffi.h gets installed.
            * Makefile.in: Rebuilt.
    
            * include/ffi.h: Change ALPHA to __alpha__ and SPARC to __sparc__.
            * types.c: Ditto.
            * prep_cif.c (ffi_prep_cif): Ditto.
    
            * alpha/ffi.c, alpha/osf.S, sparc/ffi.c, sparc/v8.S, sparc/v9.S:
            Include ffi_private.h.
    
            * include/ffi_private.h (FFI_TYPE_LAST): Define.

commit bc7144b01b9707ef35f1a2e3e6996e005e82953a
Author: green <green>
Date:   Sun Apr 22 18:28:36 2001 +0000

    Moved files from old home

commit e57279831e20368c1aa1d2b35462b8629be73959
Author: green <green>
Date:   Sun Apr 22 18:23:47 2001 +0000

    These are dead.

commit 7247436b5fe71767b29dc02b4da0fe18b08082e6
Author: green <green>
Date:   Sun Apr 22 18:22:43 2001 +0000

    All these files live somewhere else now.

commit a8b0d40ff908e275028f676870c31d0d70274a98
Author: green <green>
Date:   Sun Apr 22 18:17:14 2001 +0000

    Many changes.  Not quite there yet.

commit f893d2273355710a290a26faebf5f12c3a34d0e3
Author: green <green>
Date:   Sun Apr 22 18:13:22 2001 +0000

    Moved m68k files

commit 688ddfeced89cbb9d37b53005e1f7f2b9c78a8d7
Author: green <green>
Date:   Sun Apr 22 18:12:33 2001 +0000

    New, target indepentent, header

commit f9e40776d488d5ecf43b3ae21444a1a2f6eca528
Author: green <green>
Date:   Sun Apr 22 18:11:57 2001 +0000

    Many changes.

commit 8c1d2eb47f6bc314c431b75c85c107e8e43c4a76
Author: green <green>
Date:   Sun Apr 22 18:10:47 2001 +0000

    Many changes

commit 1359dfc6582680a158b3caa3efb7a368da4aa12d
Author: green <green>
Date:   Sun Apr 22 18:10:20 2001 +0000

    Moved ia64 files

commit 6e2de5eee316a4579869aff50c7c5f6f478582d8
Author: green <green>
Date:   Sun Apr 22 18:08:11 2001 +0000

    Moved arm files

commit 8807355af34cba8ffe87aee51152dfccec2771fa
Author: green <green>
Date:   Mon Apr 9 00:58:38 2001 +0000

    Many many updates.  Merge from gcc and then some.

commit f7e9f91adec4ff1c2e7a13b3de81d2c5a3f55e7e
Author: green <green>
Date:   Mon Apr 17 03:32:37 2000 +0000

    Mnay fixes.

commit c4860de618f4956283f5c8230a2544e403dfe390
Author: green <green>
Date:   Mon Apr 17 03:18:46 2000 +0000

    Merge from libgcj.  Merged patches from net.  See ChangeLog for details.

commit c578b58314990c3853429297c38ba14015fec5fa
Author: jsm <jsm>
Date:   Sat Oct 9 20:18:16 1999 +0000

    1999-10-09  Jason Molenda  (jsm@bugshack.cygnus.com)
    
            * CVSROOT/auto_checkout, CVSROOT/commit_prep, CVSROOT/log_accum:
            Deleted; generic versions now used for all repositories.
    
            * CVSROOT/commitinfo, CVSROOT/loginfo:  Change pathnames to
            generic versions.
    
            * CVSROOT/checkoutlist:  Don't try to check out the removed
            files any longer.

commit acdb20051207fed7652dd9f122f65de5458c474c
Author: jsm <jsm>
Date:   Sat Oct 9 20:18:15 1999 +0000

    1999-10-09  Jason Molenda  (jsm@bugshack.cygnus.com)
    
            * CVSROOT/auto_checkout, CVSROOT/commit_prep, CVSROOT/log_accum:
            Deleted; generic versions now used for all repositories.
    
            * CVSROOT/commitinfo, CVSROOT/loginfo:  Change pathnames to
            generic versions.
    
            * CVSROOT/checkoutlist:  Don't try to check out the removed
            files any longer.

commit e75be655ceedf7ab24c4e99d75eec9efeb979bc7
Author: green <green>
Date:   Sun Aug 8 13:16:41 1999 +0000

    New configury

commit d6669a0dd5b266005325bbf6d5a8ff34574d809e
Author: green <green>
Date:   Sun Aug 8 13:05:12 1999 +0000

            * include/ffi.h.in: Try to work around messy header problem
            with PACKAGE and VERSION.
    
            * configure: Rebuilt.
            * configure.in: Change version to 2.00-beta.
    
            * fficonfig.h.in: Rebuilt.
            * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
    
            * src/x86/ffi.c (ffi_raw_call): Rename.

commit 4819d52b007934a40d6d29a75ee30e857c4a93ae
Author: green <green>
Date:   Wed Aug 4 18:02:34 1999 +0000

    New file for Kresten's closure work

commit 2dbf801eb427cbf5021a9e1e512b5fc523524700
Author: green <green>
Date:   Wed Aug 4 18:00:05 1999 +0000

    Kresten's closure work. Initial checkin.

commit d170961701b0f2bf7e824d7caba2ebe10002ed84
Author: green <green>
Date:   Thu Jul 8 14:36:52 1999 +0000

            * configure.in: Add x86 and powerpc BeOS configurations.
            From Makoto Kato <m_kato@ga2.so-net.ne.jp>.

commit c7747d976924ec6f2229cbcfbbdb98d364e10de9
Author: jsm <jsm>
Date:   Wed May 12 23:32:16 1999 +0000

    1999-05-12  Jason Molenda  (jsm@bugshack.cygnus.com)
            * index.html: Add links to libffi* mail list archives.

commit dd2aa9a8de22e26df3bbc85d068358641f6202f7
Author: green <green>
Date:   Thu May 6 05:34:36 1999 +0000

            * configure.in: Add warning about this being beta code.
            Remove src/Makefile.am from the picture.
            * configure: Rebuilt.
            * Makefile.am: Move logic from src/Makefile.am.  Add changes
            to support libffi as a target library.
            * Makefile.in: Rebuilt.
            * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
            Upgraded to new autoconf, automake, libtool.
            * README: Tweaks.
            * LICENSE: Update copyright date.
            * src/Makefile.am, src/Makefile.in: Removed.

commit 4e9452abed58a3058ccdb446f96a29d50dda1f34
Author: green <green>
Date:   Wed May 5 22:06:13 1999 +0000

    Updated to new automake, libtool, autoconf - nothing works :-)

commit 6d3b2bddaf4967fba8b8656c01bfc77ec0f2800c
Author: jsm <jsm>
Date:   Mon Apr 26 15:55:28 1999 +0000

    1999-04-26  Jason Molenda  (jsm@bugshack.cygnus.com)
            * index.html: Missed a reference to libffi-discuss@cygnus.com.  Fixed.

commit ebc6a9c28af831d3d187af8ff17319f0f309bd98
Author: jsm <jsm>
Date:   Mon Apr 26 15:53:29 1999 +0000

    1999-04-26  Jason Molenda  (jsm@bugshack.cygnus.com)
            * index.html: Change links to ftp directory to point to sourceware
            directory.
            Change mailing list subscription forms to point to sourceware lists.

commit 78ffc52a8b257061348c576ccb6fbbf8b48b0fff
Author: jsm <jsm>
Date:   Sun Apr 18 01:33:21 1999 +0000

    Standard sourceware setup.

commit b4d77e827d7ebef7e57ebcd71e71c15c62f1e0a8
Author: jsm <jsm>
Date:   Mon Nov 30 11:11:25 1998 +0000

    Small typeo.  (I wouldn't bother except that it made the sentence hard
    for me to parse on a casual read.)

commit bfb73f08fdc987e37070c5fb0b196fbd28872888
Author: jsm <jsm>
Date:   Mon Nov 30 10:44:55 1998 +0000

    A few cleanups.  Most notably, point to the correct subscribe cgi-bin
    script.

commit af8b7f037ccee3b7939ee226a1a2bbc2f057b35c
Author: green <green>
Date:   Mon Nov 30 06:20:05 1998 +0000

            * index.html: Reformatted and updated to reflect hosting on
            sourceware.cygnus.com (new mailing lists, etc).

commit 334f0b060942aff8d26badaf7dde7830450dc5da
Author: green <green>
Date:   Sun Nov 29 16:56:12 1998 +0000

    initial snapshot of documentation

commit 3ab5cb4a1dcc7ecd7e773c97582b0099976c4753
Author: green <green>
Date:   Sun Nov 29 16:56:10 1998 +0000

    Initial revision

commit d2a9eb5a8b7cbc8b769809cad59c82b975c178e2
Merge: d3782ec8 bc75c54b
Author: green <green>
Date:   Sun Nov 29 16:48:16 1998 +0000

    This commit was generated by cvs2svn to compensate for changes in r7, which
    included commits to RCS files with non-trunk default branches.

commit bc75c54bd311658005b065f1bf201b204c81cbca
Author: green <green>
Date:   Sun Nov 29 16:48:16 1998 +0000

    Import of v1 code.

commit d3782ec8160c644421dcea17b605fec6e328f14e
Author: jsm <jsm>
Date:   Fri Nov 20 20:18:00 1998 +0000

    Send commit messages to mailing lists.

commit 8d8d3843c484c2bb70d8375b2b799f75eb03f709
Author: jsm <jsm>
Date:   Thu Oct 1 22:08:36 1998 +0000

    initial checkin

commit 49634f3bf221cc1939abafc788f7e4e31293fe73
Author: jsm <jsm>
Date:   Thu Oct 1 22:08:35 1998 +0000

    Add standard setup.

commit c64a84c7693f8cd400fb94bba3c9bcfd9ad1fc36
Author: jsm <jsm>
Date:   Thu Oct 1 22:08:34 1998 +0000

    Add readers and standard modules file.

commit 9813273b07fd082da573b3b6bfb8d23809b59eea
Author: jsm <jsm>
Date:   Thu Oct 1 22:08:33 1998 +0000

    initial checkin
