OSDN Git Service

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