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