PR c++/8067
[official-gcc.git] / libffi / ChangeLog
blob7becdda94b5e119c9413038f598a8a93300981a7
1 2002-10-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3         * Makefile.am (all-multi): Fix multilib parallel build.
5 2002-08-14  Release Manager
7         * GCC 3.2 Released.
9 2002-07-25  Release Manager
11         * GCC 3.1.1 Released.
13 2002-05-28  Bo Thorsen  <bo@suse.de>
15         * src/x86/ffi.c (ffi_prep_incoming_args_SYSV): Remove avn
16         here too.
18 2002-05-27  Roger Sayle  <roger@eyesopen.com>
20         * src/x86/ffi.c (ffi_prep_args): Remove reference to avn.
22 2002-05-27  Bo Thorsen  <bo@suse.de>
24         * src/x86/ffi.c (ffi_prep_args): Remove unused variable and
25         fix formatting.
27 2002-05-14  Release Manager
29         * GCC 3.1 Released.
31 2002-05-14  Release Manager
33         * GCC 3.1 Released.
35 2002-05-08  Alexandre Oliva  <aoliva@redhat.com>
37         * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
38         script entry, and set LD to it when configuring multilibs.
39         * configure: Rebuilt.
41 2002-04-28  David S. Miller  <davem@redhat.com>
43         * configure.in, configure: Fix SPARC test in previous change.
45 2002-04-28  Jakub Jelinek  <jakub@redhat.com>
47         * configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working
48         %r_disp32().
49         * src/sparc/v8.S: Use it.
50         * src/sparc/v9.S: Likewise.
51         * fficonfig.h.in: Rebuilt.
52         * configure: Rebuilt.
54 2002-04-08  Hans Boehm  <Hans_Boehm@hp.com>
56         * src/java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE
57         correctly.
58         * src/ia64/unix.S: Add unwind information. Fix comments.
59         Save sp in a way that's compatible with unwind info.
60         (ffi_call_unix): Correctly restore sp in all cases.
61         * src/ia64/ffi.c: Add, fix comments.
63 2002-04-08  Jakub Jelinek  <jakub@redhat.com>
65         * src/sparc/v8.S: Make .eh_frame dependent on target word size.
67 2002-04-04  Jeff Sturm  <jsturm@one-point.com>
69         * src/sparc/v8.S: Add unwind info.
70         * src/sparc/v9.S: Likewise.
72 2002-04-01  Loren J. Rittle  <ljrittle@acm.org>
74         * configure.in: Enable alpha*-*-freebsd*.
75         * configure: Rebuilt.
77 2002-03-30  Krister Walfridsson  <cato@df.lth.se>
79         * configure.in: Enable i*86-*-netbsdelf*.
80         * configure: Rebuilt.
81         
82 2002-03-29  David Billinghurst <David.Billinghurst@riotinto.com>
84         PR other/2620
85         * src/mips/n32.s: Delete
86         * src/mips/o32.s: Delete
88 2002-03-17  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
90         * Makefile.am: libfficonvenience -> libffi_convenience.
91         * Makefile.in: Rebuilt.
92         
93         * Makefile.am: Define ffitest_OBJECTS.
94         * Makefile.in: Rebuilt.
96 2002-03-07  Andreas Tobler  <toa@pop.agri.ch>
97             David Edelsohn  <edelsohn@gnu.org>
99         * Makefile.am (EXTRA_DIST): Add Darwin and AIX closure files.
100         (TARGET_SRC_POWERPC_AIX): Add aix_closure.S.
101         (TARGET_SRC_POWERPC_DARWIN): Add darwin_closure.S.
102         * Makefile.in: Regenerate.
103         * include/ffi.h.in: Add AIX and Darwin closure definitions.
104         * src/powerpc/ffi_darwin.c (ffi_prep_closure): New function.
105         (flush_icache, flush_range): New functions.
106         (ffi_closure_helper_DARWIN): New function.
107         * src/powerpc/aix_closure.S: New file.
108         * src/powerpc/darwin_closure.S: New file.
109         
110 2002-02-24  Jeff Sturm  <jsturm@one-point.com>
112         * include/ffi.h.in: Add typedef for ffi_arg.
113         * src/ffitest.c (main): Declare rint with ffi_arg.
115 2002-02-21  Andreas Tobler  <toa@pop.agri.ch>
117         * src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate
118         number of GPRs for floating-point arguments.
120 2002-01-31  Anthony Green  <green@redhat.com>
122         * configure: Rebuilt.
123         * configure.in: Replace CHECK_SIZEOF and endian tests with
124         cross-compiler friendly macros.
125         * aclocal.m4 (AC_COMPILE_CHECK_SIZEOF, AC_C_BIGENDIAN_CROSS): New
126         macros.
128 2002-01-18  David Edelsohn  <edelsohn@gnu.org>
130         * src/powerpc/darwin.S (_ffi_call_AIX): New.
131         * src/powerpc/aix.S (ffi_call_DARWIN): New.
133 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
135         * Makefile.am (EXTRA_DIST): Add Darwin and AIX files.
136         (TARGET_SRC_POWERPC_AIX): New.
137         (POWERPC_AIX): New stanza.
138         * Makefile.in: Regenerate.
139         * configure.in: Add AIX case.
140         * configure: Regenerate.
141         * include/ffi.h.in (ffi_abi): Add FFI_AIX.
142         * src/powerpc/ffi_darwin.c (ffi_status): Use "long" to scale frame
143         size.  Fix "long double" support.
144         (ffi_call): Add FFI_AIX case.
145         * src/powerpc/aix.S: New.
147 2001-10-09  John Hornkvist  <john@toastedmarshmallow.com>
149         Implement Darwin PowerPC ABI.
150         * configure.in: Handle powerpc-*-darwin*.
151         * Makefile.am: Set source files for POWERPC_DARWIN.
152         * configure: Rebuilt.
153         * Makefile.in: Rebuilt.
154         * include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for
155         POWERPC_DARWIN.
156         * src/powerpc/darwin.S: New file.
157         * src/powerpc/ffi_darwin.c: New file.
159 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
161         * src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
163 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
165         * src/x86/sysv.S: Avoid gas-only .balign directive.
166         Use C style comments.
168 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
170         * src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
171         Fixes PR bootstrap/3563.
173 2001-06-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
175         * src/alpha/osf.S (ffi_closure_osf): Use .rdata for ECOFF.
177 2001-06-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
179         * configure.in: Recognize sparc*-sun-* host.
180         * configure: Regenerate.
181         
182 2001-06-06  Andrew Haley  <aph@redhat.com>
184         * src/alpha/osf.S (__FRAME_BEGIN__): Conditionalize for ELF.
186 2001-06-03  Andrew Haley  <aph@redhat.com>
188         * src/alpha/osf.S: Add unwind info.
189         * src/powerpc/sysv.S: Add unwind info.
190         * src/powerpc/ppc_closure.S: Likewise.
192 2000-05-31  Jeff Sturm  <jsturm@one-point.com>
194         * configure.in: Fix AC_ARG_ENABLE usage.
195         * configure: Rebuilt.
197 2001-05-06  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
199         * configure.in: Remove warning about beta code.
200         * configure: Rebuilt.
202 2001-04-25  Hans Boehm <Hans_Boehm@hp.com>
204         * src/ia64/unix.S: Restore stack pointer when returning from
205         ffi_closure_UNIX.
206         * src/ia64/ffi.c: Fix typo in comment.
208 2001-04-18  Jim Wilson  <wilson@redhat.com>
210         * src/ia64/unix.S: Delete unnecessary increment and decrement of loc2
211         to eliminate RAW DV.
213 2001-04-12  Bryce McKinlay  <bryce@albatross.co.nz>
215         * Makefile.am: Make a libtool convenience library.
216         * Makefile.in: Rebuilt.
218 2001-03-29  Bryce McKinlay  <bryce@albatross.co.nz>
220         * configure.in: Use different syntax for subdirectory creation.
221         * configure: Rebuilt.
223 2001-03-27  Jon Beniston  <jon@beniston.com>
225         * configure.in: Added X86_WIN32 target (Win32, CygWin, MingW).
226         * configure: Rebuilt.
227         * Makefile.am: Added X86_WIN32 target support.
228         * Makefile.in: Rebuilt.
230         * include/ffi.h.in: Added X86_WIN32 target support.
232         * src/ffitest.c: Doesn't run structure tests for X86_WIN32 targets.
233         * src/types.c: Added X86_WIN32 target support.
235         * src/x86/win32.S: New file. Based on sysv.S, but with EH
236         stuff removed and made to work with CygWin's gas.
238 2001-03-26  Bryce McKinlay  <bryce@albatross.co.nz>
240         * configure.in: Make target subdirectory in build dir.
241         * Makefile.am: Override suffix based rules to specify correct output
242         subdirectory.
243         * Makefile.in: Rebuilt.
244         * configure: Rebuilt.
246 2001-03-23  Kevin B Hendricks  <khendricks@ivey.uwo.ca>
248         * src/powerpc/ppc_closure.S: New file.
249         * src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug
250         involving long long and register pairs.
251         (ffi_prep_closure): New function.
252         (flush_icache): Likewise.
253         (ffi_closure_helper_SYSV): Likewise.
254         * include/ffi.h.in (FFI_CLOSURES): Define on PPC.
255         (FFI_TRAMPOLINE_SIZE): Likewise.
256         (FFI_NATIVE_RAW_API): Likewise.
257         * Makefile.in: Rebuilt.
258         * Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S.
259         (TARGET_SRC_POWERPC): Likewise.
261 2001-03-19  Tom Tromey  <tromey@redhat.com>
263         * Makefile.in: Rebuilt.
264         * Makefile.am (ffitest_LDFLAGS): New macro.
266 2001-03-02  Nick Clifton  <nickc@redhat.com>
268         * include/ffi.h.in: Remove RCS ident string.
269         * include/ffi_mips.h: Remove RCS ident string.
270         * src/debug.c: Remove RCS ident string.
271         * src/ffitest.c: Remove RCS ident string.
272         * src/prep_cif.c: Remove RCS ident string.
273         * src/types.c: Remove RCS ident string.
274         * src/alpha/ffi.c: Remove RCS ident string.
275         * src/alpha/osf.S: Remove RCS ident string.
276         * src/arm/ffi.c: Remove RCS ident string.
277         * src/arm/sysv.S: Remove RCS ident string.
278         * src/mips/ffi.c: Remove RCS ident string.
279         * src/mips/n32.S: Remove RCS ident string.
280         * src/mips/o32.S: Remove RCS ident string.
281         * src/sparc/ffi.c: Remove RCS ident string.
282         * src/sparc/v8.S: Remove RCS ident string.
283         * src/sparc/v9.S: Remove RCS ident string.
284         * src/x86/ffi.c: Remove RCS ident string.
285         * src/x86/sysv.S: Remove RCS ident string.
287 2001-02-08  Joseph S. Myers  <jsm28@cam.ac.uk>
289         * include/ffi.h.in: Change sourceware.cygnus.com references to
290         gcc.gnu.org.
292 2000-12-09  Richard Henderson  <rth@redhat.com>
294         * src/alpha/ffi.c (ffi_call): Simplify struct return test.
295         (ffi_closure_osf_inner): Index rather than increment avalue
296         and arg_types.  Give ffi_closure_osf the raw return value type.
297         * src/alpha/osf.S (ffi_closure_osf): Handle return value type
298         promotion.
300 2000-12-07  Richard Henderson  <rth@redhat.com>
302         * src/raw_api.c (ffi_translate_args): Fix typo.
303         (ffi_prep_closure): Likewise.
305         * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
306         FFI_TRAMPOLINE_SIZE.
307         * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
308         cif->bytes for new ffi_call_osf implementation.
309         (ffi_prep_args): Absorb into ...
310         (ffi_call): ... here.  Do all stack allocation here and
311         avoid a callback function.
312         (ffi_prep_closure, ffi_closure_osf_inner): New.
313         * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
314         (ffi_closure_osf): New.
316 2000-09-10  Alexandre Oliva  <aoliva@redhat.com>
318         * config.guess, config.sub, install-sh: Removed.
319         * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
320         * Makefile.in: Rebuilt.
322         * acinclude.m4: Include libtool macros from the top level.
323         * aclocal.m4, configure: Rebuilt.
325 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
327         * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
328         * configure: Rebuilt.
330 2000-05-11  Scott Bambrough  <scottb@netwinder.org>
332         * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to 
333         memory correctly.  Use conditional instructions, not branches where 
334         possible.
336 2000-05-04  Tom Tromey  <tromey@cygnus.com>
338         * configure: Rebuilt.
339         * configure.in: Match `arm*-*-linux-*'.
340         From Chris Dornan <cdornan@arm.com>.
342 2000-04-28  Jakub Jelinek  <jakub@redhat.com>
344         * Makefile.am (SUBDIRS): Define.
345         (AM_MAKEFLAGS): Likewise.
346         (Multilib support.): Add section.
347         * Makefile.in: Rebuilt.
348         * ltconfig (extra_compiler_flags, extra_compiler_flags_value):
349         New variables. Set for gcc using -print-multi-lib. Export them
350         to libtool.
351         (sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
352         * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
353         for -shared links.
354         (extra_compiler_flags_value, extra_compiler_flags): Check these
355         for extra compiler options which need to be passed down in
356         compiler_flags.
358 2000-04-16  Anthony Green  <green@redhat.com>
360         * configure: Rebuilt.
361         * configure.in: Change i*86-pc-linux* to i*86-*-linux*.
363 2000-04-14  Jakub Jelinek  <jakub@redhat.com>
365         * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
366         Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
367         * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
368         Replace all void * sizeofs with sizeof(int).
369         Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
370         different than DOUBLE.
371         Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
372         (ffi_prep_args_v9): New function.
373         (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
374         (ffi_V9_return_struct): New function.
375         (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
376         32bit code (not yet cross-arch calls).
377         * src/sparc/v8.S: Add struct return delay nop.
378         Handle long long.
379         * src/sparc/v9.S: New file.
380         * src/prep_cif.c (ffi_prep_cif): Return structure pointer
381         is used on sparc64 only for structures larger than 32 bytes.
382         Pass by reference for structures is done for structure arguments
383         larger than 16 bytes.
384         * src/ffitest.c (main): Use 64bit rint on sparc64.
385         Run long long tests on sparc.
386         * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
387         sparc64.
388         (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
389         on sparc64.
390         * configure.in (sparc-*-linux*): New supported target.
391         (sparc64-*-linux*): Likewise.
392         * configure: Rebuilt.
393         * Makefile.am: Add v9.S to SPARC files.
394         * Makefile.in: Likewise.
395         (LINK): Surround $(CCLD) into double quotes, so that multilib
396         compiles work correctly.
398 2000-04-04  Alexandre Petit-Bianco  <apbianco@cygnus.com>
400         * configure: Rebuilt.
401         * configure.in: (i*86-*-solaris*): New libffi target. Patch
402         proposed by Bryce McKinlay.
404 2000-03-20  Tom Tromey  <tromey@cygnus.com>
406         * Makefile.in: Hand edit for java_raw_api.lo.
408 2000-03-08  Bryce McKinlay  <bryce@albatross.co.nz>
410         * config.guess, config.sub: Update from the gcc tree.
411         Fix for PR libgcj/168.
413 2000-03-03  Tom Tromey  <tromey@cygnus.com>
415         * Makefile.in: Fixed ia64 by hand.
417         * configure: Rebuilt.
418         * configure.in (--enable-multilib): New option.
419         (libffi_basedir): New subst.
420         (AC_OUTPUT): Added multilib code.
422 2000-03-02  Tom Tromey  <tromey@cygnus.com>
424         * Makefile.in: Rebuilt.
425         * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
426         directory name.
428 2000-02-25  Hans Boehm <boehm@acm.org>
430         * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
431         files.
432         * src/raw_api.c (ffi_translate_args): Fixed typo in argument
433         list.
434         (ffi_prep_raw_closure): Use ffi_translate_args, not
435         ffi_closure_translate.
436         * src/java_raw_api.c: New file.
437         * src/ffitest.c (closure_test_fn): New function.
438         (main): Define `rint' as long long on IA64.  Added new test when
439         FFI_CLOSURES is defined.
440         * include/ffi.h.in (ALIGN): Use size_t, not unsigned.
441         (ffi_abi): Recognize IA64.
442         (ffi_raw): Added `flt' field.
443         Added "Java raw API" code.
444         * configure.in: Recognize ia64.
445         * Makefile.am (TARGET_SRC_IA64): New macro.
446         (libffi_la_common_SOURCES): Added java_raw_api.c.
447         (libffi_la_SOURCES): Define in IA64 case.
449 2000-01-04  Tom Tromey  <tromey@cygnus.com>
451         * Makefile.in: Rebuilt with newer automake.
453 1999-12-31  Tom Tromey  <tromey@cygnus.com>
455         * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
457 1999-09-01  Tom Tromey  <tromey@cygnus.com>
459         * include/ffi.h.in: Removed PACKAGE and VERSION defines and
460         undefs.
461         * fficonfig.h.in: Rebuilt.
462         * configure: Rebuilt.
463         * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
464         Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
465         * acconfig.h: Don't #undef PACKAGE or VERSION.
467 1999-08-09  Anthony Green  <green@cygnus.com>
469         * include/ffi.h.in: Try to work around messy header problem
470         with PACKAGE and VERSION.
472         * configure: Rebuilt.
473         * configure.in: Change version to 2.00-beta.
475         * fficonfig.h.in: Rebuilt.
476         * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
478         * src/x86/ffi.c (ffi_raw_call): Rename.
480 1999-08-02  Kresten Krab Thorup  <krab@dominiq.is.s.u-tokyo.ac.jp>
482         * src/x86/ffi.c (ffi_closure_SYSV): New function.
483         (ffi_prep_incoming_args_SYSV): Ditto.
484         (ffi_prep_closure): Ditto.
485         (ffi_closure_raw_SYSV): Ditto.
486         (ffi_prep_raw_closure): More ditto.
487         (ffi_call_raw): Final ditto.
489         * include/ffi.h.in: Add definitions for closure and raw API.
491         * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
492         FFI_TYPE_UINT64.  
494         * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
496         * src/raw_api.c: New file.
498         * include/ffi.h.in (ffi_raw): New type.
499         (UINT_ARG, SINT_ARG): New defines.
500         (ffi_closure, ffi_raw_closure): New types.
501         (ffi_prep_closure, ffi_prep_raw_closure): New declarations.
502         
503         * configure.in: Add check for endianness and sizeof void*.
505         * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
506         instead of directly.
508         * configure: Rebuilt.
510 Thu Jul  8 14:28:42 1999  Anthony Green  <green@cygnus.com>
512         * configure.in: Add x86 and powerpc BeOS configurations.
513         From Makoto Kato <m_kato@ga2.so-net.ne.jp>.
515 1999-05-09  Anthony Green  <green@cygnus.com>
517         * configure.in: Add warning about this being beta code.
518         Remove src/Makefile.am from the picture.
519         * configure: Rebuilt.
521         * Makefile.am: Move logic from src/Makefile.am.  Add changes
522         to support libffi as a target library.
523         * Makefile.in: Rebuilt.
525         * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
526         Upgraded to new autoconf, automake, libtool.
528         * README: Tweaks.
530         * LICENSE: Update copyright date.
532         * src/Makefile.am, src/Makefile.in: Removed.
534 1998-11-29  Anthony Green  <green@cygnus.com>
536         * include/ChangeLog: Removed.
537         * src/ChangeLog: Removed.
538         * src/mips/ChangeLog: Removed.
539         * src/sparc/ChangeLog: Remboved.
540         * src/x86/ChangeLog: Removed.
542         * ChangeLog.v1: Created.