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