ChangeLog


Log

Author Commit Date CI Message
Anthony Green 3dc3f32c 2013-12-05T16:23:25 Undo iOS ARM64 changes.
Anthony Green d4b931c1 2013-11-30T20:58:31 Remove build-ios from Makefile
Anthony Green dfbf236d 2013-11-30T20:54:54 Merge branch 'master' of github.com:/atgreen/libffi Add ChangeLog entry.
Alan Modra ab79d6e2 2013-11-21T06:12:35 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.
Alan Modra ac753688 2013-11-21T06:12:35 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.
Iain Sandoe aa1f62c0 2013-11-18T13:11:56 Fix PowerPC Darwin FDE encodings to use pcrel correctly. Modernise the picbase labels.
Anthony Green 2f450822 2013-11-18T06:52:29 Clean up code to appease modern GCC compiler.
Alan Modra 16d56c51 2013-11-18T06:36:03 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.
Alan Modra 83f65b63 2013-11-16T06:53:50 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.
Alan Modra 1fd04578 2013-11-16T06:53:50 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.
Alan Modra 36285137 2013-11-16T06:52:43 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
Alan Modra 1c06515d 2013-11-16T06:41:36 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
Alan Modra a97cf1fa 2013-11-16T06:40:13 This patch prepares for ELFv2, where sizes of these areas change. It also makes some minor changes to improve code efficiency.
Alan Modra 164283f4 2013-11-16T06:38:55 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..
Andrew Haley 31257b31 2013-11-16T06:35:51 Fix sample closure code
Andrew Haley db0ace3a 2013-11-16T06:29:25 Fix broken test cases
Anthony Green de10f503 2013-11-14T10:56:29 Merge branch 'master' of https://github.com/bivab/libffi Conflicts: ChangeLog
David Schneider f3657da2 2013-11-14T13:02:16 update Changelog
Alan Modra 58c2577a 2013-11-13T16:55:36 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.
Anthony Green 8af42f99 2013-11-13T16:40:28 Respect HAVE_ALLOCA_H
Anthony Green 2f5b7ce5 2013-11-09T06:16:32 UltraSPARC IIi fix. Update README and build configury.
Mark Kettenis becd7544 2013-11-06T06:43:49 Align the stack pointer to 16-bytes.
Konstantin Belousov 05c31093 2013-11-06T06:40:58 Mark executable as not requiring executable stack.
Anthony Green cf6bf981 2013-11-02T17:23:59 Fix up docs
Anthony Green c2422174 2013-11-02T14:08:23 Merge pull request #45 from foss-for-synopsys-dwc-arc-processors/arc_support arc: Fix build error
Anthony Green f4b843f8 2013-11-02T17:01:15 Don't align stack for win32
Mark H Weaver d3372c54 2013-10-26T08:30:06 Fix N32 ABI issue for MIPS.
Sandra Loosemore 16b93a21 2013-10-15T15:33:59 Add nios2 port.
Sandra Loosemore 2f5626ce 2013-10-15T15:32:16 Fix testsuite bug
Marcus Shawcroft f64e4a86 2013-10-15T15:20:14 Fix many.c testcase for Aarch64
Anthony Green 128cd1d2 2013-10-08T06:45:51 Fix spelling errors
Anthony Green d2fcbcdf 2013-10-08T06:27:46 Add m88k and VAX support. Update some configury bits.
Anthony Green d3d099b4 2013-07-02T16:11:38 little-endian ppc64 support
Mischa Jonker b082e150 2013-06-10T16:19:33 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>
David Schneider 4750e3c6 2013-03-28T16:56:36 update changelog
Anthony Green 12b1886d 2013-03-17T18:32:12 cygwin fix & updates for 3.0.13
Anthony Green d08124be 2013-03-17T18:32:12 cygwin fix & updates for 3.0.13
Anthony Green cb32c812 2013-03-17T09:27:55 Fix lib install dir
Anthony Green 4acf0056 2013-03-16T08:18:45 Build fix for soft-float power targets
Anthony Green 675c9839 2013-03-16T08:12:38 Documentation fix
Anthony Green 8a286f57 2013-03-16T08:01:19 Fix for m68000 systems
Anthony Green d9dd417b 2013-03-16T08:01:19 Fix for m68000 systems
Anthony Green 2fb527a0 2013-03-16T07:46:38 Add Meta processor support
Anthony Green 211a9ebf 2013-03-16T04:24:40 Merge pull request #32 from alex/patch-1 Fix for a crasher due to misaligned stack on x86-32.
Anthony Green f308faf1 2013-02-11T14:25:13 Add moxie support. Release 3.0.12.
Anthony Green 4ea22e54 2013-02-10T08:48:38 Update README
Anthony Green 10e77227 2013-02-10T08:47:26 mend
Anthony Green 70b11b47 2013-02-08T16:12:19 Fix small struct passing on ppc
Anthony Green 63ba1fa7 2013-02-08T15:18:19 Remove xfail for arm*-*-*.
Anthony Green 24fbca4c 2013-02-08T14:19:56 Fix typo
Anthony Green b0fa11cb 2013-02-08T14:17:13 More man page cleanup
Anthony Green 8bd15d13 2013-02-08T13:56:37 Fix many.c testcase for ppc
Anthony Green 7aab825c 2013-02-08T13:26:21 Add missing files to dist
Anthony Green cb03ea8f 2013-02-08T12:25:18 sparc v9 fixes for sun tools
Anthony Green 35ee8d44 2013-02-08T07:12:41 Fix microblaze big-endian struct issue
Anthony Green 9db7e1a9 2013-02-07T21:06:08 Fix botched sparc patch. Update version.
Anthony Green ce0138e6 2013-02-07T18:04:01 Update bug report address. rc2.
Anthony Green fd07c9e4 2013-02-07T18:00:36 Add cache flushing routine for sun compiler on sparc solaris 2.8
Anthony Green ed6ae950 2013-02-07T16:43:36 Add libtool-ldflags. Define toolexeclibdir for non-GCC builds.
Anthony Green ffef2e04 2013-02-07T15:47:01 x32 and libtool fixes
Anthony Green 95eecebb 2013-02-07T15:32:46 Remove a.out cruft from dist
Anthony Green 176aa9d2 2013-02-07T15:29:22 Fix GCC usage test and update README
Anthony Green f3a4f3fd 2013-02-07T09:57:20 Fixes for AIX xlc compiler.
Anthony Green 522f8fef 2013-02-06T20:31:31 Fix man page. Clean out junk.
Anthony Green f7cd61e9 2013-02-06T17:38:04 Fix pkgconfig install bits
Anthony Green 6a790129 2013-02-06T17:37:15 Work around LLVM ABI problem on x86-64
Anthony Green aeb8719a 2013-01-21T07:37:30 New microblaze support
Anthony Green 20cae32b 2013-01-21T07:07:38 Xtensa support
Anthony Green f03eab08 2013-01-11T17:14:11 Remove obsolete inline test functions
Anthony Green 05fbe1fa 2013-01-11T16:54:40 xlc compiler support
Anthony Green bff052d9 2013-01-11T10:24:32 32-bit x86 fix and more
Anthony Green cd41aeab 2013-01-10T17:25:45 Add compiler column to table
Anthony Green 8bf987d4 2013-01-10T17:24:51 Fix for sunpro compiler on Solaris
Anthony Green 13e2d7b9 2013-01-10T10:52:02 Handle both 32 and 64-bit x86 builds regardless of target triple
Anthony Green 51415430 2013-01-10T07:35:53 Don't run EH tests with non-GNU compiler
Anthony Green 56ba8d86 2013-01-10T07:25:10 Don't use warning checking macro with sun compiler
Anthony Green 6a028cae 2013-01-10T01:19:43 Don't use GCCisms to define types when + building with the SUNPRO compiler.
Anthony Green 2d9b3939 2013-01-09T21:14:54 Fix for closures with sunpro compiler
Anthony Green 8308984e 2013-01-08T15:14:21 Make sure we're running dejagnu tests with the right compiler.
Anthony Green f26c7ca6 2013-01-08T14:47:05 Make compiler options in dejagnu runs compiler specific
Anthony Green 74c776e2 2013-01-08T12:25:54 Switch x86 Solaris to X86 from X86_64
Anthony Green 8962c8c8 2013-01-08T12:22:24 Fix read-only eh_frame test
Anthony Green 35ddb69c 2013-01-08T07:53:37 Only emit DWARF unwind info when building with GCC
Anthony Green f7879bc3 2013-01-08T07:30:28 Testsuite fix for Solaris vendor compiler
Anthony Green 67cea90f 2013-01-07T06:30:24 mend
Anthony Green 8f4772f3 2013-01-07T06:14:53 m68k fixes for signed 8 and 16-bit calls.
Anthony Green ea7f8440 2013-01-04T09:09:32 remove gcc-ism
Anthony Green f06c0f10 2013-01-02T09:39:17 Add missing ChangeLog entry and generated files.
Anthony Green ccee09a4 2013-01-02T08:41:55 +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.
Anthony Green 089dbce7 2013-01-02T08:37:35 med
Anthony Green f680b598 2012-11-06T16:00:40 Add missing aarch64 configury bits
Anthony Green dfadfb19 2012-10-31T06:46:41 Rebase for ppc64 fix
Anthony Green e944b8c7 2012-10-30T14:06:09 Add PaX work-around
Anthony Green f342996c 2012-10-30T07:42:27 Darwin12 fix
Anthony Green 58e8b66f 2012-10-30T07:07:19 AArch64 port
Anthony Green 9c00a3f6 2012-10-12T16:46:06 TILE-Gx/TILEPro support
Anthony Green 048d2f41 2012-10-11T10:55:25 Rebase
Nicolas Lelong d330f192 2012-05-05T09:37:02 iOS build fixes.
Anthony Green 213ed15c 2012-04-27T01:34:15 Add blackfin supprt from Alexandre Keunecke.
Anthony Green 7e0a412c 2012-04-11T22:47:44 Update files to ship