2002-04-30 Mark Mitchell <mark@codesourcery.com>
[official-gcc.git] / libffi / ChangeLog
blob4d94725ccb59c5c1b2b8d1243f9bd28c9d4b0b8f
1 2002-04-28  David S. Miller  <davem@redhat.com>
3         * configure.in, configure: Fix SPARC test in previous change.
5 2002-04-29  Gerhard Tonn  <GerhardTonn@swol.de>
7         * Makefile.am: Add Linux for S/390 support.
8         * Makefile.in: Regenerate.
9         * configure.in: Add Linux for S/390 support.
10         * configure: Regenerate.
11         * include/ffi.h.in: Add Linux for S/390 support.
12         * src/s390/ffi.c: New file from libffi CVS tree.
13         * src/s390/sysv.S: New file from libffi CVS tree.
15 2002-04-28  Jakub Jelinek  <jakub@redhat.com>
17         * configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working
18         %r_disp32().
19         * src/sparc/v8.S: Use it.
20         * src/sparc/v9.S: Likewise.
21         * fficonfig.h.in: Rebuilt.
22         * configure: Rebuilt.
24 2002-04-08  Hans Boehm  <Hans_Boehm@hp.com>
26         * src/java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE
27         correctly.
28         * src/ia64/unix.S: Add unwind information. Fix comments.
29         Save sp in a way that's compatible with unwind info.
30         (ffi_call_unix): Correctly restore sp in all cases.
31         * src/ia64/ffi.c: Add, fix comments.
33 2002-04-08  Jakub Jelinek  <jakub@redhat.com>
35         * src/sparc/v8.S: Make .eh_frame dependent on target word size.
37 2002-04-06  Jason Thorpe  <thorpej@wasabisystems.com>
39         * configure.in (alpha*-*-netbsd*): Add target.
40         * configure: Regenerate.
42 2002-04-04  Jeff Sturm  <jsturm@one-point.com>
44         * src/sparc/v8.S: Add unwind info.
45         * src/sparc/v9.S: Likewise.
47 2002-03-30  Krister Walfridsson  <cato@df.lth.se>
49         * configure.in: Enable i*86-*-netbsdelf*.
50         * configure: Rebuilt.
51         
52 2002-03-29  David Billinghurst <David.Billinghurst@riotinto.com>
54         PR other/2620
55         * src/mips/n32.s: Delete
56         * src/mips/o32.s: Delete
58 2002-03-21  Loren J. Rittle  <ljrittle@acm.org>
60         * configure.in: Enable alpha*-*-freebsd*.
61         * configure: Rebuilt.
63 2002-03-17  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
65         * Makefile.am: libfficonvenience -> libffi_convenience.
66         * Makefile.in: Rebuilt.
67         
68         * Makefile.am: Define ffitest_OBJECTS.
69         * Makefile.in: Rebuilt.
71 2002-03-07  Andreas Tobler  <toa@pop.agri.ch>
72             David Edelsohn  <edelsohn@gnu.org>
74         * Makefile.am (EXTRA_DIST): Add Darwin and AIX closure files.
75         (TARGET_SRC_POWERPC_AIX): Add aix_closure.S.
76         (TARGET_SRC_POWERPC_DARWIN): Add darwin_closure.S.
77         * Makefile.in: Regenerate.
78         * include/ffi.h.in: Add AIX and Darwin closure definitions.
79         * src/powerpc/ffi_darwin.c (ffi_prep_closure): New function.
80         (flush_icache, flush_range): New functions.
81         (ffi_closure_helper_DARWIN): New function.
82         * src/powerpc/aix_closure.S: New file.
83         * src/powerpc/darwin_closure.S: New file.
84         
85 2002-02-24  Jeff Sturm  <jsturm@one-point.com>
87         * include/ffi.h.in: Add typedef for ffi_arg.
88         * src/ffitest.c (main): Declare rint with ffi_arg.
90 2002-02-21  Andreas Tobler  <toa@pop.agri.ch>
92         * src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate
93         number of GPRs for floating-point arguments.
95 2002-01-31  Anthony Green  <green@redhat.com>
97         * configure: Rebuilt.
98         * configure.in: Replace CHECK_SIZEOF and endian tests with
99         cross-compiler friendly macros.
100         * aclocal.m4 (AC_COMPILE_CHECK_SIZEOF, AC_C_BIGENDIAN_CROSS): New
101         macros.
103 2002-01-18  David Edelsohn  <edelsohn@gnu.org>
105         * src/powerpc/darwin.S (_ffi_call_AIX): New.
106         * src/powerpc/aix.S (ffi_call_DARWIN): New.
108 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
110         * Makefile.am (EXTRA_DIST): Add Darwin and AIX files.
111         (TARGET_SRC_POWERPC_AIX): New.
112         (POWERPC_AIX): New stanza.
113         * Makefile.in: Regenerate.
114         * configure.in: Add AIX case.
115         * configure: Regenerate.
116         * include/ffi.h.in (ffi_abi): Add FFI_AIX.
117         * src/powerpc/ffi_darwin.c (ffi_status): Use "long" to scale frame
118         size.  Fix "long double" support.
119         (ffi_call): Add FFI_AIX case.
120         * src/powerpc/aix.S: New.
122 2001-10-09  John Hornkvist  <john@toastedmarshmallow.com>
124         Implement Darwin PowerPC ABI.
125         * configure.in: Handle powerpc-*-darwin*.
126         * Makefile.am: Set source files for POWERPC_DARWIN.
127         * configure: Rebuilt.
128         * Makefile.in: Rebuilt.
129         * include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for
130         POWERPC_DARWIN.
131         * src/powerpc/darwin.S: New file.
132         * src/powerpc/ffi_darwin.c: New file.
134 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
136         * src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
138 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
140         * src/x86/sysv.S: Avoid gas-only .balign directive.
141         Use C style comments.
143 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
145         * src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
146         Fixes PR bootstrap/3563.
148 2001-06-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
150         * src/alpha/osf.S (ffi_closure_osf): Use .rdata for ECOFF.
152 2001-06-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
154         * configure.in: Recognize sparc*-sun-* host.
155         * configure: Regenerate.
156         
157 2001-06-06  Andrew Haley  <aph@redhat.com>
159         * src/alpha/osf.S (__FRAME_BEGIN__): Conditionalize for ELF.
161 2001-06-03  Andrew Haley  <aph@redhat.com>
163         * src/alpha/osf.S: Add unwind info.
164         * src/powerpc/sysv.S: Add unwind info.
165         * src/powerpc/ppc_closure.S: Likewise.
167 2000-05-31  Jeff Sturm  <jsturm@one-point.com>
169         * configure.in: Fix AC_ARG_ENABLE usage.
170         * configure: Rebuilt.
172 2001-05-06  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
174         * configure.in: Remove warning about beta code.
175         * configure: Rebuilt.
177 2001-04-25  Hans Boehm <Hans_Boehm@hp.com>
179         * src/ia64/unix.S: Restore stack pointer when returning from
180         ffi_closure_UNIX.
181         * src/ia64/ffi.c: Fix typo in comment.
183 2001-04-18  Jim Wilson  <wilson@redhat.com>
185         * src/ia64/unix.S: Delete unnecessary increment and decrement of loc2
186         to eliminate RAW DV.
188 2001-04-12  Bryce McKinlay  <bryce@albatross.co.nz>
190         * Makefile.am: Make a libtool convenience library.
191         * Makefile.in: Rebuilt.
193 2001-03-29  Bryce McKinlay  <bryce@albatross.co.nz>
195         * configure.in: Use different syntax for subdirectory creation.
196         * configure: Rebuilt.
198 2001-03-27  Jon Beniston  <jon@beniston.com>
200         * configure.in: Added X86_WIN32 target (Win32, CygWin, MingW).
201         * configure: Rebuilt.
202         * Makefile.am: Added X86_WIN32 target support.
203         * Makefile.in: Rebuilt.
205         * include/ffi.h.in: Added X86_WIN32 target support.
207         * src/ffitest.c: Doesn't run structure tests for X86_WIN32 targets.
208         * src/types.c: Added X86_WIN32 target support.
210         * src/x86/win32.S: New file. Based on sysv.S, but with EH
211         stuff removed and made to work with CygWin's gas.
213 2001-03-26  Bryce McKinlay  <bryce@albatross.co.nz>
215         * configure.in: Make target subdirectory in build dir.
216         * Makefile.am: Override suffix based rules to specify correct output
217         subdirectory.
218         * Makefile.in: Rebuilt.
219         * configure: Rebuilt.
221 2001-03-23  Kevin B Hendricks  <khendricks@ivey.uwo.ca>
223         * src/powerpc/ppc_closure.S: New file.
224         * src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug
225         involving long long and register pairs.
226         (ffi_prep_closure): New function.
227         (flush_icache): Likewise.
228         (ffi_closure_helper_SYSV): Likewise.
229         * include/ffi.h.in (FFI_CLOSURES): Define on PPC.
230         (FFI_TRAMPOLINE_SIZE): Likewise.
231         (FFI_NATIVE_RAW_API): Likewise.
232         * Makefile.in: Rebuilt.
233         * Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S.
234         (TARGET_SRC_POWERPC): Likewise.
236 2001-03-19  Tom Tromey  <tromey@redhat.com>
238         * Makefile.in: Rebuilt.
239         * Makefile.am (ffitest_LDFLAGS): New macro.
241 2001-03-02  Nick Clifton  <nickc@redhat.com>
243         * include/ffi.h.in: Remove RCS ident string.
244         * include/ffi_mips.h: Remove RCS ident string.
245         * src/debug.c: Remove RCS ident string.
246         * src/ffitest.c: Remove RCS ident string.
247         * src/prep_cif.c: Remove RCS ident string.
248         * src/types.c: Remove RCS ident string.
249         * src/alpha/ffi.c: Remove RCS ident string.
250         * src/alpha/osf.S: Remove RCS ident string.
251         * src/arm/ffi.c: Remove RCS ident string.
252         * src/arm/sysv.S: Remove RCS ident string.
253         * src/mips/ffi.c: Remove RCS ident string.
254         * src/mips/n32.S: Remove RCS ident string.
255         * src/mips/o32.S: Remove RCS ident string.
256         * src/sparc/ffi.c: Remove RCS ident string.
257         * src/sparc/v8.S: Remove RCS ident string.
258         * src/sparc/v9.S: Remove RCS ident string.
259         * src/x86/ffi.c: Remove RCS ident string.
260         * src/x86/sysv.S: Remove RCS ident string.
262 2001-02-08  Joseph S. Myers  <jsm28@cam.ac.uk>
264         * include/ffi.h.in: Change sourceware.cygnus.com references to
265         gcc.gnu.org.
267 2000-12-09  Richard Henderson  <rth@redhat.com>
269         * src/alpha/ffi.c (ffi_call): Simplify struct return test.
270         (ffi_closure_osf_inner): Index rather than increment avalue
271         and arg_types.  Give ffi_closure_osf the raw return value type.
272         * src/alpha/osf.S (ffi_closure_osf): Handle return value type
273         promotion.
275 2000-12-07  Richard Henderson  <rth@redhat.com>
277         * src/raw_api.c (ffi_translate_args): Fix typo.
278         (ffi_prep_closure): Likewise.
280         * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
281         FFI_TRAMPOLINE_SIZE.
282         * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
283         cif->bytes for new ffi_call_osf implementation.
284         (ffi_prep_args): Absorb into ...
285         (ffi_call): ... here.  Do all stack allocation here and
286         avoid a callback function.
287         (ffi_prep_closure, ffi_closure_osf_inner): New.
288         * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
289         (ffi_closure_osf): New.
291 2000-09-10  Alexandre Oliva  <aoliva@redhat.com>
293         * config.guess, config.sub, install-sh: Removed.
294         * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
295         * Makefile.in: Rebuilt.
297         * acinclude.m4: Include libtool macros from the top level.
298         * aclocal.m4, configure: Rebuilt.
300 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
302         * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
303         * configure: Rebuilt.
305 2000-05-11  Scott Bambrough  <scottb@netwinder.org>
307         * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to 
308         memory correctly.  Use conditional instructions, not branches where 
309         possible.
311 2000-05-04  Tom Tromey  <tromey@cygnus.com>
313         * configure: Rebuilt.
314         * configure.in: Match `arm*-*-linux-*'.
315         From Chris Dornan <cdornan@arm.com>.
317 2000-04-28  Jakub Jelinek  <jakub@redhat.com>
319         * Makefile.am (SUBDIRS): Define.
320         (AM_MAKEFLAGS): Likewise.
321         (Multilib support.): Add section.
322         * Makefile.in: Rebuilt.
323         * ltconfig (extra_compiler_flags, extra_compiler_flags_value):
324         New variables. Set for gcc using -print-multi-lib. Export them
325         to libtool.
326         (sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
327         * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
328         for -shared links.
329         (extra_compiler_flags_value, extra_compiler_flags): Check these
330         for extra compiler options which need to be passed down in
331         compiler_flags.
333 2000-04-16  Anthony Green  <green@redhat.com>
335         * configure: Rebuilt.
336         * configure.in: Change i*86-pc-linux* to i*86-*-linux*.
338 2000-04-14  Jakub Jelinek  <jakub@redhat.com>
340         * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
341         Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
342         * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
343         Replace all void * sizeofs with sizeof(int).
344         Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
345         different than DOUBLE.
346         Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
347         (ffi_prep_args_v9): New function.
348         (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
349         (ffi_V9_return_struct): New function.
350         (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
351         32bit code (not yet cross-arch calls).
352         * src/sparc/v8.S: Add struct return delay nop.
353         Handle long long.
354         * src/sparc/v9.S: New file.
355         * src/prep_cif.c (ffi_prep_cif): Return structure pointer
356         is used on sparc64 only for structures larger than 32 bytes.
357         Pass by reference for structures is done for structure arguments
358         larger than 16 bytes.
359         * src/ffitest.c (main): Use 64bit rint on sparc64.
360         Run long long tests on sparc.
361         * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
362         sparc64.
363         (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
364         on sparc64.
365         * configure.in (sparc-*-linux*): New supported target.
366         (sparc64-*-linux*): Likewise.
367         * configure: Rebuilt.
368         * Makefile.am: Add v9.S to SPARC files.
369         * Makefile.in: Likewise.
370         (LINK): Surround $(CCLD) into double quotes, so that multilib
371         compiles work correctly.
373 2000-04-04  Alexandre Petit-Bianco  <apbianco@cygnus.com>
375         * configure: Rebuilt.
376         * configure.in: (i*86-*-solaris*): New libffi target. Patch
377         proposed by Bryce McKinlay.
379 2000-03-20  Tom Tromey  <tromey@cygnus.com>
381         * Makefile.in: Hand edit for java_raw_api.lo.
383 2000-03-08  Bryce McKinlay  <bryce@albatross.co.nz>
385         * config.guess, config.sub: Update from the gcc tree.
386         Fix for PR libgcj/168.
388 2000-03-03  Tom Tromey  <tromey@cygnus.com>
390         * Makefile.in: Fixed ia64 by hand.
392         * configure: Rebuilt.
393         * configure.in (--enable-multilib): New option.
394         (libffi_basedir): New subst.
395         (AC_OUTPUT): Added multilib code.
397 2000-03-02  Tom Tromey  <tromey@cygnus.com>
399         * Makefile.in: Rebuilt.
400         * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
401         directory name.
403 2000-02-25  Hans Boehm <boehm@acm.org>
405         * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
406         files.
407         * src/raw_api.c (ffi_translate_args): Fixed typo in argument
408         list.
409         (ffi_prep_raw_closure): Use ffi_translate_args, not
410         ffi_closure_translate.
411         * src/java_raw_api.c: New file.
412         * src/ffitest.c (closure_test_fn): New function.
413         (main): Define `rint' as long long on IA64.  Added new test when
414         FFI_CLOSURES is defined.
415         * include/ffi.h.in (ALIGN): Use size_t, not unsigned.
416         (ffi_abi): Recognize IA64.
417         (ffi_raw): Added `flt' field.
418         Added "Java raw API" code.
419         * configure.in: Recognize ia64.
420         * Makefile.am (TARGET_SRC_IA64): New macro.
421         (libffi_la_common_SOURCES): Added java_raw_api.c.
422         (libffi_la_SOURCES): Define in IA64 case.
424 2000-01-04  Tom Tromey  <tromey@cygnus.com>
426         * Makefile.in: Rebuilt with newer automake.
428 1999-12-31  Tom Tromey  <tromey@cygnus.com>
430         * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
432 1999-09-01  Tom Tromey  <tromey@cygnus.com>
434         * include/ffi.h.in: Removed PACKAGE and VERSION defines and
435         undefs.
436         * fficonfig.h.in: Rebuilt.
437         * configure: Rebuilt.
438         * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
439         Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
440         * acconfig.h: Don't #undef PACKAGE or VERSION.
442 1999-08-09  Anthony Green  <green@cygnus.com>
444         * include/ffi.h.in: Try to work around messy header problem
445         with PACKAGE and VERSION.
447         * configure: Rebuilt.
448         * configure.in: Change version to 2.00-beta.
450         * fficonfig.h.in: Rebuilt.
451         * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
453         * src/x86/ffi.c (ffi_raw_call): Rename.
455 1999-08-02  Kresten Krab Thorup  <krab@dominiq.is.s.u-tokyo.ac.jp>
457         * src/x86/ffi.c (ffi_closure_SYSV): New function.
458         (ffi_prep_incoming_args_SYSV): Ditto.
459         (ffi_prep_closure): Ditto.
460         (ffi_closure_raw_SYSV): Ditto.
461         (ffi_prep_raw_closure): More ditto.
462         (ffi_call_raw): Final ditto.
464         * include/ffi.h.in: Add definitions for closure and raw API.
466         * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
467         FFI_TYPE_UINT64.  
469         * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
471         * src/raw_api.c: New file.
473         * include/ffi.h.in (ffi_raw): New type.
474         (UINT_ARG, SINT_ARG): New defines.
475         (ffi_closure, ffi_raw_closure): New types.
476         (ffi_prep_closure, ffi_prep_raw_closure): New declarations.
477         
478         * configure.in: Add check for endianness and sizeof void*.
480         * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
481         instead of directly.
483         * configure: Rebuilt.
485 Thu Jul  8 14:28:42 1999  Anthony Green  <green@cygnus.com>
487         * configure.in: Add x86 and powerpc BeOS configurations.
488         From Makoto Kato <m_kato@ga2.so-net.ne.jp>.
490 1999-05-09  Anthony Green  <green@cygnus.com>
492         * configure.in: Add warning about this being beta code.
493         Remove src/Makefile.am from the picture.
494         * configure: Rebuilt.
496         * Makefile.am: Move logic from src/Makefile.am.  Add changes
497         to support libffi as a target library.
498         * Makefile.in: Rebuilt.
500         * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
501         Upgraded to new autoconf, automake, libtool.
503         * README: Tweaks.
505         * LICENSE: Update copyright date.
507         * src/Makefile.am, src/Makefile.in: Removed.
509 1998-11-29  Anthony Green  <green@cygnus.com>
511         * include/ChangeLog: Removed.
512         * src/ChangeLog: Removed.
513         * src/mips/ChangeLog: Removed.
514         * src/sparc/ChangeLog: Remboved.
515         * src/x86/ChangeLog: Removed.
517         * ChangeLog.v1: Created.