OSDN Git Service

2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
[pf3gnuchains/gcc-fork.git] / libffi / ChangeLog
1 2003-01-03  Jeff Sturm  <jsturm@one-point.com>
2
3         * include/ffi.h.in: Add closure defines for SPARC, SPARC64.
4         * src/ffitest.c (main): Use static storage for closure.
5         * src/sparc/ffi.c (ffi_prep_closure, ffi_closure_sparc_inner): New.
6         * src/sparc/v8.S (ffi_closure_v8): New.
7         * src/sparc/v9.S (ffi_closure_v9): New.
8
9 2002-11-10  Ranjit Mathew <rmathew@hotmail.com>
10
11         * include/ffi.h.in: Added FFI_STDCALL ffi_type
12           enumeration for X86_WIN32.
13         * src/x86/win32.S: Added ffi_call_STDCALL function
14           definition.
15         * src/x86/ffi.c (ffi_call/ffi_raw_call): Added
16           switch cases for recognising FFI_STDCALL and
17           calling ffi_call_STDCALL if target is X86_WIN32.
18         * src/ffitest.c (my_stdcall_strlen/stdcall_many):
19           stdcall versions of the "my_strlen" and "many"
20           test functions (for X86_WIN32).
21           Added test cases to test stdcall invocation using
22           these functions.
23
24 2002-12-02  Kaz Kojima  <kkojima@gcc.gnu.org>
25
26         * src/sh/sysv.S: Add DWARF2 unwind info.
27
28 2002-11-27  Ulrich Weigand  <uweigand@de.ibm.com>
29
30         * src/s390/sysv.S (.eh_frame section): Make section read-only.
31
32 2002-11-26  Jim Wilson  <wilson@redhat.com>
33
34         * src/types.c (FFI_TYPE_POINTER): Has size 8 on IA64.
35
36 2002-11-23  H.J. Lu <hjl@gnu.org>
37
38         * acinclude.m4: Add dummy AM_PROG_LIBTOOL.
39         Include ../config/accross.m4.
40         * aclocal.m4; Rebuild.
41         * configure: Likewise.
42
43 2002-11-15  Ulrich Weigand  <uweigand@de.ibm.com>
44
45         * src/s390/sysv.S (.eh_frame section): Adapt to pcrel FDE encoding.
46
47 2002-11-11  DJ Delorie  <dj@redhat.com>
48
49         * configure.in: Look for common files in the right place.
50
51 2002-10-08  Ulrich Weigand  <uweigand@de.ibm.com>
52
53         * src/java_raw_api.c (ffi_java_raw_to_ptrarray): Interpret
54         raw data as _Jv_word values, not ffi_raw.
55         (ffi_java_ptrarray_to_raw): Likewise.
56         (ffi_java_rvalue_to_raw): New function.
57         (ffi_java_raw_call): Call it.
58         (ffi_java_raw_to_rvalue): New function.
59         (ffi_java_translate_args): Call it.
60         * src/ffitest.c (closure_test_fn): Interpret return value
61         as ffi_arg, not int.
62         * src/s390/ffi.c (ffi_prep_cif_machdep): Add missing
63         FFI_TYPE_POINTER case.
64         (ffi_closure_helper_SYSV): Likewise.  Also, assume return
65         values extended to word size.
66
67 2002-10-02  Andreas Jaeger  <aj@suse.de>
68
69         * src/x86/ffi64.c (ffi_prep_cif_machdep): Remove debug output.
70
71 2002-10-01  Bo Thorsen  <bo@smetana.suse.de>
72
73         * include/ffi.h.in: Fix i386 win32 compilation.
74
75 2002-09-30  Ulrich Weigand  <uweigand@de.ibm.com>
76
77         * configure.in: Add s390x-*-linux-* target.
78         * configure: Regenerate.
79         * include/ffi.h.in: Define S390X for s390x targets.
80         (FFI_CLOSURES): Define for s390/s390x.
81         (FFI_TRAMPOLINE_SIZE): Likewise.
82         (FFI_NATIVE_RAW_API): Likewise.
83         * src/prep_cif.c (ffi_prep_cif): Do not compute stack space for s390.
84         * src/types.c (FFI_TYPE_POINTER): Use 8-byte pointers on s390x.
85         * src/s390/ffi.c: Major rework of existing code.  Add support for
86         s390x targets.  Add closure support.
87         * src/s390/sysv.S: Likewise.
88
89 2002-09-29  Richard Earnshaw  <rearnsha@arm.com>
90
91         * src/arm/sysv.S: Fix typo.
92
93 2002-09-28  Richard Earnshaw  <rearnsha@arm.com>
94
95         * src/arm/sysv.S: If we don't have machine/asm.h and the pre-processor
96         has defined __USER_LABEL_PREFIX__, then use it in CNAME.
97         (ffi_call_SYSV): Handle soft-float.
98
99 2002-09-27  Bo Thorsen  <bo@suse.de>
100
101         * include/ffi.h.in: Fix multilib x86-64 support.
102
103 2002-09-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
104
105         * Makefile.am (all-multi): Fix multilib parallel build.
106
107 2002-07-19  Kaz Kojima  <kkojima@gcc.gnu.org>
108
109         * configure.in (sh[34]*-*-linux*): Add brackets.
110         * configure: Regenerate.
111
112 2002-07-18  Kaz Kojima  <kkojima@gcc.gnu.org>
113
114         * Makefile.am: Add SH support.
115         * Makefile.in: Regenerate.
116         * configure.in (sh-*-linux*, sh[34]*-*-linux*): Add target.
117         * configure: Regenerate.
118         * include/ffi.h.in: Add SH support.
119         * src/sh/ffi.c: New file.
120         * src/sh/sysv.S: New file.
121         * src/types.c: Add SH support.
122
123 2002-07-16  Bo Thorsen  <bo@suse.de>
124
125         * src/x86/ffi64.c: New file that adds x86-64 support.
126         * src/x86/unix64.S: New file that handles argument setup for
127         x86-64.
128         * src/x86/sysv.S: Don't use this on x86-64.
129         * src/x86/ffi.c: Don't use this on x86-64.
130         Remove unused vars.
131         * src/prep_cif.c (ffi_prep_cif): Don't do stack size calculation
132         for x86-64.
133         * src/ffitest.c (struct6): New test that tests a special case in
134         the x86-64 ABI.
135         (struct7): Likewise.
136         (struct8): Likewise.
137         (struct9): Likewise.
138         (closure_test_fn): Silence warning about this when it's not used.
139         (main): Add the new tests.
140         (main): Fix a couple of wrong casts and silence some compiler warnings.
141         * include/ffi.h.in: Add x86-64 ABI definition.
142         * fficonfig.h.in: Regenerate.
143         * Makefile.am: Add x86-64 support.
144         * configure.in: Likewise.
145         * Makefile.in: Regenerate.
146         * configure: Likewise.
147
148 2002-06-24  Bo Thorsen  <bo@suse.de>
149
150         * src/types.c: Merge settings for similar architectures.
151         Add x86-64 sizes and alignments.
152
153 2002-06-23  Bo Thorsen  <bo@suse.de>
154
155         * src/arm/ffi.c (ffi_prep_args): Remove unused vars.
156         * src/sparc/ffi.c (ffi_prep_args_v8): Likewise.
157         * src/mips/ffi.c (ffi_prep_args): Likewise.
158         * src/m68k/ffi.c (ffi_prep_args): Likewise.
159
160 2002-07-18  H.J. Lu  (hjl@gnu.org)
161
162         * Makefile.am (TARGET_SRC_MIPS_LINUX): New.
163         (libffi_la_SOURCES): Support MIPS_LINUX.
164         (libffi_convenience_la_SOURCES): Likewise.
165         * Makefile.in: Regenerated.
166
167         * configure.in (mips64*-*): Skip.
168         (mips*-*-linux*): New.
169         * configure: Regenerated.
170
171         * src/mips/ffi.c: Include <sgidefs.h>.
172
173 2002-06-06  Ulrich Weigand  <uweigand@de.ibm.com>
174
175         * src/s390/sysv.S: Save/restore %r6.  Add DWARF-2 unwind info.
176
177 2002-05-27  Roger Sayle  <roger@eyesopen.com>
178
179         * src/x86/ffi.c (ffi_prep_args): Remove reference to avn.
180
181 2002-05-27  Bo Thorsen  <bo@suse.de>
182
183         * src/x86/ffi.c (ffi_prep_args): Remove unused variable and
184         fix formatting.
185
186 2002-05-13  Andreas Tobler  <a.tobler@schweiz.ch>
187
188         * src/powerpc/ffi_darwin.c (ffi_prep_closure): Declare fd at
189         beginning of function (for older apple cc).
190
191 2002-05-08  Alexandre Oliva  <aoliva@redhat.com>
192
193         * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
194         script entry, and set LD to it when configuring multilibs.
195         * configure: Rebuilt.
196
197 2002-05-05  Jason Thorpe  <thorpej@wasabisystems.com>
198
199         * configure.in (sparc64-*-netbsd*): Add target.
200         (sparc-*-netbsdelf*): Likewise.
201         * configure: Regenerate.
202
203 2002-04-28  David S. Miller  <davem@redhat.com>
204
205         * configure.in, configure: Fix SPARC test in previous change.
206
207 2002-04-29  Gerhard Tonn  <GerhardTonn@swol.de>
208
209         * Makefile.am: Add Linux for S/390 support.
210         * Makefile.in: Regenerate.
211         * configure.in: Add Linux for S/390 support.
212         * configure: Regenerate.
213         * include/ffi.h.in: Add Linux for S/390 support.
214         * src/s390/ffi.c: New file from libffi CVS tree.
215         * src/s390/sysv.S: New file from libffi CVS tree.
216
217 2002-04-28  Jakub Jelinek  <jakub@redhat.com>
218
219         * configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working
220         %r_disp32().
221         * src/sparc/v8.S: Use it.
222         * src/sparc/v9.S: Likewise.
223         * fficonfig.h.in: Rebuilt.
224         * configure: Rebuilt.
225
226 2002-04-08  Hans Boehm  <Hans_Boehm@hp.com>
227
228         * src/java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE
229         correctly.
230         * src/ia64/unix.S: Add unwind information. Fix comments.
231         Save sp in a way that's compatible with unwind info.
232         (ffi_call_unix): Correctly restore sp in all cases.
233         * src/ia64/ffi.c: Add, fix comments.
234
235 2002-04-08  Jakub Jelinek  <jakub@redhat.com>
236
237         * src/sparc/v8.S: Make .eh_frame dependent on target word size.
238
239 2002-04-06  Jason Thorpe  <thorpej@wasabisystems.com>
240
241         * configure.in (alpha*-*-netbsd*): Add target.
242         * configure: Regenerate.
243
244 2002-04-04  Jeff Sturm  <jsturm@one-point.com>
245
246         * src/sparc/v8.S: Add unwind info.
247         * src/sparc/v9.S: Likewise.
248
249 2002-03-30  Krister Walfridsson  <cato@df.lth.se>
250
251         * configure.in: Enable i*86-*-netbsdelf*.
252         * configure: Rebuilt.
253
254 2002-03-29  David Billinghurst <David.Billinghurst@riotinto.com>
255
256         PR other/2620
257         * src/mips/n32.s: Delete
258         * src/mips/o32.s: Delete
259
260 2002-03-21  Loren J. Rittle  <ljrittle@acm.org>
261
262         * configure.in: Enable alpha*-*-freebsd*.
263         * configure: Rebuilt.
264
265 2002-03-17  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
266
267         * Makefile.am: libfficonvenience -> libffi_convenience.
268         * Makefile.in: Rebuilt.
269
270         * Makefile.am: Define ffitest_OBJECTS.
271         * Makefile.in: Rebuilt.
272
273 2002-03-07  Andreas Tobler  <toa@pop.agri.ch>
274             David Edelsohn  <edelsohn@gnu.org>
275
276         * Makefile.am (EXTRA_DIST): Add Darwin and AIX closure files.
277         (TARGET_SRC_POWERPC_AIX): Add aix_closure.S.
278         (TARGET_SRC_POWERPC_DARWIN): Add darwin_closure.S.
279         * Makefile.in: Regenerate.
280         * include/ffi.h.in: Add AIX and Darwin closure definitions.
281         * src/powerpc/ffi_darwin.c (ffi_prep_closure): New function.
282         (flush_icache, flush_range): New functions.
283         (ffi_closure_helper_DARWIN): New function.
284         * src/powerpc/aix_closure.S: New file.
285         * src/powerpc/darwin_closure.S: New file.
286
287 2002-02-24  Jeff Sturm  <jsturm@one-point.com>
288
289         * include/ffi.h.in: Add typedef for ffi_arg.
290         * src/ffitest.c (main): Declare rint with ffi_arg.
291
292 2002-02-21  Andreas Tobler  <toa@pop.agri.ch>
293
294         * src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate
295         number of GPRs for floating-point arguments.
296
297 2002-01-31  Anthony Green  <green@redhat.com>
298
299         * configure: Rebuilt.
300         * configure.in: Replace CHECK_SIZEOF and endian tests with
301         cross-compiler friendly macros.
302         * aclocal.m4 (AC_COMPILE_CHECK_SIZEOF, AC_C_BIGENDIAN_CROSS): New
303         macros.
304
305 2002-01-18  David Edelsohn  <edelsohn@gnu.org>
306
307         * src/powerpc/darwin.S (_ffi_call_AIX): New.
308         * src/powerpc/aix.S (ffi_call_DARWIN): New.
309
310 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
311
312         * Makefile.am (EXTRA_DIST): Add Darwin and AIX files.
313         (TARGET_SRC_POWERPC_AIX): New.
314         (POWERPC_AIX): New stanza.
315         * Makefile.in: Regenerate.
316         * configure.in: Add AIX case.
317         * configure: Regenerate.
318         * include/ffi.h.in (ffi_abi): Add FFI_AIX.
319         * src/powerpc/ffi_darwin.c (ffi_status): Use "long" to scale frame
320         size.  Fix "long double" support.
321         (ffi_call): Add FFI_AIX case.
322         * src/powerpc/aix.S: New.
323
324 2001-10-09  John Hornkvist  <john@toastedmarshmallow.com>
325
326         Implement Darwin PowerPC ABI.
327         * configure.in: Handle powerpc-*-darwin*.
328         * Makefile.am: Set source files for POWERPC_DARWIN.
329         * configure: Rebuilt.
330         * Makefile.in: Rebuilt.
331         * include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for
332         POWERPC_DARWIN.
333         * src/powerpc/darwin.S: New file.
334         * src/powerpc/ffi_darwin.c: New file.
335
336 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
337
338         * src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
339
340 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
341
342         * src/x86/sysv.S: Avoid gas-only .balign directive.
343         Use C style comments.
344
345 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
346
347         * src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
348         Fixes PR bootstrap/3563.
349
350 2001-06-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
351
352         * src/alpha/osf.S (ffi_closure_osf): Use .rdata for ECOFF.
353
354 2001-06-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
355
356         * configure.in: Recognize sparc*-sun-* host.
357         * configure: Regenerate.
358
359 2001-06-06  Andrew Haley  <aph@redhat.com>
360
361         * src/alpha/osf.S (__FRAME_BEGIN__): Conditionalize for ELF.
362
363 2001-06-03  Andrew Haley  <aph@redhat.com>
364
365         * src/alpha/osf.S: Add unwind info.
366         * src/powerpc/sysv.S: Add unwind info.
367         * src/powerpc/ppc_closure.S: Likewise.
368
369 2000-05-31  Jeff Sturm  <jsturm@one-point.com>
370
371         * configure.in: Fix AC_ARG_ENABLE usage.
372         * configure: Rebuilt.
373
374 2001-05-06  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
375
376         * configure.in: Remove warning about beta code.
377         * configure: Rebuilt.
378
379 2001-04-25  Hans Boehm <Hans_Boehm@hp.com>
380
381         * src/ia64/unix.S: Restore stack pointer when returning from
382         ffi_closure_UNIX.
383         * src/ia64/ffi.c: Fix typo in comment.
384
385 2001-04-18  Jim Wilson  <wilson@redhat.com>
386
387         * src/ia64/unix.S: Delete unnecessary increment and decrement of loc2
388         to eliminate RAW DV.
389
390 2001-04-12  Bryce McKinlay  <bryce@albatross.co.nz>
391
392         * Makefile.am: Make a libtool convenience library.
393         * Makefile.in: Rebuilt.
394
395 2001-03-29  Bryce McKinlay  <bryce@albatross.co.nz>
396
397         * configure.in: Use different syntax for subdirectory creation.
398         * configure: Rebuilt.
399
400 2001-03-27  Jon Beniston  <jon@beniston.com>
401
402         * configure.in: Added X86_WIN32 target (Win32, CygWin, MingW).
403         * configure: Rebuilt.
404         * Makefile.am: Added X86_WIN32 target support.
405         * Makefile.in: Rebuilt.
406
407         * include/ffi.h.in: Added X86_WIN32 target support.
408
409         * src/ffitest.c: Doesn't run structure tests for X86_WIN32 targets.
410         * src/types.c: Added X86_WIN32 target support.
411
412         * src/x86/win32.S: New file. Based on sysv.S, but with EH
413         stuff removed and made to work with CygWin's gas.
414
415 2001-03-26  Bryce McKinlay  <bryce@albatross.co.nz>
416
417         * configure.in: Make target subdirectory in build dir.
418         * Makefile.am: Override suffix based rules to specify correct output
419         subdirectory.
420         * Makefile.in: Rebuilt.
421         * configure: Rebuilt.
422
423 2001-03-23  Kevin B Hendricks  <khendricks@ivey.uwo.ca>
424
425         * src/powerpc/ppc_closure.S: New file.
426         * src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug
427         involving long long and register pairs.
428         (ffi_prep_closure): New function.
429         (flush_icache): Likewise.
430         (ffi_closure_helper_SYSV): Likewise.
431         * include/ffi.h.in (FFI_CLOSURES): Define on PPC.
432         (FFI_TRAMPOLINE_SIZE): Likewise.
433         (FFI_NATIVE_RAW_API): Likewise.
434         * Makefile.in: Rebuilt.
435         * Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S.
436         (TARGET_SRC_POWERPC): Likewise.
437
438 2001-03-19  Tom Tromey  <tromey@redhat.com>
439
440         * Makefile.in: Rebuilt.
441         * Makefile.am (ffitest_LDFLAGS): New macro.
442
443 2001-03-02  Nick Clifton  <nickc@redhat.com>
444
445         * include/ffi.h.in: Remove RCS ident string.
446         * include/ffi_mips.h: Remove RCS ident string.
447         * src/debug.c: Remove RCS ident string.
448         * src/ffitest.c: Remove RCS ident string.
449         * src/prep_cif.c: Remove RCS ident string.
450         * src/types.c: Remove RCS ident string.
451         * src/alpha/ffi.c: Remove RCS ident string.
452         * src/alpha/osf.S: Remove RCS ident string.
453         * src/arm/ffi.c: Remove RCS ident string.
454         * src/arm/sysv.S: Remove RCS ident string.
455         * src/mips/ffi.c: Remove RCS ident string.
456         * src/mips/n32.S: Remove RCS ident string.
457         * src/mips/o32.S: Remove RCS ident string.
458         * src/sparc/ffi.c: Remove RCS ident string.
459         * src/sparc/v8.S: Remove RCS ident string.
460         * src/sparc/v9.S: Remove RCS ident string.
461         * src/x86/ffi.c: Remove RCS ident string.
462         * src/x86/sysv.S: Remove RCS ident string.
463
464 2001-02-08  Joseph S. Myers  <jsm28@cam.ac.uk>
465
466         * include/ffi.h.in: Change sourceware.cygnus.com references to
467         gcc.gnu.org.
468
469 2000-12-09  Richard Henderson  <rth@redhat.com>
470
471         * src/alpha/ffi.c (ffi_call): Simplify struct return test.
472         (ffi_closure_osf_inner): Index rather than increment avalue
473         and arg_types.  Give ffi_closure_osf the raw return value type.
474         * src/alpha/osf.S (ffi_closure_osf): Handle return value type
475         promotion.
476
477 2000-12-07  Richard Henderson  <rth@redhat.com>
478
479         * src/raw_api.c (ffi_translate_args): Fix typo.
480         (ffi_prep_closure): Likewise.
481
482         * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
483         FFI_TRAMPOLINE_SIZE.
484         * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
485         cif->bytes for new ffi_call_osf implementation.
486         (ffi_prep_args): Absorb into ...
487         (ffi_call): ... here.  Do all stack allocation here and
488         avoid a callback function.
489         (ffi_prep_closure, ffi_closure_osf_inner): New.
490         * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
491         (ffi_closure_osf): New.
492
493 2000-09-10  Alexandre Oliva  <aoliva@redhat.com>
494
495         * config.guess, config.sub, install-sh: Removed.
496         * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
497         * Makefile.in: Rebuilt.
498
499         * acinclude.m4: Include libtool macros from the top level.
500         * aclocal.m4, configure: Rebuilt.
501
502 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
503
504         * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
505         * configure: Rebuilt.
506
507 2000-05-11  Scott Bambrough  <scottb@netwinder.org>
508
509         * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to
510         memory correctly.  Use conditional instructions, not branches where
511         possible.
512
513 2000-05-04  Tom Tromey  <tromey@cygnus.com>
514
515         * configure: Rebuilt.
516         * configure.in: Match `arm*-*-linux-*'.
517         From Chris Dornan <cdornan@arm.com>.
518
519 2000-04-28  Jakub Jelinek  <jakub@redhat.com>
520
521         * Makefile.am (SUBDIRS): Define.
522         (AM_MAKEFLAGS): Likewise.
523         (Multilib support.): Add section.
524         * Makefile.in: Rebuilt.
525         * ltconfig (extra_compiler_flags, extra_compiler_flags_value):
526         New variables. Set for gcc using -print-multi-lib. Export them
527         to libtool.
528         (sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
529         * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
530         for -shared links.
531         (extra_compiler_flags_value, extra_compiler_flags): Check these
532         for extra compiler options which need to be passed down in
533         compiler_flags.
534
535 2000-04-16  Anthony Green  <green@redhat.com>
536
537         * configure: Rebuilt.
538         * configure.in: Change i*86-pc-linux* to i*86-*-linux*.
539
540 2000-04-14  Jakub Jelinek  <jakub@redhat.com>
541
542         * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
543         Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
544         * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
545         Replace all void * sizeofs with sizeof(int).
546         Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
547         different than DOUBLE.
548         Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
549         (ffi_prep_args_v9): New function.
550         (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
551         (ffi_V9_return_struct): New function.
552         (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
553         32bit code (not yet cross-arch calls).
554         * src/sparc/v8.S: Add struct return delay nop.
555         Handle long long.
556         * src/sparc/v9.S: New file.
557         * src/prep_cif.c (ffi_prep_cif): Return structure pointer
558         is used on sparc64 only for structures larger than 32 bytes.
559         Pass by reference for structures is done for structure arguments
560         larger than 16 bytes.
561         * src/ffitest.c (main): Use 64bit rint on sparc64.
562         Run long long tests on sparc.
563         * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
564         sparc64.
565         (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
566         on sparc64.
567         * configure.in (sparc-*-linux*): New supported target.
568         (sparc64-*-linux*): Likewise.
569         * configure: Rebuilt.
570         * Makefile.am: Add v9.S to SPARC files.
571         * Makefile.in: Likewise.
572         (LINK): Surround $(CCLD) into double quotes, so that multilib
573         compiles work correctly.
574
575 2000-04-04  Alexandre Petit-Bianco  <apbianco@cygnus.com>
576
577         * configure: Rebuilt.
578         * configure.in: (i*86-*-solaris*): New libffi target. Patch
579         proposed by Bryce McKinlay.
580
581 2000-03-20  Tom Tromey  <tromey@cygnus.com>
582
583         * Makefile.in: Hand edit for java_raw_api.lo.
584
585 2000-03-08  Bryce McKinlay  <bryce@albatross.co.nz>
586
587         * config.guess, config.sub: Update from the gcc tree.
588         Fix for PR libgcj/168.
589
590 2000-03-03  Tom Tromey  <tromey@cygnus.com>
591
592         * Makefile.in: Fixed ia64 by hand.
593
594         * configure: Rebuilt.
595         * configure.in (--enable-multilib): New option.
596         (libffi_basedir): New subst.
597         (AC_OUTPUT): Added multilib code.
598
599 2000-03-02  Tom Tromey  <tromey@cygnus.com>
600
601         * Makefile.in: Rebuilt.
602         * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
603         directory name.
604
605 2000-02-25  Hans Boehm <boehm@acm.org>
606
607         * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
608         files.
609         * src/raw_api.c (ffi_translate_args): Fixed typo in argument
610         list.
611         (ffi_prep_raw_closure): Use ffi_translate_args, not
612         ffi_closure_translate.
613         * src/java_raw_api.c: New file.
614         * src/ffitest.c (closure_test_fn): New function.
615         (main): Define `rint' as long long on IA64.  Added new test when
616         FFI_CLOSURES is defined.
617         * include/ffi.h.in (ALIGN): Use size_t, not unsigned.
618         (ffi_abi): Recognize IA64.
619         (ffi_raw): Added `flt' field.
620         Added "Java raw API" code.
621         * configure.in: Recognize ia64.
622         * Makefile.am (TARGET_SRC_IA64): New macro.
623         (libffi_la_common_SOURCES): Added java_raw_api.c.
624         (libffi_la_SOURCES): Define in IA64 case.
625
626 2000-01-04  Tom Tromey  <tromey@cygnus.com>
627
628         * Makefile.in: Rebuilt with newer automake.
629
630 1999-12-31  Tom Tromey  <tromey@cygnus.com>
631
632         * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
633
634 1999-09-01  Tom Tromey  <tromey@cygnus.com>
635
636         * include/ffi.h.in: Removed PACKAGE and VERSION defines and
637         undefs.
638         * fficonfig.h.in: Rebuilt.
639         * configure: Rebuilt.
640         * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
641         Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
642         * acconfig.h: Don't #undef PACKAGE or VERSION.
643
644 1999-08-09  Anthony Green  <green@cygnus.com>
645
646         * include/ffi.h.in: Try to work around messy header problem
647         with PACKAGE and VERSION.
648
649         * configure: Rebuilt.
650         * configure.in: Change version to 2.00-beta.
651
652         * fficonfig.h.in: Rebuilt.
653         * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
654
655         * src/x86/ffi.c (ffi_raw_call): Rename.
656
657 1999-08-02  Kresten Krab Thorup  <krab@dominiq.is.s.u-tokyo.ac.jp>
658
659         * src/x86/ffi.c (ffi_closure_SYSV): New function.
660         (ffi_prep_incoming_args_SYSV): Ditto.
661         (ffi_prep_closure): Ditto.
662         (ffi_closure_raw_SYSV): Ditto.
663         (ffi_prep_raw_closure): More ditto.
664         (ffi_call_raw): Final ditto.
665
666         * include/ffi.h.in: Add definitions for closure and raw API.
667
668         * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
669         FFI_TYPE_UINT64.
670
671         * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
672
673         * src/raw_api.c: New file.
674
675         * include/ffi.h.in (ffi_raw): New type.
676         (UINT_ARG, SINT_ARG): New defines.
677         (ffi_closure, ffi_raw_closure): New types.
678         (ffi_prep_closure, ffi_prep_raw_closure): New declarations.
679
680         * configure.in: Add check for endianness and sizeof void*.
681
682         * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
683         instead of directly.
684
685         * configure: Rebuilt.
686
687 Thu Jul  8 14:28:42 1999  Anthony Green  <green@cygnus.com>
688
689         * configure.in: Add x86 and powerpc BeOS configurations.
690         From Makoto Kato <m_kato@ga2.so-net.ne.jp>.
691
692 1999-05-09  Anthony Green  <green@cygnus.com>
693
694         * configure.in: Add warning about this being beta code.
695         Remove src/Makefile.am from the picture.
696         * configure: Rebuilt.
697
698         * Makefile.am: Move logic from src/Makefile.am.  Add changes
699         to support libffi as a target library.
700         * Makefile.in: Rebuilt.
701
702         * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
703         Upgraded to new autoconf, automake, libtool.
704
705         * README: Tweaks.
706
707         * LICENSE: Update copyright date.
708
709         * src/Makefile.am, src/Makefile.in: Removed.
710
711 1998-11-29  Anthony Green  <green@cygnus.com>
712
713         * include/ChangeLog: Removed.
714         * src/ChangeLog: Removed.
715         * src/mips/ChangeLog: Removed.
716         * src/sparc/ChangeLog: Remboved.
717         * src/x86/ChangeLog: Removed.
718
719         * ChangeLog.v1: Created.