Add 20020226-1.c to test rotate patterns
[official-gcc.git] / libffi / ChangeLog
blobad33876a7dc069efc26a52d3ebd9cd5f0a825ce8
1 2002-02-24  Jeff Sturm  <jsturm@one-point.com>
3         * include/ffi.h.in: Add typedef for ffi_arg.
4         * src/ffitest.c (main): Declare rint with ffi_arg.
5  
6 2002-02-21  Andreas Tobler  <toa@pop.agri.ch>
8         * src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate
9         number of GPRs for floating-point arguments.
11 2002-01-31  Anthony Green  <green@redhat.com>
13         * configure: Rebuilt.
14         * configure.in: Replace CHECK_SIZEOF and endian tests with
15         cross-compiler friendly macros.
16         * aclocal.m4 (AC_COMPILE_CHECK_SIZEOF, AC_C_BIGENDIAN_CROSS): New
17         macros.
19 2002-01-18  David Edelsohn  <edelsohn@gnu.org>
21         * src/powerpc/darwin.S (_ffi_call_AIX): New.
22         * src/powerpc/aix.S (ffi_call_DARWIN): New.
24 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
26         * Makefile.am (EXTRA_DIST): Add Darwin and AIX files.
27         (TARGET_SRC_POWERPC_AIX): New.
28         (POWERPC_AIX): New stanza.
29         * Makefile.in: Regenerate.
30         * configure.in: Add AIX case.
31         * configure: Regenerate.
32         * include/ffi.h.in (ffi_abi): Add FFI_AIX.
33         * src/powerpc/ffi_darwin.c (ffi_status): Use "long" to scale frame
34         size.  Fix "long double" support.
35         (ffi_call): Add FFI_AIX case.
36         * src/powerpc/aix.S: New.
38 2001-10-09  John Hornkvist  <john@toastedmarshmallow.com>
40         Implement Darwin PowerPC ABI.
41         * configure.in: Handle powerpc-*-darwin*.
42         * Makefile.am: Set source files for POWERPC_DARWIN.
43         * configure: Rebuilt.
44         * Makefile.in: Rebuilt.
45         * include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for
46         POWERPC_DARWIN.
47         * src/powerpc/darwin.S: New file.
48         * src/powerpc/ffi_darwin.c: New file.
50 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
52         * src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
54 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
56         * src/x86/sysv.S: Avoid gas-only .balign directive.
57         Use C style comments.
59 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
61         * src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
62         Fixes PR bootstrap/3563.
64 2001-06-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
66         * src/alpha/osf.S (ffi_closure_osf): Use .rdata for ECOFF.
68 2001-06-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
70         * configure.in: Recognize sparc*-sun-* host.
71         * configure: Regenerate.
72         
73 2001-06-06  Andrew Haley  <aph@redhat.com>
75         * src/alpha/osf.S (__FRAME_BEGIN__): Conditionalize for ELF.
77 2001-06-03  Andrew Haley  <aph@redhat.com>
79         * src/alpha/osf.S: Add unwind info.
80         * src/powerpc/sysv.S: Add unwind info.
81         * src/powerpc/ppc_closure.S: Likewise.
83 2000-05-31  Jeff Sturm  <jsturm@one-point.com>
85         * configure.in: Fix AC_ARG_ENABLE usage.
86         * configure: Rebuilt.
88 2001-05-06  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
90         * configure.in: Remove warning about beta code.
91         * configure: Rebuilt.
93 2001-04-25  Hans Boehm <Hans_Boehm@hp.com>
95         * src/ia64/unix.S: Restore stack pointer when returning from
96         ffi_closure_UNIX.
97         * src/ia64/ffi.c: Fix typo in comment.
99 2001-04-18  Jim Wilson  <wilson@redhat.com>
101         * src/ia64/unix.S: Delete unnecessary increment and decrement of loc2
102         to eliminate RAW DV.
104 2001-04-12  Bryce McKinlay  <bryce@albatross.co.nz>
106         * Makefile.am: Make a libtool convenience library.
107         * Makefile.in: Rebuilt.
109 2001-03-29  Bryce McKinlay  <bryce@albatross.co.nz>
111         * configure.in: Use different syntax for subdirectory creation.
112         * configure: Rebuilt.
114 2001-03-27  Jon Beniston  <jon@beniston.com>
116         * configure.in: Added X86_WIN32 target (Win32, CygWin, MingW).
117         * configure: Rebuilt.
118         * Makefile.am: Added X86_WIN32 target support.
119         * Makefile.in: Rebuilt.
121         * include/ffi.h.in: Added X86_WIN32 target support.
123         * src/ffitest.c: Doesn't run structure tests for X86_WIN32 targets.
124         * src/types.c: Added X86_WIN32 target support.
126         * src/x86/win32.S: New file. Based on sysv.S, but with EH
127         stuff removed and made to work with CygWin's gas.
129 2001-03-26  Bryce McKinlay  <bryce@albatross.co.nz>
131         * configure.in: Make target subdirectory in build dir.
132         * Makefile.am: Override suffix based rules to specify correct output
133         subdirectory.
134         * Makefile.in: Rebuilt.
135         * configure: Rebuilt.
137 2001-03-23  Kevin B Hendricks  <khendricks@ivey.uwo.ca>
139         * src/powerpc/ppc_closure.S: New file.
140         * src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug
141         involving long long and register pairs.
142         (ffi_prep_closure): New function.
143         (flush_icache): Likewise.
144         (ffi_closure_helper_SYSV): Likewise.
145         * include/ffi.h.in (FFI_CLOSURES): Define on PPC.
146         (FFI_TRAMPOLINE_SIZE): Likewise.
147         (FFI_NATIVE_RAW_API): Likewise.
148         * Makefile.in: Rebuilt.
149         * Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S.
150         (TARGET_SRC_POWERPC): Likewise.
152 2001-03-19  Tom Tromey  <tromey@redhat.com>
154         * Makefile.in: Rebuilt.
155         * Makefile.am (ffitest_LDFLAGS): New macro.
157 2001-03-02  Nick Clifton  <nickc@redhat.com>
159         * include/ffi.h.in: Remove RCS ident string.
160         * include/ffi_mips.h: Remove RCS ident string.
161         * src/debug.c: Remove RCS ident string.
162         * src/ffitest.c: Remove RCS ident string.
163         * src/prep_cif.c: Remove RCS ident string.
164         * src/types.c: Remove RCS ident string.
165         * src/alpha/ffi.c: Remove RCS ident string.
166         * src/alpha/osf.S: Remove RCS ident string.
167         * src/arm/ffi.c: Remove RCS ident string.
168         * src/arm/sysv.S: Remove RCS ident string.
169         * src/mips/ffi.c: Remove RCS ident string.
170         * src/mips/n32.S: Remove RCS ident string.
171         * src/mips/o32.S: Remove RCS ident string.
172         * src/sparc/ffi.c: Remove RCS ident string.
173         * src/sparc/v8.S: Remove RCS ident string.
174         * src/sparc/v9.S: Remove RCS ident string.
175         * src/x86/ffi.c: Remove RCS ident string.
176         * src/x86/sysv.S: Remove RCS ident string.
178 2001-02-08  Joseph S. Myers  <jsm28@cam.ac.uk>
180         * include/ffi.h.in: Change sourceware.cygnus.com references to
181         gcc.gnu.org.
183 2000-12-09  Richard Henderson  <rth@redhat.com>
185         * src/alpha/ffi.c (ffi_call): Simplify struct return test.
186         (ffi_closure_osf_inner): Index rather than increment avalue
187         and arg_types.  Give ffi_closure_osf the raw return value type.
188         * src/alpha/osf.S (ffi_closure_osf): Handle return value type
189         promotion.
191 2000-12-07  Richard Henderson  <rth@redhat.com>
193         * src/raw_api.c (ffi_translate_args): Fix typo.
194         (ffi_prep_closure): Likewise.
196         * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
197         FFI_TRAMPOLINE_SIZE.
198         * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
199         cif->bytes for new ffi_call_osf implementation.
200         (ffi_prep_args): Absorb into ...
201         (ffi_call): ... here.  Do all stack allocation here and
202         avoid a callback function.
203         (ffi_prep_closure, ffi_closure_osf_inner): New.
204         * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
205         (ffi_closure_osf): New.
207 2000-09-10  Alexandre Oliva  <aoliva@redhat.com>
209         * config.guess, config.sub, install-sh: Removed.
210         * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
211         * Makefile.in: Rebuilt.
213         * acinclude.m4: Include libtool macros from the top level.
214         * aclocal.m4, configure: Rebuilt.
216 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
218         * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
219         * configure: Rebuilt.
221 2000-05-11  Scott Bambrough  <scottb@netwinder.org>
223         * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to 
224         memory correctly.  Use conditional instructions, not branches where 
225         possible.
227 2000-05-04  Tom Tromey  <tromey@cygnus.com>
229         * configure: Rebuilt.
230         * configure.in: Match `arm*-*-linux-*'.
231         From Chris Dornan <cdornan@arm.com>.
233 2000-04-28  Jakub Jelinek  <jakub@redhat.com>
235         * Makefile.am (SUBDIRS): Define.
236         (AM_MAKEFLAGS): Likewise.
237         (Multilib support.): Add section.
238         * Makefile.in: Rebuilt.
239         * ltconfig (extra_compiler_flags, extra_compiler_flags_value):
240         New variables. Set for gcc using -print-multi-lib. Export them
241         to libtool.
242         (sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
243         * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
244         for -shared links.
245         (extra_compiler_flags_value, extra_compiler_flags): Check these
246         for extra compiler options which need to be passed down in
247         compiler_flags.
249 2000-04-16  Anthony Green  <green@redhat.com>
251         * configure: Rebuilt.
252         * configure.in: Change i*86-pc-linux* to i*86-*-linux*.
254 2000-04-14  Jakub Jelinek  <jakub@redhat.com>
256         * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
257         Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
258         * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
259         Replace all void * sizeofs with sizeof(int).
260         Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
261         different than DOUBLE.
262         Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
263         (ffi_prep_args_v9): New function.
264         (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
265         (ffi_V9_return_struct): New function.
266         (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
267         32bit code (not yet cross-arch calls).
268         * src/sparc/v8.S: Add struct return delay nop.
269         Handle long long.
270         * src/sparc/v9.S: New file.
271         * src/prep_cif.c (ffi_prep_cif): Return structure pointer
272         is used on sparc64 only for structures larger than 32 bytes.
273         Pass by reference for structures is done for structure arguments
274         larger than 16 bytes.
275         * src/ffitest.c (main): Use 64bit rint on sparc64.
276         Run long long tests on sparc.
277         * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
278         sparc64.
279         (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
280         on sparc64.
281         * configure.in (sparc-*-linux*): New supported target.
282         (sparc64-*-linux*): Likewise.
283         * configure: Rebuilt.
284         * Makefile.am: Add v9.S to SPARC files.
285         * Makefile.in: Likewise.
286         (LINK): Surround $(CCLD) into double quotes, so that multilib
287         compiles work correctly.
289 2000-04-04  Alexandre Petit-Bianco  <apbianco@cygnus.com>
291         * configure: Rebuilt.
292         * configure.in: (i*86-*-solaris*): New libffi target. Patch
293         proposed by Bryce McKinlay.
295 2000-03-20  Tom Tromey  <tromey@cygnus.com>
297         * Makefile.in: Hand edit for java_raw_api.lo.
299 2000-03-08  Bryce McKinlay  <bryce@albatross.co.nz>
301         * config.guess, config.sub: Update from the gcc tree.
302         Fix for PR libgcj/168.
304 2000-03-03  Tom Tromey  <tromey@cygnus.com>
306         * Makefile.in: Fixed ia64 by hand.
308         * configure: Rebuilt.
309         * configure.in (--enable-multilib): New option.
310         (libffi_basedir): New subst.
311         (AC_OUTPUT): Added multilib code.
313 2000-03-02  Tom Tromey  <tromey@cygnus.com>
315         * Makefile.in: Rebuilt.
316         * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
317         directory name.
319 2000-02-25  Hans Boehm <boehm@acm.org>
321         * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
322         files.
323         * src/raw_api.c (ffi_translate_args): Fixed typo in argument
324         list.
325         (ffi_prep_raw_closure): Use ffi_translate_args, not
326         ffi_closure_translate.
327         * src/java_raw_api.c: New file.
328         * src/ffitest.c (closure_test_fn): New function.
329         (main): Define `rint' as long long on IA64.  Added new test when
330         FFI_CLOSURES is defined.
331         * include/ffi.h.in (ALIGN): Use size_t, not unsigned.
332         (ffi_abi): Recognize IA64.
333         (ffi_raw): Added `flt' field.
334         Added "Java raw API" code.
335         * configure.in: Recognize ia64.
336         * Makefile.am (TARGET_SRC_IA64): New macro.
337         (libffi_la_common_SOURCES): Added java_raw_api.c.
338         (libffi_la_SOURCES): Define in IA64 case.
340 2000-01-04  Tom Tromey  <tromey@cygnus.com>
342         * Makefile.in: Rebuilt with newer automake.
344 1999-12-31  Tom Tromey  <tromey@cygnus.com>
346         * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
348 1999-09-01  Tom Tromey  <tromey@cygnus.com>
350         * include/ffi.h.in: Removed PACKAGE and VERSION defines and
351         undefs.
352         * fficonfig.h.in: Rebuilt.
353         * configure: Rebuilt.
354         * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
355         Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
356         * acconfig.h: Don't #undef PACKAGE or VERSION.
358 1999-08-09  Anthony Green  <green@cygnus.com>
360         * include/ffi.h.in: Try to work around messy header problem
361         with PACKAGE and VERSION.
363         * configure: Rebuilt.
364         * configure.in: Change version to 2.00-beta.
366         * fficonfig.h.in: Rebuilt.
367         * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
369         * src/x86/ffi.c (ffi_raw_call): Rename.
371 1999-08-02  Kresten Krab Thorup  <krab@dominiq.is.s.u-tokyo.ac.jp>
373         * src/x86/ffi.c (ffi_closure_SYSV): New function.
374         (ffi_prep_incoming_args_SYSV): Ditto.
375         (ffi_prep_closure): Ditto.
376         (ffi_closure_raw_SYSV): Ditto.
377         (ffi_prep_raw_closure): More ditto.
378         (ffi_call_raw): Final ditto.
380         * include/ffi.h.in: Add definitions for closure and raw API.
382         * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
383         FFI_TYPE_UINT64.  
385         * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
387         * src/raw_api.c: New file.
389         * include/ffi.h.in (ffi_raw): New type.
390         (UINT_ARG, SINT_ARG): New defines.
391         (ffi_closure, ffi_raw_closure): New types.
392         (ffi_prep_closure, ffi_prep_raw_closure): New declarations.
393         
394         * configure.in: Add check for endianness and sizeof void*.
396         * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
397         instead of directly.
399         * configure: Rebuilt.
401 Thu Jul  8 14:28:42 1999  Anthony Green  <green@cygnus.com>
403         * configure.in: Add x86 and powerpc BeOS configurations.
404         From Makoto Kato <m_kato@ga2.so-net.ne.jp>.
406 1999-05-09  Anthony Green  <green@cygnus.com>
408         * configure.in: Add warning about this being beta code.
409         Remove src/Makefile.am from the picture.
410         * configure: Rebuilt.
412         * Makefile.am: Move logic from src/Makefile.am.  Add changes
413         to support libffi as a target library.
414         * Makefile.in: Rebuilt.
416         * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
417         Upgraded to new autoconf, automake, libtool.
419         * README: Tweaks.
421         * LICENSE: Update copyright date.
423         * src/Makefile.am, src/Makefile.in: Removed.
425 1998-11-29  Anthony Green  <green@cygnus.com>
427         * include/ChangeLog: Removed.
428         * src/ChangeLog: Removed.
429         * src/mips/ChangeLog: Removed.
430         * src/sparc/ChangeLog: Remboved.
431         * src/x86/ChangeLog: Removed.
433         * ChangeLog.v1: Created.