OSDN Git Service

2004-03-20 Matthias Klose <doko@debian.org>
[pf3gnuchains/gcc-fork.git] / libffi / ChangeLog
1 2004-03-20  Matthias Klose  <doko@debian.org>
2
3         * src/pa/linux.S: Fix typo.
4
5 2004-03-19  Matthias Klose  <doko@debian.org>
6
7         * Makefile.am: Update 
8         * Makefile.in: Regenerate.
9         * src/pa/ffi.h.in: Remove.
10         * src/pa/ffitarget.h: New file.
11
12 2004-02-10  Randolph Chung  <tausq@debian.org>
13
14         * Makefile.am: Add PA support.
15         * Makefile.in: Regenerate.
16         * include/Makefile.in: Regenerate.
17         * configure.ac: Add PA target.
18         * configure: Regenerate.
19         * src/pa/ffi.c: New file.
20         * src/pa/ffi.h.in: Add PA support.
21         * src/pa/linux.S: New file.
22         * prep_cif.c: Add PA support.
23
24 2004-03-16  Hosaka Yuji  <hos@tamanegi.org>
25
26         * src/types.c: Fix alignment size of X86_WIN32 case int64 and
27         double.
28         * src/x86/ffi.c (ffi_prep_args): Replace ecif->cif->rtype->type
29         with ecif->cif->flags.
30         (ffi_call, ffi_prep_incoming_args_SYSV): Replace cif->rtype->type
31         with cif->flags.
32         (ffi_prep_cif_machdep): Add X86_WIN32 struct case.
33         (ffi_closure_SYSV): Add 1 or 2-bytes struct case for X86_WIN32.
34         * src/x86/win32.S (retstruct1b, retstruct2b, sc_retstruct1b,
35         sc_retstruct2b): Add for 1 or 2-bytes struct case.
36
37 2004-03-15 Kelley Cook <kcook@gcc.gnu.org>
38
39         * configure.in: Rename file to ...
40         * configure.ac: ... this.
41         * fficonfig.h.in: Regenerate.
42         * Makefile.in: Regenerate.
43         * include/Makefile.in: Regenerate.
44         * testsuite/Makefile.in: Regenerate.
45
46 2004-03-12  Matt Austern  <austern@apple.com>
47
48         * src/powerpc/darwin.S: Fix EH information so it corresponds to
49         changes in EH format resulting from addition of linkonce support.
50         * src/powerpc/darwin_closure.S: Likewise.
51
52 2004-03-11  Andreas Tobler  <a.tobler@schweiz.ch>
53             Paolo Bonzini  <bonzini@gnu.org>
54
55         * Makefile.am (AUTOMAKE_OPTIONS): Set them.
56         Remove VPATH. Remove rules for object files. Remove multilib support.
57         (AM_CCASFLAGS): Add.
58         * configure.in (AC_CONFIG_HEADERS): Relace AM_CONFIG_HEADER.
59         (AC_PREREQ): Bump version to 2.59.
60         (AC_INIT): Fill with version info and bug address.
61         (ORIGINAL_LD_FOR_MULTILIBS): Remove.
62         (AM_ENABLE_MULTILIB): Use this instead of AC_ARG_ENABLE.
63         De-precious CC so that the right flags are passed down to multilibs.
64         (AC_MSG_ERROR): Replace obsolete macro AC_ERROR.
65         (AC_CONFIG_FILES): Replace obsolete macro AC_LINK_FILES.
66         (AC_OUTPUT): Reorganize the output with AC_CONFIG_COMMANDS.
67         * configure: Rebuilt.
68         * aclocal.m4: Likewise.
69         * Makefile.in, include/Makefile.in, testsuite/Makefile.in: Likewise.
70         * fficonfig.h.in: Likewise.
71
72 2004-03-11  Andreas Schwab  <schwab@suse.de>
73
74         * src/ia64/ffi.c (ffi_prep_incoming_args_UNIX): Get floating point
75         arguments from fp registers only for the first 8 parameter slots.
76         Don't convert a float parameter when passed in memory.
77
78 2004-03-09  Hans-Peter Nilsson  <hp@axis.com>
79
80         * configure: Regenerate for config/accross.m4 correction.
81
82 2004-02-25  Matt Kraai  <kraai@alumni.cmu.edu>
83
84         * src/powerpc/ffi.c (ffi_prep_args_SYSV): Change
85         ecif->cif->bytes to bytes.
86         (ffi_prep_cif_machdep): Add braces around nested if statement.
87
88 2004-02-09  Alan Modra  <amodra@bigpond.net.au>
89
90         * src/types.c (pointer): POWERPC64 has 8 byte pointers.
91
92         * src/powerpc/ffi.c (ffi_prep_args64): Correct long double handling.
93         (ffi_closure_helper_LINUX64): Fix typo.
94         * testsuite/libffi.call/cls_align_longdouble.c: Pass -mlong-double-128
95         for powerpc64-*-*.
96         * testsuite/libffi.call/float.c: Likewise.
97         * testsuite/libffi.call/float2.c: Likewise.
98
99 2004-02-08  Alan Modra  <amodra@bigpond.net.au>
100
101         * src/powerpc/ffi.c (ffi_prep_cif_machdep <FFI_LINUX64>): Correct
102         long double function return and long double arg handling.
103         (ffi_closure_helper_LINUX64): Formatting.  Delete unused "ng" var.
104         Use "end_pfr" instead of "nf".  Correct long double handling.
105         Localise "temp".
106         * src/powerpc/linux64.S (ffi_call_LINUX64): Save f2 long double
107         return value.
108         * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Allocate
109         space for long double return value.  Adjust stack frame and offsets.
110         Load f2 long double return.
111
112 2004-02-07  Alan Modra  <amodra@bigpond.net.au>
113
114         * src/types.c: Use 16 byte long double for POWERPC64.
115
116 2004-01-25  Eric Botcazou  <ebotcazou@libertysurf.fr>
117
118         * src/sparc/ffi.c (ffi_prep_args_v9): Shift the parameter array
119         when the structure return address is passed in %o0.
120         (ffi_V9_return_struct): Rename into ffi_v9_layout_struct.
121         (ffi_v9_layout_struct): Align the field following a nested structure
122         on a word boundary.  Use memmove instead of memcpy.
123         (ffi_call): Update call to ffi_V9_return_struct.
124         (ffi_prep_closure): Define 'ctx' only for V8.
125         (ffi_closure_sparc_inner): Clone into ffi_closure_sparc_inner_v8
126         and ffi_closure_sparc_inner_v9.
127         (ffi_closure_sparc_inner_v8): Return long doubles by reference.
128         Always skip the structure return address.  For structures and long
129         doubles, copy the argument directly.
130         (ffi_closure_sparc_inner_v9): Skip the structure return address only
131         if required.  Shift the maximum floating-point slot accordingly.  For
132         big structures, copy the argument directly; otherwise, left-justify the
133         argument and call ffi_v9_layout_struct to lay out the structure on
134         the stack.
135         * src/sparc/v8.S: Undef STACKFRAME before defining it.
136         (ffi_closure_v8): Pass the structure return address.  Update call to
137         ffi_closure_sparc_inner_v8.  Short-circuit FFI_TYPE_INT handling.
138         Skip the 'unimp' insn when returning long doubles and structures.
139         * src/sparc/v9.S: Undef STACKFRAME before defining it.
140         (ffi_closure_v9): Increase the frame size by 2 words.  Short-circuit
141         FFI_TYPE_INT handling.  Load structures both in integers and
142         floating-point registers on return.
143         * README: Update status of the SPARC port.
144
145 2004-01-24  Andreas Tobler  <a.tobler@schweiz.ch>
146
147         * testsuite/libffi.call/pyobjc-tc.c (main): Treat result value
148         as of type ffi_arg.
149         * testsuite/libffi.call/struct3.c (main): Fix CHECK.
150
151 2004-01-22  Ulrich Weigand  <uweigand@de.ibm.com>
152
153         * testsuite/libffi.call/cls_uint.c (cls_ret_uint_fn): Treat result
154         value as of type ffi_arg, not unsigned int.
155
156 2004-01-21  Michael Ritzert  <ritzert@t-online.de>
157
158         * ffi64.c (ffi_prep_args): Cast the RHS of an assignment instead
159         of the LHS.
160
161 2004-01-12  Andreas Tobler  <a.tobler@schweiz.ch>
162
163         * testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_32 for
164         Solaris.
165
166 2004-01-08  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
167
168         * testsuite/libffi.call/ffitest.h (allocate_mmap): Cast MAP_FAILED
169         to void *.
170
171 2003-12-10  Richard Henderson  <rth@redhat.com>
172
173         * testsuite/libffi.call/cls_align_pointer.c: Cast pointers to
174         size_t instead of int.
175
176 2003-12-04  Hosaka Yuji  <hos@tamanegi.org>
177
178         * testsuite/libffi.call/many_win32.c: Include <float.h>.
179         * testsuite/libffi.call/many_win32.c (main): Replace variable
180         int i with unsigned long ul.
181
182         * testsuite/libffi.call/cls_align_uint64.c: New test case.
183         * testsuite/libffi.call/cls_align_sint64.c: Likewise.
184         * testsuite/libffi.call/cls_align_uint32.c: Likewise.
185         * testsuite/libffi.call/cls_align_sint32.c: Likewise.
186         * testsuite/libffi.call/cls_align_uint16.c: Likewise.
187         * testsuite/libffi.call/cls_align_sint16.c: Likewise.
188         * testsuite/libffi.call/cls_align_float.c: Likewise.
189         * testsuite/libffi.call/cls_align_double.c: Likewise.
190         * testsuite/libffi.call/cls_align_longdouble.c: Likewise.
191         * testsuite/libffi.call/cls_align_pointer.c: Likewise.
192
193 2003-12-02  Hosaka Yuji  <hos@tamanegi.org>
194
195         PR other/13221
196         * src/x86/ffi.c (ffi_prep_args, ffi_prep_incoming_args_SYSV):
197         Align arguments to 32 bits.
198
199 2003-12-01  Andreas Tobler  <a.tobler@schweiz.ch>
200
201         PR other/13221
202         * testsuite/libffi.call/cls_multi_sshort.c: New test case.
203         * testsuite/libffi.call/cls_multi_sshortchar.c: Likewise.
204         * testsuite/libffi.call/cls_multi_uchar.c: Likewise.
205         * testsuite/libffi.call/cls_multi_schar.c: Likewise.
206         * testsuite/libffi.call/cls_multi_ushortchar.c: Likewise.
207         * testsuite/libffi.call/cls_multi_ushort.c: Likewise.
208
209         * testsuite/libffi.special/unwindtest.cc: Cosmetics.
210
211 2003-11-26  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
212
213         * testsuite/libffi.call/ffitest.h: Include <fcntl.h>.
214         * testsuite/libffi.special/ffitestcxx.h: Likewise.
215
216 2003-11-22  Andreas Tobler  <a.tobler@schweiz.ch>
217
218         * Makefile.in: Rebuilt.
219         * configure: Likewise.
220         * testsuite/libffi.special/unwindtest.cc: Convert the mmap to
221         the right type.
222
223 2003-11-21  Andreas Jaeger  <aj@suse.de>
224             Andreas Tobler  <a.tobler@schweiz.ch>
225
226         * acinclude.m4: Add AC_FUNC_MMAP_BLACKLIST.
227         * configure.in: Call AC_FUNC_MMAP_BLACKLIST.
228         * Makefile.in: Rebuilt.
229         * aclocal.m4: Likewise.
230         * configure: Likewise.
231         * fficonfig.h.in: Likewise.
232         * testsuite/lib/libffi-dg.exp: Add include dir.
233         * testsuite/libffi.call/ffitest.h: Add MMAP definitions.
234         * testsuite/libffi.special/ffitestcxx.h: Likewise.
235         * testsuite/libffi.call/closure_fn0.c: Use MMAP functionality
236         for ffi_closure if available.
237         * testsuite/libffi.call/closure_fn1.c: Likewise.
238         * testsuite/libffi.call/closure_fn2.c: Likewise.
239         * testsuite/libffi.call/closure_fn3.c: Likewise.
240         * testsuite/libffi.call/closure_fn4.c: Likewise.
241         * testsuite/libffi.call/closure_fn5.c: Likewise.
242         * testsuite/libffi.call/cls_12byte.c: Likewise.
243         * testsuite/libffi.call/cls_16byte.c: Likewise.
244         * testsuite/libffi.call/cls_18byte.c: Likewise.
245         * testsuite/libffi.call/cls_19byte.c: Likewise.
246         * testsuite/libffi.call/cls_1_1byte.c: Likewise.
247         * testsuite/libffi.call/cls_20byte.c: Likewise.
248         * testsuite/libffi.call/cls_20byte1.c: Likewise.
249         * testsuite/libffi.call/cls_24byte.c: Likewise.
250         * testsuite/libffi.call/cls_2byte.c: Likewise.
251         * testsuite/libffi.call/cls_3_1byte.c: Likewise.
252         * testsuite/libffi.call/cls_3byte1.c: Likewise.
253         * testsuite/libffi.call/cls_3byte2.c: Likewise.
254         * testsuite/libffi.call/cls_4_1byte.c: Likewise.
255         * testsuite/libffi.call/cls_4byte.c: Likewise.
256         * testsuite/libffi.call/cls_5byte.c: Likewise.
257         * testsuite/libffi.call/cls_64byte.c: Likewise.
258         * testsuite/libffi.call/cls_6byte.c: Likewise.
259         * testsuite/libffi.call/cls_7byte.c: Likewise.
260         * testsuite/libffi.call/cls_8byte.c: Likewise.
261         * testsuite/libffi.call/cls_9byte1.c: Likewise.
262         * testsuite/libffi.call/cls_9byte2.c: Likewise.
263         * testsuite/libffi.call/cls_double.c: Likewise.
264         * testsuite/libffi.call/cls_float.c: Likewise.
265         * testsuite/libffi.call/cls_schar.c: Likewise.
266         * testsuite/libffi.call/cls_sint.c: Likewise.
267         * testsuite/libffi.call/cls_sshort.c: Likewise.
268         * testsuite/libffi.call/cls_uchar.c: Likewise.
269         * testsuite/libffi.call/cls_uint.c: Likewise.
270         * testsuite/libffi.call/cls_ulonglong.c: Likewise.
271         * testsuite/libffi.call/cls_ushort.c: Likewise.
272         * testsuite/libffi.call/nested_struct.c: Likewise.
273         * testsuite/libffi.call/nested_struct1.c: Likewise.
274         * testsuite/libffi.call/nested_struct2.c: Likewise.
275         * testsuite/libffi.call/nested_struct3.c: Likewise.
276         * testsuite/libffi.call/problem1.c: Likewise.
277         * testsuite/libffi.special/unwindtest.cc: Likewise.
278
279 2003-11-20  Andreas Tobler  <a.tobler@schweiz.ch>
280
281         * testsuite/lib/libffi-dg.exp: Make the -lgcc_s conditional.
282
283 2003-11-19  Andreas Tobler  <a.tobler@schweiz.ch>
284
285         * testsuite/lib/libffi-dg.exp: Add DYLD_LIBRARY_PATH for darwin.
286         Add -lgcc_s to additional flags.
287
288 2003-11-12  Andreas Tobler  <a.tobler@schweiz.ch>
289
290         * configure.in, include/Makefile.am: PR libgcj/11147, install
291         the ffitarget.h header file in a gcc versioned and target
292         dependent place.
293         * configure: Regenerated.
294         * Makefile.in, include/Makefile.in: Likewise.
295         * testsuite/Makefile.in: Likewise.
296
297 2003-11-09  Andreas Tobler  <a.tobler@schweiz.ch>
298
299         * testsuite/libffi.call/closure_fn0.c: Print result and check
300         with dg-output to make debugging easier.
301         * testsuite/libffi.call/closure_fn1.c: Likewise.
302         * testsuite/libffi.call/closure_fn2.c: Likewise.
303         * testsuite/libffi.call/closure_fn3.c: Likewise.
304         * testsuite/libffi.call/closure_fn4.c: Likewise.
305         * testsuite/libffi.call/closure_fn5.c: Likewise.
306         * testsuite/libffi.call/cls_12byte.c: Likewise.
307         * testsuite/libffi.call/cls_16byte.c: Likewise.
308         * testsuite/libffi.call/cls_18byte.c: Likewise.
309         * testsuite/libffi.call/cls_19byte.c: Likewise.
310         * testsuite/libffi.call/cls_1_1byte.c: Likewise.
311         * testsuite/libffi.call/cls_20byte.c: Likewise.
312         * testsuite/libffi.call/cls_20byte1.c: Likewise.
313         * testsuite/libffi.call/cls_24byte.c: Likewise.
314         * testsuite/libffi.call/cls_2byte.c: Likewise.
315         * testsuite/libffi.call/cls_3_1byte.c: Likewise.
316         * testsuite/libffi.call/cls_3byte1.c: Likewise.
317         * testsuite/libffi.call/cls_3byte2.c: Likewise.
318         * testsuite/libffi.call/cls_4_1byte.c: Likewise.
319         * testsuite/libffi.call/cls_4byte.c: Likewise.
320         * testsuite/libffi.call/cls_5byte.c: Likewise.
321         * testsuite/libffi.call/cls_64byte.c: Likewise.
322         * testsuite/libffi.call/cls_6byte.c: Likewise.
323         * testsuite/libffi.call/cls_7byte.c: Likewise.
324         * testsuite/libffi.call/cls_8byte.c: Likewise.
325         * testsuite/libffi.call/cls_9byte1.c: Likewise.
326         * testsuite/libffi.call/cls_9byte2.c: Likewise.
327         * testsuite/libffi.call/cls_double.c: Likewise.
328         * testsuite/libffi.call/cls_float.c: Likewise.
329         * testsuite/libffi.call/cls_schar.c: Likewise.
330         * testsuite/libffi.call/cls_sint.c: Likewise.
331         * testsuite/libffi.call/cls_sshort.c: Likewise.
332         * testsuite/libffi.call/cls_uchar.c: Likewise.
333         * testsuite/libffi.call/cls_uint.c: Likewise.
334         * testsuite/libffi.call/cls_ulonglong.c: Likewise.
335         * testsuite/libffi.call/cls_ushort.c: Likewise.
336         * testsuite/libffi.call/problem1.c: Likewise.
337
338         * testsuite/libffi.special/unwindtest.cc: Make ffi_closure
339         static.
340
341 2003-11-08  Andreas Tobler  <a.tobler@schweiz.ch>
342
343         * testsuite/libffi.call/cls_9byte2.c: New test case.
344         * testsuite/libffi.call/cls_9byte1.c: Likewise.
345         * testsuite/libffi.call/cls_64byte.c: Likewise.
346         * testsuite/libffi.call/cls_20byte1.c: Likewise.
347         * testsuite/libffi.call/cls_19byte.c: Likewise.
348         * testsuite/libffi.call/cls_18byte.c: Likewise.
349         * testsuite/libffi.call/closure_fn4.c: Likewise.
350         * testsuite/libffi.call/closure_fn5.c: Likewise.
351         * testsuite/libffi.call/cls_schar.c: Likewise.
352         * testsuite/libffi.call/cls_sint.c: Likewise.
353         * testsuite/libffi.call/cls_sshort.c: Likewise.
354         * testsuite/libffi.call/nested_struct2.c: Likewise.
355         * testsuite/libffi.call/nested_struct3.c: Likewise.
356
357 2003-11-08  Andreas Tobler  <a.tobler@schweiz.ch>
358
359         * testsuite/libffi.call/cls_double.c: Do a check on the result.
360         * testsuite/libffi.call/cls_uchar.c: Likewise.
361         * testsuite/libffi.call/cls_uint.c: Likewise.
362         * testsuite/libffi.call/cls_ulonglong.c: Likewise.
363         * testsuite/libffi.call/cls_ushort.c: Likewise.
364         * testsuite/libffi.call/return_sc.c: Cleanup whitespaces.
365
366 2003-11-06  Andreas Tobler  <a.tobler@schweiz.ch>
367
368         * src/prep_cif.c (ffi_prep_cif): Move the validity check after
369         the initialization.
370
371 2003-10-23  Andreas Tobler  <a.tobler@schweiz.ch>
372
373         * src/java_raw_api.c (ffi_java_ptrarray_to_raw): Replace
374         FFI_ASSERT(FALSE) with FFI_ASSERT(0).
375
376 2003-10-22  David Daney  <ddaney@avtrex.com>
377
378         * src/mips/ffitarget.h: Replace undefined UINT32 and friends with
379         __attribute__((__mode__(__SI__))) and friends.
380
381 2003-10-22  Andreas Schwab  <schwab@suse.de>
382
383         * src/ia64/ffi.c: Replace FALSE/TRUE with false/true.
384
385 2003-10-21  Andreas Tobler  <a.tobler@schweiz.ch>
386
387         * configure.in: AC_LINK_FILES(ffitarget.h).
388         * configure: Regenerate.
389         * Makefile.in: Likewise.
390         * include/Makefile.in: Likewise.
391         * testsuite/Makefile.in: Likewise.
392         * fficonfig.h.in: Likewise.
393
394 2003-10-21  Paolo Bonzini  <bonzini@gnu.org>
395             Richard Henderson  <rth@redhat.com>
396
397         Avoid that ffi.h includes fficonfig.h.
398
399         * Makefile.am (EXTRA_DIST): Include ffitarget.h files
400         (TARGET_SRC_MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX.
401         (TARGET_SRC_MIPS_SGI): Removed.
402         (MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX.
403         (MIPS_SGI): Removed.
404         (CLEANFILES): Removed.
405         (mostlyclean-am, clean-am, mostlyclean-sub, clean-sub): New
406         targets.
407         * acconfig.h: Removed.
408         * configure.in: Compute sizeofs only for double and long double.
409         Use them to define and subst HAVE_LONG_DOUBLE.  Include comments
410         into AC_DEFINE instead of using acconfig.h.  Create
411         include/ffitarget.h instead of include/fficonfig.h.  Rename
412         MIPS_GCC to MIPS_IRIX, drop MIPS_SGI since we are in gcc's tree.
413         AC_DEFINE EH_FRAME_FLAGS.
414         * include/Makefile.am (DISTCLEANFILES): New automake macro.
415         (hack_DATA): Add ffitarget.h.
416         * include/ffi.h.in: Remove all system specific definitions.
417         Declare raw API even if it is not installed, why bother?
418         Use limits.h instead of SIZEOF_* to define ffi_type_*.  Do
419         not define EH_FRAME_FLAGS, it is in fficonfig.h now.  Include
420         ffitarget.h instead of fficonfig.h.  Remove ALIGN macro.
421         (UINT_ARG, INT_ARG): Removed, use ffi_arg and ffi_sarg instead.
422         * include/ffi_common.h (bool): Do not define.
423         (ffi_assert): Accept failed assertion.
424         (ffi_type_test): Return void and accept file/line.
425         (FFI_ASSERT): Pass stringized failed assertion.
426         (FFI_ASSERT_AT): New macro.
427         (FFI_ASSERT_VALID_TYPE): New macro.
428         (UINT8, SINT8, UINT16, SINT16, UINT32, SINT32,
429         UINT64, SINT64): Define here with gcc's __attribute__ macro
430         instead of in ffi.h
431         (FLOAT32, ALIGN): Define here instead of in ffi.h
432         * include/ffi-mips.h: Removed.  Its content moved to
433         src/mips/ffitarget.h after separating assembly and C sections.
434         * src/alpha/ffi.c, src/alpha/ffi.c, src/java_raw_api.c
435         src/prep_cif.c, src/raw_api.c, src/ia64/ffi.c,
436         src/mips/ffi.c, src/mips/n32.S, src/mips/o32.S,
437         src/mips/ffitarget.h, src/sparc/ffi.c, src/x86/ffi64.c:
438         SIZEOF_ARG -> FFI_SIZEOF_ARG.
439         * src/ia64/ffi.c: Include stdbool.h (provided by GCC 2.95+).
440         * src/debug.c (ffi_assert): Accept stringized failed assertion.
441         (ffi_type_test): Rewritten.
442         * src/prep-cif.c (initialize_aggregate, ffi_prep_cif): Call
443         FFI_ASSERT_VALID_TYPE.
444         * src/alpha/ffitarget.h, src/arm/ffitarget.h,
445         src/ia64/ffitarget.h, src/m68k/ffitarget.h,
446         src/mips/ffitarget.h, src/powerpc/ffitarget.h,
447         src/s390/ffitarget.h, src/sh/ffitarget.h,
448         src/sh64/ffitarget.h, src/sparc/ffitarget.h,
449         src/x86/ffitarget.h: New files.
450         * src/alpha/osf.S, src/arm/sysv.S, src/ia64/unix.S,
451         src/m68k/sysv.S, src/mips/n32.S, src/mips/o32.S,
452         src/powerpc/aix.S, src/powerpc/darwin.S,
453         src/powerpc/ffi_darwin.c, src/powerpc/linux64.S,
454         src/powerpc/linux64_closure.S, src/powerpc/ppc_closure.S,
455         src/powerpc/sysv.S, src/s390/sysv.S, src/sh/sysv.S,
456         src/sh64/sysv.S, src/sparc/v8.S, src/sparc/v9.S,
457         src/x86/sysv.S, src/x86/unix64.S, src/x86/win32.S:
458         include fficonfig.h
459
460 2003-10-20  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
461
462         * src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external
463         _MIPS_SIM_NABI32, _MIPS_SIM_ABI32.
464
465 2003-10-19  Andreas Tobler  <a.tobler@schweiz.ch>
466
467         * src/powerpc/ffi_darwin.c (ffi_prep_args): Declare bytes again.
468         Used when FFI_DEBUG = 1.
469
470 2003-10-14  Alan Modra  <amodra@bigpond.net.au>
471
472         * src/types.c (double, longdouble): Default POWERPC64 to 8 byte size
473         and align.
474
475 2003-10-06  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
476
477         * include/ffi_mips.h: Define FFI_MIPS_N32 for N32/N64 ABIs,
478         FFI_MIPS_O32 for O32 ABI.
479
480 2003-10-01  Andreas Tobler  <a.tobler@schweiz.ch>
481
482         * testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_64 for
483         SPARC64. Cleanup whitespaces.
484
485 2003-09-19  Andreas Tobler  <a.tobler@schweiz.ch>
486
487         * testsuite/libffi.call/closure_fn0.c: Xfail mips, arm,
488         strongarm, xscale. Cleanup whitespaces.
489         * testsuite/libffi.call/closure_fn1.c: Likewise.
490         * testsuite/libffi.call/closure_fn2.c: Likewise.
491         * testsuite/libffi.call/closure_fn3.c: Likewise.
492         * testsuite/libffi.call/cls_12byte.c: Likewise.
493         * testsuite/libffi.call/cls_16byte.c: Likewise.
494         * testsuite/libffi.call/cls_1_1byte.c: Likewise.
495         * testsuite/libffi.call/cls_20byte.c: Likewise.
496         * testsuite/libffi.call/cls_24byte.c: Likewise.
497         * testsuite/libffi.call/cls_2byte.c: Likewise.
498         * testsuite/libffi.call/cls_3_1byte.c: Likewise.
499         * testsuite/libffi.call/cls_3byte1.c: Likewise.
500         * testsuite/libffi.call/cls_3byte2.c: Likewise.
501         * testsuite/libffi.call/cls_4_1byte.c: Likewise.
502         * testsuite/libffi.call/cls_4byte.c: Likewise.
503         * testsuite/libffi.call/cls_5byte.c: Likewise.
504         * testsuite/libffi.call/cls_6byte.c: Likewise.
505         * testsuite/libffi.call/cls_7byte.c: Likewise.
506         * testsuite/libffi.call/cls_8byte.c: Likewise.
507         * testsuite/libffi.call/cls_double.c: Likewise.
508         * testsuite/libffi.call/cls_float.c: Likewise.
509         * testsuite/libffi.call/cls_uchar.c: Likewise.
510         * testsuite/libffi.call/cls_uint.c: Likewise.
511         * testsuite/libffi.call/cls_ulonglong.c: Likewise.
512         * testsuite/libffi.call/cls_ushort.c: Likewise.
513         * testsuite/libffi.call/nested_struct.c: Likewise.
514         * testsuite/libffi.call/nested_struct1.c: Likewise.
515         * testsuite/libffi.call/problem1.c: Likewise.
516         * testsuite/libffi.special/unwindtest.cc: Likewise.
517         * testsuite/libffi.call/pyobjc-tc.c: Cleanup whitespaces.
518
519 2003-09-18  David Edelsohn  <edelsohn@gnu.org>
520
521         * src/powerpc/aix.S: Cleanup whitespaces.
522         * src/powerpc/aix_closure.S: Likewise.
523
524 2003-09-18  Andreas Tobler  <a.tobler@schweiz.ch>
525
526         * src/powerpc/darwin.S: Cleanup whitespaces, comment formatting.
527         * src/powerpc/darwin_closure.S: Likewise.
528         * src/powerpc/ffi_darwin.c: Likewise.
529
530 2003-09-18  Andreas Tobler  <a.tobler@schweiz.ch>
531             David Edelsohn  <edelsohn@gnu.org>
532
533         * src/types.c (double): Add AIX and Darwin to the right TYPEDEF.
534         * src/powerpc/aix_closure.S: Remove the pointer to the outgoing
535         parameter stack.
536         * src/powerpc/darwin_closure.S: Likewise.
537         * src/powerpc/ffi_darwin.c (ffi_prep_args): Handle structures
538         according to the Darwin/AIX ABI.
539         (ffi_prep_cif_machdep): Likewise.
540         (ffi_closure_helper_DARWIN): Likewise.
541         Remove the outgoing parameter stack logic. Simplify the evaluation
542         of the different CASE types.
543         (ffi_prep_clousure): Avoid the casts on lvalues. Change the branch
544         statement in the trampoline code.
545
546 2003-09-18  Kaz Kojima  <kkojima@gcc.gnu.org>
547
548         * src/sh/ffi.c (ffi_prep_args): Take account into the alignement
549         for the register size.
550         (ffi_closure_helper_SYSV): Handle the structure return value
551         address correctly.
552         (ffi_closure_helper_SYSV): Return the appropriate type when
553         the registers are used for the structure return value.
554         * src/sh/sysv.S (ffi_closure_SYSV): Fix the stack layout for
555         the 64-bit return value.  Update copyright years.
556
557 2003-09-17  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
558
559         * testsuite/lib/libffi-dg.exp (libffi_target_compile): Search in
560         srcdir for ffi_mips.h.
561
562 2003-09-12  Alan Modra  <amodra@bigpond.net.au>
563
564         * src/prep_cif.c (initialize_aggregate): Include tail padding in
565         structure size.
566         * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Correct
567         placement of float result.
568         * testsuite/libffi.special/unwindtest.cc (closure_test_fn1): Correct
569         cast of "resp" for big-endian 64 bit machines.
570
571 2003-09-11  Alan Modra  <amodra@bigpond.net.au>
572
573         * src/types.c (double, longdouble): Merge identical SH and ARM
574         typedefs, and add POWERPC64.
575         * src/powerpc/ffi.c (ffi_prep_args64): Correct next_arg calc for
576         struct split over gpr and rest.
577         (ffi_prep_cif_machdep): Correct intarg_count for structures.
578         * src/powerpc/linux64.S (ffi_call_LINUX64): Fix gpr offsets.
579
580 2003-09-09  Andreas Tobler  <a.tobler@schweiz.ch>
581
582         * src/powerpc/ffi.c (ffi_closure_helper_SYSV) Handle struct
583         passing correctly.
584
585 2003-09-09  Alan Modra  <amodra@bigpond.net.au>
586
587         * configure: Regenerate.
588
589 2003-09-04  Andreas Tobler  <a.tobler@schweiz.ch>
590
591         * Makefile.am: Remove build rules for ffitest.
592         * Makefile.in: Rebuilt.
593
594 2003-09-04  Andreas Tobler  <a.tobler@schweiz.ch>
595
596         * src/java_raw_api.c: Include <stdlib.h> to fix compiler warning
597         about implicit declaration of abort().
598
599 2003-09-04  Andreas Tobler  <a.tobler@schweiz.ch>
600
601         * Makefile.am: Add dejagnu test framework. Fixes PR other/11411.
602         * Makefile.in: Rebuilt.
603         * configure.in: Add dejagnu test framework.
604         * configure: Rebuilt.
605
606         * testsuite/Makefile.am: New file.
607         * testsuite/Makefile.in: Built
608         * testsuite/lib/libffi-dg.exp: New file.
609         * testsuite/config/default.exp: Likewise.
610         * testsuite/libffi.call/call.exp: Likewise.
611         * testsuite/libffi.call/ffitest.h: Likewise.
612         * testsuite/libffi.call/closure_fn0.c: Likewise.
613         * testsuite/libffi.call/closure_fn1.c: Likewise.
614         * testsuite/libffi.call/closure_fn2.c: Likewise.
615         * testsuite/libffi.call/closure_fn3.c: Likewise.
616         * testsuite/libffi.call/cls_1_1byte.c: Likewise.
617         * testsuite/libffi.call/cls_3_1byte.c: Likewise.
618         * testsuite/libffi.call/cls_4_1byte.c: Likewise.
619         * testsuite/libffi.call/cls_2byte.c: Likewise.
620         * testsuite/libffi.call/cls_3byte1.c: Likewise.
621         * testsuite/libffi.call/cls_3byte2.c: Likewise.
622         * testsuite/libffi.call/cls_4byte.c: Likewise.
623         * testsuite/libffi.call/cls_5byte.c: Likewise.
624         * testsuite/libffi.call/cls_6byte.c: Likewise.
625         * testsuite/libffi.call/cls_7byte.c: Likewise.
626         * testsuite/libffi.call/cls_8byte.c: Likewise.
627         * testsuite/libffi.call/cls_12byte.c: Likewise.
628         * testsuite/libffi.call/cls_16byte.c: Likewise.
629         * testsuite/libffi.call/cls_20byte.c: Likewise.
630         * testsuite/libffi.call/cls_24byte.c: Likewise.
631         * testsuite/libffi.call/cls_double.c: Likewise.
632         * testsuite/libffi.call/cls_float.c: Likewise.
633         * testsuite/libffi.call/cls_uchar.c: Likewise.
634         * testsuite/libffi.call/cls_uint.c: Likewise.
635         * testsuite/libffi.call/cls_ulonglong.c: Likewise.
636         * testsuite/libffi.call/cls_ushort.c: Likewise.
637         * testsuite/libffi.call/float.c: Likewise.
638         * testsuite/libffi.call/float1.c: Likewise.
639         * testsuite/libffi.call/float2.c: Likewise.
640         * testsuite/libffi.call/many.c: Likewise.
641         * testsuite/libffi.call/many_win32.c: Likewise.
642         * testsuite/libffi.call/nested_struct.c: Likewise.
643         * testsuite/libffi.call/nested_struct1.c: Likewise.
644         * testsuite/libffi.call/pyobjc-tc.c: Likewise.
645         * testsuite/libffi.call/problem1.c: Likewise.
646         * testsuite/libffi.call/promotion.c: Likewise.
647         * testsuite/libffi.call/return_ll.c: Likewise.
648         * testsuite/libffi.call/return_sc.c: Likewise.
649         * testsuite/libffi.call/return_uc.c: Likewise.
650         * testsuite/libffi.call/strlen.c: Likewise.
651         * testsuite/libffi.call/strlen_win32.c: Likewise.
652         * testsuite/libffi.call/struct1.c: Likewise.
653         * testsuite/libffi.call/struct2.c: Likewise.
654         * testsuite/libffi.call/struct3.c: Likewise.
655         * testsuite/libffi.call/struct4.c: Likewise.
656         * testsuite/libffi.call/struct5.c: Likewise.
657         * testsuite/libffi.call/struct6.c: Likewise.
658         * testsuite/libffi.call/struct7.c: Likewise.
659         * testsuite/libffi.call/struct8.c: Likewise.
660         * testsuite/libffi.call/struct9.c: Likewise.
661         * testsuite/libffi.special/special.exp: New file.
662         * testsuite/libffi.special/ffitestcxx.h: Likewise.
663         * testsuite/libffi.special/unwindtest.cc: Likewise.
664
665
666 2003-08-13  Kaz Kojima  <kkojima@gcc.gnu.org>
667
668         * src/sh/ffi.c (OFS_INT16): Set 0 for little endian case.  Update
669         copyright years.
670
671 2003-08-02  Alan Modra  <amodra@bigpond.net.au>
672
673         * src/powerpc/ffi.c (ffi_prep_args64): Modify for changed gcc
674         structure passing.
675         (ffi_closure_helper_LINUX64): Likewise.
676         * src/powerpc/linux64.S: Remove code writing to parm save area.
677         * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Use return
678         address in lr from ffi_closure_helper_LINUX64 call to calculate
679         table address.  Optimize function tail.
680
681 2003-07-28  Andreas Tobler  <a.tobler@schweiz.ch>
682
683         * src/sparc/ffi.c: Handle all floating point registers.
684         * src/sparc/v9.S: Likewise. Fixes second part of PR target/11410.
685
686 2003-07-11  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
687
688         * README: Note that libffi is not part of GCC.  Update the project
689         URL and status.
690
691 2003-06-19  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
692
693         * src/powerpc/ppc_closure.S: Include ffi.h.
694
695 2003-06-13  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
696
697         * src/x86/sysv.S: Avoid gas-only .uleb128/.sleb128 directives.
698         Use C style comments.
699
700 2003-06-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
701
702         * Makefile.am: Add SHmedia support.  Fix a typo of SH support.
703         * Makefile.in: Regenerate.
704         * configure.in (sh64-*-linux*, sh5*-*-linux*): Add target.
705         * configure: Regenerate.
706         * include/ffi.h.in: Add SHmedia support.
707         * src/sh64/ffi.c: New file.
708         * src/sh64/sysv.S: New file.
709
710 2003-05-16  Jakub Jelinek  <jakub@redhat.com>
711
712         * configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section
713         should be read-only.
714         * configure: Rebuilt.
715         * fficonfig.h.in: Rebuilt.
716         * include/ffi.h.in (EH_FRAME_FLAGS): Define.
717         * src/alpha/osf.S: Use EH_FRAME_FLAGS.
718         * src/powerpc/linux64.S: Likewise.
719         * src/powerpc/linux64_closure.S: Likewise.  Include ffi.h.
720         * src/powerpc/sysv.S: Use EH_FRAME_FLAGS.  Use pcrel encoding
721         if -fpic/-fPIC/-mrelocatable.
722         * src/powerpc/powerpc_closure.S: Likewise.
723         * src/sparc/v8.S: If HAVE_RO_EH_FRAME is defined, don't include
724         #write in .eh_frame flags.
725         * src/sparc/v9.S: Likewise.
726         * src/x86/unix64.S: Use EH_FRAME_FLAGS.
727         * src/x86/sysv.S: Likewise.  Use pcrel encoding if -fpic/-fPIC.
728         * src/s390/sysv.S: Use EH_FRAME_FLAGS.  Include ffi.h.
729
730 2003-05-07  Jeff Sturm  <jsturm@one-point.com>
731
732         Fixes PR bootstrap/10656
733         * configure.in (HAVE_AS_REGISTER_PSEUDO_OP): Test assembler
734         support for .register pseudo-op.
735         * src/sparc/v8.S: Use it.
736         * fficonfig.h.in: Rebuilt.
737         * configure: Rebuilt.
738
739 2003-04-18  Jakub Jelinek  <jakub@redhat.com>
740
741         * include/ffi.h.in (POWERPC64): Define if 64-bit.
742         (enum ffi_abi): Add FFI_LINUX64 on POWERPC.
743         Make it the default on POWERPC64.
744         (FFI_TRAMPOLINE_SIZE): Define to 24 on POWERPC64.
745         * configure.in: Change powerpc-*-linux* into powerpc*-*-linux*.
746         * configure: Rebuilt.
747         * src/powerpc/ffi.c (hidden): Define.
748         (ffi_prep_args_SYSV): Renamed from
749         ffi_prep_args.  Cast pointers to unsigned long to shut up warnings.
750         (NUM_GPR_ARG_REGISTERS64, NUM_FPR_ARG_REGISTERS64,
751         ASM_NEEDS_REGISTERS64): New.
752         (ffi_prep_args64): New function.
753         (ffi_prep_cif_machdep): Handle FFI_LINUX64 ABI.
754         (ffi_call): Likewise.
755         (ffi_prep_closure): Likewise.
756         (flush_icache): Surround by #ifndef POWERPC64.
757         (ffi_dblfl): New union type.
758         (ffi_closure_helper_SYSV): Use it to avoid aliasing problems.
759         (ffi_closure_helper_LINUX64): New function.
760         * src/powerpc/ppc_closure.S: Surround whole file by #ifndef
761         __powerpc64__.
762         * src/powerpc/sysv.S: Likewise.
763         (ffi_call_SYSV): Rename ffi_prep_args to ffi_prep_args_SYSV.
764         * src/powerpc/linux64.S: New file.
765         * src/powerpc/linux64_closure.S: New file.
766         * Makefile.am (EXTRA_DIST): Add src/powerpc/linux64.S and
767         src/powerpc/linux64_closure.S.
768         (TARGET_SRC_POWERPC): Likewise.
769
770         * src/ffitest.c (closure_test_fn, closure_test_fn1, closure_test_fn2,
771         closure_test_fn3): Fix result printing on big-endian 64-bit
772         machines.
773         (main): Print tst2_arg instead of uninitialized tst2_result.
774
775         * src/ffitest.c (main): Hide what closure pointer really points to
776         from the compiler.
777
778 2003-04-16  Richard Earnshaw  <rearnsha@arm.com>
779
780         * configure.in (arm-*-netbsdelf*): Add configuration.
781         (configure): Regenerated.
782
783 2003-04-04  Loren J. Rittle  <ljrittle@acm.org>
784
785         * include/Makefile.in: Regenerate.
786
787 2003-03-21  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
788
789         * libffi/include/ffi.h.in: Define X86 instead of X86_64 in 32
790         bit mode.
791         * libffi/src/x86/ffi.c (ffi_closure_SYSV, ffi_closure_raw_SYSV):
792         Receive closure pointer through parameter, read args using
793         __builtin_dwarf_cfa.
794         (FFI_INIT_TRAMPOLINE): Send closure reference through eax.
795
796 2003-03-12  Andreas Schwab  <schwab@suse.de>
797
798         * configure.in: Avoid trailing /. in toolexeclibdir.
799         * configure: Rebuilt.
800
801 2003-03-03  Andreas Tobler <a.tobler@schweiz.ch>
802
803         * src/powerpc/darwin_closure.S: Recode to fit dynamic libraries.
804
805 2003-02-06  Andreas Tobler <a.tobler@schweiz.ch>
806
807         * libffi/src/powerpc/darwin_closure.S:
808         Fix alignement bug, allocate 8 bytes for the result.
809         * libffi/src/powerpc/aix_closure.S:
810         Likewise.
811         * libffi/src/powerpc/ffi_darwin.c:
812         Update stackframe description for aix/darwin_closure.S.
813
814 2003-02-06  Jakub Jelinek  <jakub@redhat.com>
815
816         * src/s390/ffi.c (ffi_closure_helper_SYSV): Add hidden visibility
817         attribute.
818
819 2003-01-31  Christian Cornelssen  <ccorn@cs.tu-berlin.de>,
820             Andreas Schwab  <schwab@suse.de>
821
822         * configure.in: Adjust command to source config-ml.in to account
823         for changes to the libffi_basedir definition.
824         (libffi_basedir): Remove ${srcdir} from value and include trailing
825         slash if nonempty.
826
827         * configure: Regenerate.
828
829 2003-01-29  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
830
831         * src/powerpc/ppc_closure.S: Recode to fit shared libs.
832
833 2003-01-28  Andrew Haley  <aph@redhat.com>
834
835         * include/ffi.h.in: Enable FFI_CLOSURES for x86_64.
836         * src/x86/ffi64.c (ffi_prep_closure): New.
837         (ffi_closure_UNIX64_inner): New.
838         * src/x86/unix64.S (ffi_closure_UNIX64): New.
839
840 2003-01-27  Alexandre Oliva  <aoliva@redhat.com>
841
842         * configure.in (toolexecdir, toolexeclibdir): Set and AC_SUBST.
843         Remove USE_LIBDIR conditional.
844         * Makefile.am (toolexecdir, toolexeclibdir): Don't override.
845         * Makefile.in, configure: Rebuilt.
846
847 2003-01027  David Edelsohn  <edelsohn@gnu.org>
848
849         * Makefile.am (TARGET_SRC_POWERPC_AIX): Fix typo.
850         * Makefile.in: Regenerate.
851
852 2003-01-22  Andrew Haley  <aph@redhat.com>
853
854         * src/powerpc/darwin.S (_ffi_call_AIX): Add Augmentation size to
855         unwind info.
856
857 2003-01-21  Andreas Tobler  <a.tobler@schweiz.ch>
858
859         * src/powerpc/darwin.S: Add unwind info.
860         * src/powerpc/darwin_closure.S: Likewise.
861
862 2003-01-14  Andrew Haley  <aph@redhat.com>
863
864         * src/x86/ffi64.c (ffi_prep_args): Check for void retval.
865         (ffi_prep_cif_machdep): Likewise.
866         * src/x86/unix64.S: Add unwind info.
867
868 2003-01-14  Andreas Jaeger  <aj@suse.de>
869
870         * src/ffitest.c (main): Only use ffi_closures if those are
871         supported.
872
873 2003-01-13 Andreas Tobler <a.tobler@schweiz.ch>
874
875         * libffi/src/ffitest.c
876          add closure testcases
877
878 2003-01-13 Kevin B. Hendricks <khendricks@ivey.uwo.ca>
879
880         * libffi/src/powerpc/ffi.c
881          fix alignment bug for float (4 byte aligned iso 8 byte)
882
883 2003-01-09  Geoffrey Keating  <geoffk@apple.com>
884
885         * src/powerpc/ffi_darwin.c: Remove RCS version string.
886         * src/powerpc/darwin.S: Remove RCS version string.
887
888 2003-01-03  Jeff Sturm  <jsturm@one-point.com>
889
890         * include/ffi.h.in: Add closure defines for SPARC, SPARC64.
891         * src/ffitest.c (main): Use static storage for closure.
892         * src/sparc/ffi.c (ffi_prep_closure, ffi_closure_sparc_inner): New.
893         * src/sparc/v8.S (ffi_closure_v8): New.
894         * src/sparc/v9.S (ffi_closure_v9): New.
895
896 2002-11-10  Ranjit Mathew <rmathew@hotmail.com>
897
898         * include/ffi.h.in: Added FFI_STDCALL ffi_type
899           enumeration for X86_WIN32.
900         * src/x86/win32.S: Added ffi_call_STDCALL function
901           definition.
902         * src/x86/ffi.c (ffi_call/ffi_raw_call): Added
903           switch cases for recognising FFI_STDCALL and
904           calling ffi_call_STDCALL if target is X86_WIN32.
905         * src/ffitest.c (my_stdcall_strlen/stdcall_many):
906           stdcall versions of the "my_strlen" and "many"
907           test functions (for X86_WIN32).
908           Added test cases to test stdcall invocation using
909           these functions.
910
911 2002-12-02  Kaz Kojima  <kkojima@gcc.gnu.org>
912
913         * src/sh/sysv.S: Add DWARF2 unwind info.
914
915 2002-11-27  Ulrich Weigand  <uweigand@de.ibm.com>
916
917         * src/s390/sysv.S (.eh_frame section): Make section read-only.
918
919 2002-11-26  Jim Wilson  <wilson@redhat.com>
920
921         * src/types.c (FFI_TYPE_POINTER): Has size 8 on IA64.
922
923 2002-11-23  H.J. Lu <hjl@gnu.org>
924
925         * acinclude.m4: Add dummy AM_PROG_LIBTOOL.
926         Include ../config/accross.m4.
927         * aclocal.m4; Rebuild.
928         * configure: Likewise.
929
930 2002-11-15  Ulrich Weigand  <uweigand@de.ibm.com>
931
932         * src/s390/sysv.S (.eh_frame section): Adapt to pcrel FDE encoding.
933
934 2002-11-11  DJ Delorie  <dj@redhat.com>
935
936         * configure.in: Look for common files in the right place.
937
938 2002-10-08  Ulrich Weigand  <uweigand@de.ibm.com>
939
940         * src/java_raw_api.c (ffi_java_raw_to_ptrarray): Interpret
941         raw data as _Jv_word values, not ffi_raw.
942         (ffi_java_ptrarray_to_raw): Likewise.
943         (ffi_java_rvalue_to_raw): New function.
944         (ffi_java_raw_call): Call it.
945         (ffi_java_raw_to_rvalue): New function.
946         (ffi_java_translate_args): Call it.
947         * src/ffitest.c (closure_test_fn): Interpret return value
948         as ffi_arg, not int.
949         * src/s390/ffi.c (ffi_prep_cif_machdep): Add missing
950         FFI_TYPE_POINTER case.
951         (ffi_closure_helper_SYSV): Likewise.  Also, assume return
952         values extended to word size.
953
954 2002-10-02  Andreas Jaeger  <aj@suse.de>
955
956         * src/x86/ffi64.c (ffi_prep_cif_machdep): Remove debug output.
957
958 2002-10-01  Bo Thorsen  <bo@smetana.suse.de>
959
960         * include/ffi.h.in: Fix i386 win32 compilation.
961
962 2002-09-30  Ulrich Weigand  <uweigand@de.ibm.com>
963
964         * configure.in: Add s390x-*-linux-* target.
965         * configure: Regenerate.
966         * include/ffi.h.in: Define S390X for s390x targets.
967         (FFI_CLOSURES): Define for s390/s390x.
968         (FFI_TRAMPOLINE_SIZE): Likewise.
969         (FFI_NATIVE_RAW_API): Likewise.
970         * src/prep_cif.c (ffi_prep_cif): Do not compute stack space for s390.
971         * src/types.c (FFI_TYPE_POINTER): Use 8-byte pointers on s390x.
972         * src/s390/ffi.c: Major rework of existing code.  Add support for
973         s390x targets.  Add closure support.
974         * src/s390/sysv.S: Likewise.
975
976 2002-09-29  Richard Earnshaw  <rearnsha@arm.com>
977
978         * src/arm/sysv.S: Fix typo.
979
980 2002-09-28  Richard Earnshaw  <rearnsha@arm.com>
981
982         * src/arm/sysv.S: If we don't have machine/asm.h and the pre-processor
983         has defined __USER_LABEL_PREFIX__, then use it in CNAME.
984         (ffi_call_SYSV): Handle soft-float.
985
986 2002-09-27  Bo Thorsen  <bo@suse.de>
987
988         * include/ffi.h.in: Fix multilib x86-64 support.
989
990 2002-09-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
991
992         * Makefile.am (all-multi): Fix multilib parallel build.
993
994 2002-07-19  Kaz Kojima  <kkojima@gcc.gnu.org>
995
996         * configure.in (sh[34]*-*-linux*): Add brackets.
997         * configure: Regenerate.
998
999 2002-07-18  Kaz Kojima  <kkojima@gcc.gnu.org>
1000
1001         * Makefile.am: Add SH support.
1002         * Makefile.in: Regenerate.
1003         * configure.in (sh-*-linux*, sh[34]*-*-linux*): Add target.
1004         * configure: Regenerate.
1005         * include/ffi.h.in: Add SH support.
1006         * src/sh/ffi.c: New file.
1007         * src/sh/sysv.S: New file.
1008         * src/types.c: Add SH support.
1009
1010 2002-07-16  Bo Thorsen  <bo@suse.de>
1011
1012         * src/x86/ffi64.c: New file that adds x86-64 support.
1013         * src/x86/unix64.S: New file that handles argument setup for
1014         x86-64.
1015         * src/x86/sysv.S: Don't use this on x86-64.
1016         * src/x86/ffi.c: Don't use this on x86-64.
1017         Remove unused vars.
1018         * src/prep_cif.c (ffi_prep_cif): Don't do stack size calculation
1019         for x86-64.
1020         * src/ffitest.c (struct6): New test that tests a special case in
1021         the x86-64 ABI.
1022         (struct7): Likewise.
1023         (struct8): Likewise.
1024         (struct9): Likewise.
1025         (closure_test_fn): Silence warning about this when it's not used.
1026         (main): Add the new tests.
1027         (main): Fix a couple of wrong casts and silence some compiler warnings.
1028         * include/ffi.h.in: Add x86-64 ABI definition.
1029         * fficonfig.h.in: Regenerate.
1030         * Makefile.am: Add x86-64 support.
1031         * configure.in: Likewise.
1032         * Makefile.in: Regenerate.
1033         * configure: Likewise.
1034
1035 2002-06-24  Bo Thorsen  <bo@suse.de>
1036
1037         * src/types.c: Merge settings for similar architectures.
1038         Add x86-64 sizes and alignments.
1039
1040 2002-06-23  Bo Thorsen  <bo@suse.de>
1041
1042         * src/arm/ffi.c (ffi_prep_args): Remove unused vars.
1043         * src/sparc/ffi.c (ffi_prep_args_v8): Likewise.
1044         * src/mips/ffi.c (ffi_prep_args): Likewise.
1045         * src/m68k/ffi.c (ffi_prep_args): Likewise.
1046
1047 2002-07-18  H.J. Lu  (hjl@gnu.org)
1048
1049         * Makefile.am (TARGET_SRC_MIPS_LINUX): New.
1050         (libffi_la_SOURCES): Support MIPS_LINUX.
1051         (libffi_convenience_la_SOURCES): Likewise.
1052         * Makefile.in: Regenerated.
1053
1054         * configure.in (mips64*-*): Skip.
1055         (mips*-*-linux*): New.
1056         * configure: Regenerated.
1057
1058         * src/mips/ffi.c: Include <sgidefs.h>.
1059
1060 2002-06-06  Ulrich Weigand  <uweigand@de.ibm.com>
1061
1062         * src/s390/sysv.S: Save/restore %r6.  Add DWARF-2 unwind info.
1063
1064 2002-05-27  Roger Sayle  <roger@eyesopen.com>
1065
1066         * src/x86/ffi.c (ffi_prep_args): Remove reference to avn.
1067
1068 2002-05-27  Bo Thorsen  <bo@suse.de>
1069
1070         * src/x86/ffi.c (ffi_prep_args): Remove unused variable and
1071         fix formatting.
1072
1073 2002-05-13  Andreas Tobler  <a.tobler@schweiz.ch>
1074
1075         * src/powerpc/ffi_darwin.c (ffi_prep_closure): Declare fd at
1076         beginning of function (for older apple cc).
1077
1078 2002-05-08  Alexandre Oliva  <aoliva@redhat.com>
1079
1080         * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
1081         script entry, and set LD to it when configuring multilibs.
1082         * configure: Rebuilt.
1083
1084 2002-05-05  Jason Thorpe  <thorpej@wasabisystems.com>
1085
1086         * configure.in (sparc64-*-netbsd*): Add target.
1087         (sparc-*-netbsdelf*): Likewise.
1088         * configure: Regenerate.
1089
1090 2002-04-28  David S. Miller  <davem@redhat.com>
1091
1092         * configure.in, configure: Fix SPARC test in previous change.
1093
1094 2002-04-29  Gerhard Tonn  <GerhardTonn@swol.de>
1095
1096         * Makefile.am: Add Linux for S/390 support.
1097         * Makefile.in: Regenerate.
1098         * configure.in: Add Linux for S/390 support.
1099         * configure: Regenerate.
1100         * include/ffi.h.in: Add Linux for S/390 support.
1101         * src/s390/ffi.c: New file from libffi CVS tree.
1102         * src/s390/sysv.S: New file from libffi CVS tree.
1103
1104 2002-04-28  Jakub Jelinek  <jakub@redhat.com>
1105
1106         * configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working
1107         %r_disp32().
1108         * src/sparc/v8.S: Use it.
1109         * src/sparc/v9.S: Likewise.
1110         * fficonfig.h.in: Rebuilt.
1111         * configure: Rebuilt.
1112
1113 2002-04-08  Hans Boehm  <Hans_Boehm@hp.com>
1114
1115         * src/java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE
1116         correctly.
1117         * src/ia64/unix.S: Add unwind information. Fix comments.
1118         Save sp in a way that's compatible with unwind info.
1119         (ffi_call_unix): Correctly restore sp in all cases.
1120         * src/ia64/ffi.c: Add, fix comments.
1121
1122 2002-04-08  Jakub Jelinek  <jakub@redhat.com>
1123
1124         * src/sparc/v8.S: Make .eh_frame dependent on target word size.
1125
1126 2002-04-06  Jason Thorpe  <thorpej@wasabisystems.com>
1127
1128         * configure.in (alpha*-*-netbsd*): Add target.
1129         * configure: Regenerate.
1130
1131 2002-04-04  Jeff Sturm  <jsturm@one-point.com>
1132
1133         * src/sparc/v8.S: Add unwind info.
1134         * src/sparc/v9.S: Likewise.
1135
1136 2002-03-30  Krister Walfridsson  <cato@df.lth.se>
1137
1138         * configure.in: Enable i*86-*-netbsdelf*.
1139         * configure: Rebuilt.
1140
1141 2002-03-29  David Billinghurst <David.Billinghurst@riotinto.com>
1142
1143         PR other/2620
1144         * src/mips/n32.s: Delete
1145         * src/mips/o32.s: Delete
1146
1147 2002-03-21  Loren J. Rittle  <ljrittle@acm.org>
1148
1149         * configure.in: Enable alpha*-*-freebsd*.
1150         * configure: Rebuilt.
1151
1152 2002-03-17  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
1153
1154         * Makefile.am: libfficonvenience -> libffi_convenience.
1155         * Makefile.in: Rebuilt.
1156
1157         * Makefile.am: Define ffitest_OBJECTS.
1158         * Makefile.in: Rebuilt.
1159
1160 2002-03-07  Andreas Tobler  <toa@pop.agri.ch>
1161             David Edelsohn  <edelsohn@gnu.org>
1162
1163         * Makefile.am (EXTRA_DIST): Add Darwin and AIX closure files.
1164         (TARGET_SRC_POWERPC_AIX): Add aix_closure.S.
1165         (TARGET_SRC_POWERPC_DARWIN): Add darwin_closure.S.
1166         * Makefile.in: Regenerate.
1167         * include/ffi.h.in: Add AIX and Darwin closure definitions.
1168         * src/powerpc/ffi_darwin.c (ffi_prep_closure): New function.
1169         (flush_icache, flush_range): New functions.
1170         (ffi_closure_helper_DARWIN): New function.
1171         * src/powerpc/aix_closure.S: New file.
1172         * src/powerpc/darwin_closure.S: New file.
1173
1174 2002-02-24  Jeff Sturm  <jsturm@one-point.com>
1175
1176         * include/ffi.h.in: Add typedef for ffi_arg.
1177         * src/ffitest.c (main): Declare rint with ffi_arg.
1178
1179 2002-02-21  Andreas Tobler  <toa@pop.agri.ch>
1180
1181         * src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate
1182         number of GPRs for floating-point arguments.
1183
1184 2002-01-31  Anthony Green  <green@redhat.com>
1185
1186         * configure: Rebuilt.
1187         * configure.in: Replace CHECK_SIZEOF and endian tests with
1188         cross-compiler friendly macros.
1189         * aclocal.m4 (AC_COMPILE_CHECK_SIZEOF, AC_C_BIGENDIAN_CROSS): New
1190         macros.
1191
1192 2002-01-18  David Edelsohn  <edelsohn@gnu.org>
1193
1194         * src/powerpc/darwin.S (_ffi_call_AIX): New.
1195         * src/powerpc/aix.S (ffi_call_DARWIN): New.
1196
1197 2002-01-17  David Edelsohn  <edelsohn@gnu.org>
1198
1199         * Makefile.am (EXTRA_DIST): Add Darwin and AIX files.
1200         (TARGET_SRC_POWERPC_AIX): New.
1201         (POWERPC_AIX): New stanza.
1202         * Makefile.in: Regenerate.
1203         * configure.in: Add AIX case.
1204         * configure: Regenerate.
1205         * include/ffi.h.in (ffi_abi): Add FFI_AIX.
1206         * src/powerpc/ffi_darwin.c (ffi_status): Use "long" to scale frame
1207         size.  Fix "long double" support.
1208         (ffi_call): Add FFI_AIX case.
1209         * src/powerpc/aix.S: New.
1210
1211 2001-10-09  John Hornkvist  <john@toastedmarshmallow.com>
1212
1213         Implement Darwin PowerPC ABI.
1214         * configure.in: Handle powerpc-*-darwin*.
1215         * Makefile.am: Set source files for POWERPC_DARWIN.
1216         * configure: Rebuilt.
1217         * Makefile.in: Rebuilt.
1218         * include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for
1219         POWERPC_DARWIN.
1220         * src/powerpc/darwin.S: New file.
1221         * src/powerpc/ffi_darwin.c: New file.
1222
1223 2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
1224
1225         * src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
1226
1227 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1228
1229         * src/x86/sysv.S: Avoid gas-only .balign directive.
1230         Use C style comments.
1231
1232 2001-07-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1233
1234         * src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
1235         Fixes PR bootstrap/3563.
1236
1237 2001-06-26  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1238
1239         * src/alpha/osf.S (ffi_closure_osf): Use .rdata for ECOFF.
1240
1241 2001-06-25  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1242
1243         * configure.in: Recognize sparc*-sun-* host.
1244         * configure: Regenerate.
1245
1246 2001-06-06  Andrew Haley  <aph@redhat.com>
1247
1248         * src/alpha/osf.S (__FRAME_BEGIN__): Conditionalize for ELF.
1249
1250 2001-06-03  Andrew Haley  <aph@redhat.com>
1251
1252         * src/alpha/osf.S: Add unwind info.
1253         * src/powerpc/sysv.S: Add unwind info.
1254         * src/powerpc/ppc_closure.S: Likewise.
1255
1256 2000-05-31  Jeff Sturm  <jsturm@one-point.com>
1257
1258         * configure.in: Fix AC_ARG_ENABLE usage.
1259         * configure: Rebuilt.
1260
1261 2001-05-06  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
1262
1263         * configure.in: Remove warning about beta code.
1264         * configure: Rebuilt.
1265
1266 2001-04-25  Hans Boehm <Hans_Boehm@hp.com>
1267
1268         * src/ia64/unix.S: Restore stack pointer when returning from
1269         ffi_closure_UNIX.
1270         * src/ia64/ffi.c: Fix typo in comment.
1271
1272 2001-04-18  Jim Wilson  <wilson@redhat.com>
1273
1274         * src/ia64/unix.S: Delete unnecessary increment and decrement of loc2
1275         to eliminate RAW DV.
1276
1277 2001-04-12  Bryce McKinlay  <bryce@albatross.co.nz>
1278
1279         * Makefile.am: Make a libtool convenience library.
1280         * Makefile.in: Rebuilt.
1281
1282 2001-03-29  Bryce McKinlay  <bryce@albatross.co.nz>
1283
1284         * configure.in: Use different syntax for subdirectory creation.
1285         * configure: Rebuilt.
1286
1287 2001-03-27  Jon Beniston  <jon@beniston.com>
1288
1289         * configure.in: Added X86_WIN32 target (Win32, CygWin, MingW).
1290         * configure: Rebuilt.
1291         * Makefile.am: Added X86_WIN32 target support.
1292         * Makefile.in: Rebuilt.
1293
1294         * include/ffi.h.in: Added X86_WIN32 target support.
1295
1296         * src/ffitest.c: Doesn't run structure tests for X86_WIN32 targets.
1297         * src/types.c: Added X86_WIN32 target support.
1298
1299         * src/x86/win32.S: New file. Based on sysv.S, but with EH
1300         stuff removed and made to work with CygWin's gas.
1301
1302 2001-03-26  Bryce McKinlay  <bryce@albatross.co.nz>
1303
1304         * configure.in: Make target subdirectory in build dir.
1305         * Makefile.am: Override suffix based rules to specify correct output
1306         subdirectory.
1307         * Makefile.in: Rebuilt.
1308         * configure: Rebuilt.
1309
1310 2001-03-23  Kevin B Hendricks  <khendricks@ivey.uwo.ca>
1311
1312         * src/powerpc/ppc_closure.S: New file.
1313         * src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug
1314         involving long long and register pairs.
1315         (ffi_prep_closure): New function.
1316         (flush_icache): Likewise.
1317         (ffi_closure_helper_SYSV): Likewise.
1318         * include/ffi.h.in (FFI_CLOSURES): Define on PPC.
1319         (FFI_TRAMPOLINE_SIZE): Likewise.
1320         (FFI_NATIVE_RAW_API): Likewise.
1321         * Makefile.in: Rebuilt.
1322         * Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S.
1323         (TARGET_SRC_POWERPC): Likewise.
1324
1325 2001-03-19  Tom Tromey  <tromey@redhat.com>
1326
1327         * Makefile.in: Rebuilt.
1328         * Makefile.am (ffitest_LDFLAGS): New macro.
1329
1330 2001-03-02  Nick Clifton  <nickc@redhat.com>
1331
1332         * include/ffi.h.in: Remove RCS ident string.
1333         * include/ffi_mips.h: Remove RCS ident string.
1334         * src/debug.c: Remove RCS ident string.
1335         * src/ffitest.c: Remove RCS ident string.
1336         * src/prep_cif.c: Remove RCS ident string.
1337         * src/types.c: Remove RCS ident string.
1338         * src/alpha/ffi.c: Remove RCS ident string.
1339         * src/alpha/osf.S: Remove RCS ident string.
1340         * src/arm/ffi.c: Remove RCS ident string.
1341         * src/arm/sysv.S: Remove RCS ident string.
1342         * src/mips/ffi.c: Remove RCS ident string.
1343         * src/mips/n32.S: Remove RCS ident string.
1344         * src/mips/o32.S: Remove RCS ident string.
1345         * src/sparc/ffi.c: Remove RCS ident string.
1346         * src/sparc/v8.S: Remove RCS ident string.
1347         * src/sparc/v9.S: Remove RCS ident string.
1348         * src/x86/ffi.c: Remove RCS ident string.
1349         * src/x86/sysv.S: Remove RCS ident string.
1350
1351 2001-02-08  Joseph S. Myers  <jsm28@cam.ac.uk>
1352
1353         * include/ffi.h.in: Change sourceware.cygnus.com references to
1354         gcc.gnu.org.
1355
1356 2000-12-09  Richard Henderson  <rth@redhat.com>
1357
1358         * src/alpha/ffi.c (ffi_call): Simplify struct return test.
1359         (ffi_closure_osf_inner): Index rather than increment avalue
1360         and arg_types.  Give ffi_closure_osf the raw return value type.
1361         * src/alpha/osf.S (ffi_closure_osf): Handle return value type
1362         promotion.
1363
1364 2000-12-07  Richard Henderson  <rth@redhat.com>
1365
1366         * src/raw_api.c (ffi_translate_args): Fix typo.
1367         (ffi_prep_closure): Likewise.
1368
1369         * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
1370         FFI_TRAMPOLINE_SIZE.
1371         * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
1372         cif->bytes for new ffi_call_osf implementation.
1373         (ffi_prep_args): Absorb into ...
1374         (ffi_call): ... here.  Do all stack allocation here and
1375         avoid a callback function.
1376         (ffi_prep_closure, ffi_closure_osf_inner): New.
1377         * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
1378         (ffi_closure_osf): New.
1379
1380 2000-09-10  Alexandre Oliva  <aoliva@redhat.com>
1381
1382         * config.guess, config.sub, install-sh: Removed.
1383         * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
1384         * Makefile.in: Rebuilt.
1385
1386         * acinclude.m4: Include libtool macros from the top level.
1387         * aclocal.m4, configure: Rebuilt.
1388
1389 2000-08-22  Alexandre Oliva  <aoliva@redhat.com>
1390
1391         * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
1392         * configure: Rebuilt.
1393
1394 2000-05-11  Scott Bambrough  <scottb@netwinder.org>
1395
1396         * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to
1397         memory correctly.  Use conditional instructions, not branches where
1398         possible.
1399
1400 2000-05-04  Tom Tromey  <tromey@cygnus.com>
1401
1402         * configure: Rebuilt.
1403         * configure.in: Match `arm*-*-linux-*'.
1404         From Chris Dornan <cdornan@arm.com>.
1405
1406 2000-04-28  Jakub Jelinek  <jakub@redhat.com>
1407
1408         * Makefile.am (SUBDIRS): Define.
1409         (AM_MAKEFLAGS): Likewise.
1410         (Multilib support.): Add section.
1411         * Makefile.in: Rebuilt.
1412         * ltconfig (extra_compiler_flags, extra_compiler_flags_value):
1413         New variables. Set for gcc using -print-multi-lib. Export them
1414         to libtool.
1415         (sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
1416         * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
1417         for -shared links.
1418         (extra_compiler_flags_value, extra_compiler_flags): Check these
1419         for extra compiler options which need to be passed down in
1420         compiler_flags.
1421
1422 2000-04-16  Anthony Green  <green@redhat.com>
1423
1424         * configure: Rebuilt.
1425         * configure.in: Change i*86-pc-linux* to i*86-*-linux*.
1426
1427 2000-04-14  Jakub Jelinek  <jakub@redhat.com>
1428
1429         * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
1430         Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
1431         * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
1432         Replace all void * sizeofs with sizeof(int).
1433         Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
1434         different than DOUBLE.
1435         Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
1436         (ffi_prep_args_v9): New function.
1437         (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
1438         (ffi_V9_return_struct): New function.
1439         (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
1440         32bit code (not yet cross-arch calls).
1441         * src/sparc/v8.S: Add struct return delay nop.
1442         Handle long long.
1443         * src/sparc/v9.S: New file.
1444         * src/prep_cif.c (ffi_prep_cif): Return structure pointer
1445         is used on sparc64 only for structures larger than 32 bytes.
1446         Pass by reference for structures is done for structure arguments
1447         larger than 16 bytes.
1448         * src/ffitest.c (main): Use 64bit rint on sparc64.
1449         Run long long tests on sparc.
1450         * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
1451         sparc64.
1452         (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
1453         on sparc64.
1454         * configure.in (sparc-*-linux*): New supported target.
1455         (sparc64-*-linux*): Likewise.
1456         * configure: Rebuilt.
1457         * Makefile.am: Add v9.S to SPARC files.
1458         * Makefile.in: Likewise.
1459         (LINK): Surround $(CCLD) into double quotes, so that multilib
1460         compiles work correctly.
1461
1462 2000-04-04  Alexandre Petit-Bianco  <apbianco@cygnus.com>
1463
1464         * configure: Rebuilt.
1465         * configure.in: (i*86-*-solaris*): New libffi target. Patch
1466         proposed by Bryce McKinlay.
1467
1468 2000-03-20  Tom Tromey  <tromey@cygnus.com>
1469
1470         * Makefile.in: Hand edit for java_raw_api.lo.
1471
1472 2000-03-08  Bryce McKinlay  <bryce@albatross.co.nz>
1473
1474         * config.guess, config.sub: Update from the gcc tree.
1475         Fix for PR libgcj/168.
1476
1477 2000-03-03  Tom Tromey  <tromey@cygnus.com>
1478
1479         * Makefile.in: Fixed ia64 by hand.
1480
1481         * configure: Rebuilt.
1482         * configure.in (--enable-multilib): New option.
1483         (libffi_basedir): New subst.
1484         (AC_OUTPUT): Added multilib code.
1485
1486 2000-03-02  Tom Tromey  <tromey@cygnus.com>
1487
1488         * Makefile.in: Rebuilt.
1489         * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
1490         directory name.
1491
1492 2000-02-25  Hans Boehm <boehm@acm.org>
1493
1494         * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
1495         files.
1496         * src/raw_api.c (ffi_translate_args): Fixed typo in argument
1497         list.
1498         (ffi_prep_raw_closure): Use ffi_translate_args, not
1499         ffi_closure_translate.
1500         * src/java_raw_api.c: New file.
1501         * src/ffitest.c (closure_test_fn): New function.
1502         (main): Define `rint' as long long on IA64.  Added new test when
1503         FFI_CLOSURES is defined.
1504         * include/ffi.h.in (ALIGN): Use size_t, not unsigned.
1505         (ffi_abi): Recognize IA64.
1506         (ffi_raw): Added `flt' field.
1507         Added "Java raw API" code.
1508         * configure.in: Recognize ia64.
1509         * Makefile.am (TARGET_SRC_IA64): New macro.
1510         (libffi_la_common_SOURCES): Added java_raw_api.c.
1511         (libffi_la_SOURCES): Define in IA64 case.
1512
1513 2000-01-04  Tom Tromey  <tromey@cygnus.com>
1514
1515         * Makefile.in: Rebuilt with newer automake.
1516
1517 1999-12-31  Tom Tromey  <tromey@cygnus.com>
1518
1519         * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
1520
1521 1999-09-01  Tom Tromey  <tromey@cygnus.com>
1522
1523         * include/ffi.h.in: Removed PACKAGE and VERSION defines and
1524         undefs.
1525         * fficonfig.h.in: Rebuilt.
1526         * configure: Rebuilt.
1527         * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
1528         Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
1529         * acconfig.h: Don't #undef PACKAGE or VERSION.
1530
1531 1999-08-09  Anthony Green  <green@cygnus.com>
1532
1533         * include/ffi.h.in: Try to work around messy header problem
1534         with PACKAGE and VERSION.
1535
1536         * configure: Rebuilt.
1537         * configure.in: Change version to 2.00-beta.
1538
1539         * fficonfig.h.in: Rebuilt.
1540         * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
1541
1542         * src/x86/ffi.c (ffi_raw_call): Rename.
1543
1544 1999-08-02  Kresten Krab Thorup  <krab@dominiq.is.s.u-tokyo.ac.jp>
1545
1546         * src/x86/ffi.c (ffi_closure_SYSV): New function.
1547         (ffi_prep_incoming_args_SYSV): Ditto.
1548         (ffi_prep_closure): Ditto.
1549         (ffi_closure_raw_SYSV): Ditto.
1550         (ffi_prep_raw_closure): More ditto.
1551         (ffi_call_raw): Final ditto.
1552
1553         * include/ffi.h.in: Add definitions for closure and raw API.
1554
1555         * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
1556         FFI_TYPE_UINT64.
1557
1558         * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
1559
1560         * src/raw_api.c: New file.
1561
1562         * include/ffi.h.in (ffi_raw): New type.
1563         (UINT_ARG, SINT_ARG): New defines.
1564         (ffi_closure, ffi_raw_closure): New types.
1565         (ffi_prep_closure, ffi_prep_raw_closure): New declarations.
1566
1567         * configure.in: Add check for endianness and sizeof void*.
1568
1569         * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
1570         instead of directly.
1571
1572         * configure: Rebuilt.
1573
1574 Thu Jul  8 14:28:42 1999  Anthony Green  <green@cygnus.com>
1575
1576         * configure.in: Add x86 and powerpc BeOS configurations.
1577         From Makoto Kato <m_kato@ga2.so-net.ne.jp>.
1578
1579 1999-05-09  Anthony Green  <green@cygnus.com>
1580
1581         * configure.in: Add warning about this being beta code.
1582         Remove src/Makefile.am from the picture.
1583         * configure: Rebuilt.
1584
1585         * Makefile.am: Move logic from src/Makefile.am.  Add changes
1586         to support libffi as a target library.
1587         * Makefile.in: Rebuilt.
1588
1589         * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
1590         Upgraded to new autoconf, automake, libtool.
1591
1592         * README: Tweaks.
1593
1594         * LICENSE: Update copyright date.
1595
1596         * src/Makefile.am, src/Makefile.in: Removed.
1597
1598 1998-11-29  Anthony Green  <green@cygnus.com>
1599
1600         * include/ChangeLog: Removed.
1601         * src/ChangeLog: Removed.
1602         * src/mips/ChangeLog: Removed.
1603         * src/sparc/ChangeLog: Remboved.
1604         * src/x86/ChangeLog: Removed.
1605
1606         * ChangeLog.v1: Created.