Add missing ChangeLog entry. Clean up some entries.
This commit is contained in:
75
ChangeLog
75
ChangeLog
@@ -1,23 +1,25 @@
|
|||||||
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
||||||
|
|
||||||
Add support for stdcall, thiscall, and fastcall on non-Windows x86-32.
|
Add support for stdcall, thiscall, and fastcall on non-Windows
|
||||||
|
x86-32.
|
||||||
|
|
||||||
Linux supports the stdcall calling convention, either via functions
|
Linux supports the stdcall calling convention, either via
|
||||||
explicitly declared with the stdcall attribute, or via code compiled
|
functions explicitly declared with the stdcall attribute, or via
|
||||||
with -mrtd which effectively makes stdcall the default.
|
code compiled with -mrtd which effectively makes stdcall the
|
||||||
|
default.
|
||||||
|
|
||||||
This introduces FFI_STDCALL, FFI_THISCALL, and FFI_FASTCALL on
|
This introduces FFI_STDCALL, FFI_THISCALL, and FFI_FASTCALL on
|
||||||
non-Windows x86-32 platforms, as non-default calling conventions.
|
non-Windows x86-32 platforms, as non-default calling conventions.
|
||||||
|
|
||||||
* Makefile.am: Compile in src/x86/win32.S on non-Windows x86-32.
|
* Makefile.am: Compile in src/x86/win32.S on non-Windows x86-32.
|
||||||
* src/x86/ffitarget.h: Add FFI_STDCALL, FFI_THISCALL, and FFI_FASTCALL
|
* src/x86/ffitarget.h: Add FFI_STDCALL, FFI_THISCALL, and
|
||||||
on non-Windows x86-32. Increase trampoline size to accomodate these
|
FFI_FASTCALL on non-Windows x86-32. Increase trampoline size to
|
||||||
calling conventions, and unify some ifdeffery.
|
accomodate these calling conventions, and unify some ifdeffery.
|
||||||
* src/x86/ffi.c: Add support for FFI_STDCALL, FFI_THISCALL, and
|
* src/x86/ffi.c: Add support for FFI_STDCALL, FFI_THISCALL, and
|
||||||
FFI_FASTCALL on non-Windows x86-32 platforms; update ifdeffery.
|
FFI_FASTCALL on non-Windows x86-32 platforms; update ifdeffery.
|
||||||
* src/x86/win32.S: Support compiling on non-Windows x86-32 platforms.
|
* src/x86/win32.S: Support compiling on non-Windows x86-32
|
||||||
On those platforms, avoid redefining the SYSV symbols already provided
|
platforms. On those platforms, avoid redefining the SYSV symbols
|
||||||
by src/x86/sysv.S.
|
already provided by src/x86/sysv.S.
|
||||||
* testsuite/libffi.call/closure_stdcall.c: Run on non-Windows.
|
* testsuite/libffi.call/closure_stdcall.c: Run on non-Windows.
|
||||||
#define __stdcall if needed.
|
#define __stdcall if needed.
|
||||||
* testsuite/libffi.call/closure_thiscall.c: Run on non-Windows.
|
* testsuite/libffi.call/closure_thiscall.c: Run on non-Windows.
|
||||||
@@ -32,30 +34,31 @@
|
|||||||
* testsuite/libffi.call/struct1_win32.c: Ditto.
|
* testsuite/libffi.call/struct1_win32.c: Ditto.
|
||||||
* testsuite/libffi.call/struct2_win32.c: Ditto.
|
* testsuite/libffi.call/struct2_win32.c: Ditto.
|
||||||
|
|
||||||
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
||||||
|
|
||||||
* prep_cif.c: Remove unnecessary ifdef for X86_WIN32.
|
* prep_cif.c: Remove unnecessary ifdef for X86_WIN32.
|
||||||
ffi_prep_cif_core had a special case for X86_WIN32, checking for
|
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
|
FFI_THISCALL in addition to the FFI_FIRST_ABI-to-FFI_LAST_ABI
|
||||||
before returning FFI_BAD_ABI. However, on X86_WIN32, FFI_THISCALL
|
range before returning FFI_BAD_ABI. However, on X86_WIN32,
|
||||||
already falls in that range, making the special case unnecessary.
|
FFI_THISCALL already falls in that range, making the special case
|
||||||
Remove it.
|
unnecessary. Remove it.
|
||||||
|
|
||||||
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
||||||
|
|
||||||
* testsuite/libffi.call/closure_stdcall.c,
|
* testsuite/libffi.call/closure_stdcall.c,
|
||||||
testsuite/libffi.call/closure_thiscall.c: Remove fragile stack pointer
|
testsuite/libffi.call/closure_thiscall.c: Remove fragile stack
|
||||||
checks. These files included inline assembly to save the stack
|
pointer checks. These files included inline assembly to save the
|
||||||
pointer before and after the call, and compare the values. However,
|
stack pointer before and after the call, and compare the values.
|
||||||
compilers can and do leave the stack in different states for these two
|
However, compilers can and do leave the stack in different states
|
||||||
pieces of inline assembly, such as by saving a temporary value on the
|
for these two pieces of inline assembly, such as by saving a
|
||||||
stack across the call; observed with gcc -Os, and verified as spurious
|
temporary value on the stack across the call; observed with gcc
|
||||||
through careful inspection of disassembly.
|
-Os, and verified as spurious through careful inspection of
|
||||||
|
disassembly.
|
||||||
|
|
||||||
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
||||||
|
|
||||||
* testsuite/libffi.call/many.c: Avoid spurious failure due to excess
|
* testsuite/libffi.call/many.c: Avoid spurious failure due to
|
||||||
floating-point precision.
|
excess floating-point precision.
|
||||||
* testsuite/libffi.call/many_win32.c: Ditto.
|
* testsuite/libffi.call/many_win32.c: Ditto.
|
||||||
|
|
||||||
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
||||||
@@ -65,11 +68,11 @@
|
|||||||
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
2014-03-16 Josh Triplett <josh@joshtriplett.org>
|
||||||
|
|
||||||
* Makefile.in, aclocal.m4, compile, config.guess, config.sub,
|
* Makefile.in, aclocal.m4, compile, config.guess, config.sub,
|
||||||
configure, depcomp, include/Makefile.in, install-sh, libtool-ldflags,
|
configure, depcomp, include/Makefile.in, install-sh,
|
||||||
ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltsugar.m4,
|
libtool-ldflags, ltmain.sh, m4/libtool.m4, m4/ltoptions.m4,
|
||||||
m4/ltversion.m4, m4/lt~obsolete.m4, man/Makefile.in, mdate-sh,
|
m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4,
|
||||||
missing, testsuite/Makefile.in: Delete autogenerated files from
|
man/Makefile.in, mdate-sh, missing, testsuite/Makefile.in: Delete
|
||||||
version control.
|
autogenerated files from version control.
|
||||||
* .gitignore: Add autogenerated files.
|
* .gitignore: Add autogenerated files.
|
||||||
* autogen.sh: New script to generate the autogenerated files.
|
* autogen.sh: New script to generate the autogenerated files.
|
||||||
* README: Document requirement to run autogen.sh when building
|
* README: Document requirement to run autogen.sh when building
|
||||||
@@ -83,7 +86,8 @@
|
|||||||
2014-03-10 Mike Hommey <mh+mozilla@glandium.org>
|
2014-03-10 Mike Hommey <mh+mozilla@glandium.org>
|
||||||
|
|
||||||
* configure.ac: Allow building for mipsel with Android NDK r8.
|
* configure.ac: Allow building for mipsel with Android NDK r8.
|
||||||
* Makefile.am (AM_MAKEFLAGS): Replace double quotes with single quotes.
|
* Makefile.am (AM_MAKEFLAGS): Replace double quotes with single
|
||||||
|
quotes.
|
||||||
|
|
||||||
2014-03-10 Landry Breuil <landry@openbsd.org>
|
2014-03-10 Landry Breuil <landry@openbsd.org>
|
||||||
|
|
||||||
@@ -142,6 +146,11 @@
|
|||||||
* src/aarch64/sysv.S (ffi_closure_SYSV): Use x29 as the
|
* src/aarch64/sysv.S (ffi_closure_SYSV): Use x29 as the
|
||||||
main CFA reg; update cfi_rel_offset.
|
main CFA reg; update cfi_rel_offset.
|
||||||
|
|
||||||
|
2014-02-15 Marcus Comstedt <marcus@mc.pp.se>
|
||||||
|
|
||||||
|
* src/powerpc/ffi_linux64.c, src/powerpc/linux64_closure.S: Remove
|
||||||
|
assumption on contents of r11 in closure.
|
||||||
|
|
||||||
2014-02-09 Heiher <r@hev.cc>
|
2014-02-09 Heiher <r@hev.cc>
|
||||||
|
|
||||||
* src/mips/n32.S: Fix call floating point va function.
|
* src/mips/n32.S: Fix call floating point va function.
|
||||||
|
|||||||
Reference in New Issue
Block a user