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