Fix typo in doc
testsuite ignores CC parameter supplied to configure or make
Fix handling of variadic calls on Darwin/AArch64
Fix alignment of AArch64 assembler functions
Fix Windows regression
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.)
Running the C compiler with -shared-libgcc -lstdc++ does not work on non-GCC compilers.
"script" can contain multiple commands to run in sequence.
This fixes cross-compilation and compilation with CC="gcc -m32".
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.
[3.1 blocker] Fix FreeBSD support
[3.1 blocker] Update OS X build system to include win32.S on 32-bit
Fix 64-bit Windows support
[3.1 blocker] win32.S needs to handle relocations/GOT
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.
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.
64-bit Windows does not have FFI_STDCALL, FFI_THISCALL, or FFI_FASTCALL.
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.
The jump table code added a register to itself twice to multiply by 4; shift the register left by 2 instead.
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.
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.
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.