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