]> git.ipfire.org Git - thirdparty/gcc.git/blame - libffi/ChangeLog
* 5wsystem.ads: Enable zero cost exception.
[thirdparty/gcc.git] / libffi / ChangeLog
CommitLineData
9e6c3ecb
AT
12003-11-20 Andreas Tobler <a.tobler@schweiz.ch>
2
3 * testsuite/lib/libffi-dg.exp: Make the -lgcc_s conditional.
4
70d8f2a1
AT
52003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
6
7 * testsuite/lib/libffi-dg.exp: Add DYLD_LIBRARY_PATH for darwin.
8 Add -lgcc_s to additional flags.
9
ea81d2a3
AT
102003-11-12 Andreas Tobler <a.tobler@schweiz.ch>
11
12 * configure.in, include/Makefile.am: PR libgcj/11147, install
13 the ffitarget.h header file in a gcc versioned and target
14 dependent place.
15 * configure: Regenerated.
16 * Makefile.in, include/Makefile.in: Likewise.
17 * testsuite/Makefile.in: Likewise.
18
647af4a9
AT
192003-11-09 Andreas Tobler <a.tobler@schweiz.ch>
20
21 * testsuite/libffi.call/closure_fn0.c: Print result and check
22 with dg-output to make debugging easier.
23 * testsuite/libffi.call/closure_fn1.c: Likewise.
24 * testsuite/libffi.call/closure_fn2.c: Likewise.
25 * testsuite/libffi.call/closure_fn3.c: Likewise.
26 * testsuite/libffi.call/closure_fn4.c: Likewise.
27 * testsuite/libffi.call/closure_fn5.c: Likewise.
28 * testsuite/libffi.call/cls_12byte.c: Likewise.
29 * testsuite/libffi.call/cls_16byte.c: Likewise.
30 * testsuite/libffi.call/cls_18byte.c: Likewise.
31 * testsuite/libffi.call/cls_19byte.c: Likewise.
32 * testsuite/libffi.call/cls_1_1byte.c: Likewise.
33 * testsuite/libffi.call/cls_20byte.c: Likewise.
34 * testsuite/libffi.call/cls_20byte1.c: Likewise.
35 * testsuite/libffi.call/cls_24byte.c: Likewise.
36 * testsuite/libffi.call/cls_2byte.c: Likewise.
37 * testsuite/libffi.call/cls_3_1byte.c: Likewise.
38 * testsuite/libffi.call/cls_3byte1.c: Likewise.
39 * testsuite/libffi.call/cls_3byte2.c: Likewise.
40 * testsuite/libffi.call/cls_4_1byte.c: Likewise.
41 * testsuite/libffi.call/cls_4byte.c: Likewise.
42 * testsuite/libffi.call/cls_5byte.c: Likewise.
43 * testsuite/libffi.call/cls_64byte.c: Likewise.
44 * testsuite/libffi.call/cls_6byte.c: Likewise.
45 * testsuite/libffi.call/cls_7byte.c: Likewise.
46 * testsuite/libffi.call/cls_8byte.c: Likewise.
47 * testsuite/libffi.call/cls_9byte1.c: Likewise.
48 * testsuite/libffi.call/cls_9byte2.c: Likewise.
49 * testsuite/libffi.call/cls_double.c: Likewise.
50 * testsuite/libffi.call/cls_float.c: Likewise.
51 * testsuite/libffi.call/cls_schar.c: Likewise.
52 * testsuite/libffi.call/cls_sint.c: Likewise.
53 * testsuite/libffi.call/cls_sshort.c: Likewise.
54 * testsuite/libffi.call/cls_uchar.c: Likewise.
55 * testsuite/libffi.call/cls_uint.c: Likewise.
56 * testsuite/libffi.call/cls_ulonglong.c: Likewise.
57 * testsuite/libffi.call/cls_ushort.c: Likewise.
58 * testsuite/libffi.call/problem1.c: Likewise.
59
60 * testsuite/libffi.special/unwindtest.cc: Make ffi_closure
61 static.
62
ac47cc13
AT
632003-11-08 Andreas Tobler <a.tobler@schweiz.ch>
64
65 * testsuite/libffi.call/cls_9byte2.c: New test case.
66 * testsuite/libffi.call/cls_9byte1.c: Likewise.
67 * testsuite/libffi.call/cls_64byte.c: Likewise.
68 * testsuite/libffi.call/cls_20byte1.c: Likewise.
69 * testsuite/libffi.call/cls_19byte.c: Likewise.
70 * testsuite/libffi.call/cls_18byte.c: Likewise.
71 * testsuite/libffi.call/closure_fn4.c: Likewise.
72 * testsuite/libffi.call/closure_fn5.c: Likewise.
73 * testsuite/libffi.call/cls_schar.c: Likewise.
74 * testsuite/libffi.call/cls_sint.c: Likewise.
75 * testsuite/libffi.call/cls_sshort.c: Likewise.
76 * testsuite/libffi.call/nested_struct2.c: Likewise.
77 * testsuite/libffi.call/nested_struct3.c: Likewise.
78
f145ed6b
AT
792003-11-08 Andreas Tobler <a.tobler@schweiz.ch>
80
81 * testsuite/libffi.call/cls_double.c: Do a check on the result.
82 * testsuite/libffi.call/cls_uchar.c: Likewise.
83 * testsuite/libffi.call/cls_uint.c: Likewise.
84 * testsuite/libffi.call/cls_ulonglong.c: Likewise.
85 * testsuite/libffi.call/cls_ushort.c: Likewise.
86 * testsuite/libffi.call/return_sc.c: Cleanup whitespaces.
87
2b04d015
AT
882003-11-06 Andreas Tobler <a.tobler@schweiz.ch>
89
90 * src/prep_cif.c (ffi_prep_cif): Move the validity check after
91 the initialization.
92
57f542b3
AT
932003-10-23 Andreas Tobler <a.tobler@schweiz.ch>
94
2b04d015 95 * src/java_raw_api.c (ffi_java_ptrarray_to_raw): Replace
57f542b3
AT
96 FFI_ASSERT(FALSE) with FFI_ASSERT(0).
97
e61acf72
DD
982003-10-22 David Daney <ddaney@avtrex.com>
99
100 * src/mips/ffitarget.h: Replace undefined UINT32 and friends with
101 __attribute__((__mode__(__SI__))) and friends.
102
2461c08b
AS
1032003-10-22 Andreas Schwab <schwab@suse.de>
104
105 * src/ia64/ffi.c: Replace FALSE/TRUE with false/true.
106
1450eb7a
AT
1072003-10-21 Andreas Tobler <a.tobler@schweiz.ch>
108
109 * configure.in: AC_LINK_FILES(ffitarget.h).
110 * configure: Regenerate.
111 * Makefile.in: Likewise.
112 * include/Makefile.in: Likewise.
113 * testsuite/Makefile.in: Likewise.
114 * fficonfig.h.in: Likewise.
115
1162003-10-21 Paolo Bonzini <bonzini@gnu.org>
117 Richard Henderson <rth@redhat.com>
118
119 Avoid that ffi.h includes fficonfig.h.
120
121 * Makefile.am (EXTRA_DIST): Include ffitarget.h files
122 (TARGET_SRC_MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX.
123 (TARGET_SRC_MIPS_SGI): Removed.
124 (MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX.
125 (MIPS_SGI): Removed.
126 (CLEANFILES): Removed.
127 (mostlyclean-am, clean-am, mostlyclean-sub, clean-sub): New
128 targets.
129 * acconfig.h: Removed.
130 * configure.in: Compute sizeofs only for double and long double.
131 Use them to define and subst HAVE_LONG_DOUBLE. Include comments
132 into AC_DEFINE instead of using acconfig.h. Create
133 include/ffitarget.h instead of include/fficonfig.h. Rename
134 MIPS_GCC to MIPS_IRIX, drop MIPS_SGI since we are in gcc's tree.
135 AC_DEFINE EH_FRAME_FLAGS.
136 * include/Makefile.am (DISTCLEANFILES): New automake macro.
137 (hack_DATA): Add ffitarget.h.
138 * include/ffi.h.in: Remove all system specific definitions.
139 Declare raw API even if it is not installed, why bother?
140 Use limits.h instead of SIZEOF_* to define ffi_type_*. Do
141 not define EH_FRAME_FLAGS, it is in fficonfig.h now. Include
142 ffitarget.h instead of fficonfig.h. Remove ALIGN macro.
143 (UINT_ARG, INT_ARG): Removed, use ffi_arg and ffi_sarg instead.
144 * include/ffi_common.h (bool): Do not define.
145 (ffi_assert): Accept failed assertion.
146 (ffi_type_test): Return void and accept file/line.
147 (FFI_ASSERT): Pass stringized failed assertion.
148 (FFI_ASSERT_AT): New macro.
149 (FFI_ASSERT_VALID_TYPE): New macro.
150 (UINT8, SINT8, UINT16, SINT16, UINT32, SINT32,
151 UINT64, SINT64): Define here with gcc's __attribute__ macro
152 instead of in ffi.h
153 (FLOAT32, ALIGN): Define here instead of in ffi.h
154 * include/ffi-mips.h: Removed. Its content moved to
155 src/mips/ffitarget.h after separating assembly and C sections.
156 * src/alpha/ffi.c, src/alpha/ffi.c, src/java_raw_api.c
157 src/prep_cif.c, src/raw_api.c, src/ia64/ffi.c,
158 src/mips/ffi.c, src/mips/n32.S, src/mips/o32.S,
159 src/mips/ffitarget.h, src/sparc/ffi.c, src/x86/ffi64.c:
160 SIZEOF_ARG -> FFI_SIZEOF_ARG.
161 * src/ia64/ffi.c: Include stdbool.h (provided by GCC 2.95+).
162 * src/debug.c (ffi_assert): Accept stringized failed assertion.
163 (ffi_type_test): Rewritten.
164 * src/prep-cif.c (initialize_aggregate, ffi_prep_cif): Call
165 FFI_ASSERT_VALID_TYPE.
166 * src/alpha/ffitarget.h, src/arm/ffitarget.h,
167 src/ia64/ffitarget.h, src/m68k/ffitarget.h,
168 src/mips/ffitarget.h, src/powerpc/ffitarget.h,
169 src/s390/ffitarget.h, src/sh/ffitarget.h,
170 src/sh64/ffitarget.h, src/sparc/ffitarget.h,
171 src/x86/ffitarget.h: New files.
172 * src/alpha/osf.S, src/arm/sysv.S, src/ia64/unix.S,
173 src/m68k/sysv.S, src/mips/n32.S, src/mips/o32.S,
174 src/powerpc/aix.S, src/powerpc/darwin.S,
175 src/powerpc/ffi_darwin.c, src/powerpc/linux64.S,
176 src/powerpc/linux64_closure.S, src/powerpc/ppc_closure.S,
177 src/powerpc/sysv.S, src/s390/sysv.S, src/sh/sysv.S,
178 src/sh64/sysv.S, src/sparc/v8.S, src/sparc/v9.S,
179 src/x86/sysv.S, src/x86/unix64.S, src/x86/win32.S:
180 include fficonfig.h
181
27d54b2a
RO
1822003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
183
184 * src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external
185 _MIPS_SIM_NABI32, _MIPS_SIM_ABI32.
186
0df6970d
AT
1872003-10-19 Andreas Tobler <a.tobler@schweiz.ch>
188
189 * src/powerpc/ffi_darwin.c (ffi_prep_args): Declare bytes again.
190 Used when FFI_DEBUG = 1.
191
2612ffce
AM
1922003-10-14 Alan Modra <amodra@bigpond.net.au>
193
194 * src/types.c (double, longdouble): Default POWERPC64 to 8 byte size
195 and align.
196
d54f7354
RO
1972003-10-06 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
198
199 * include/ffi_mips.h: Define FFI_MIPS_N32 for N32/N64 ABIs,
200 FFI_MIPS_O32 for O32 ABI.
201
7a54c850
AT
2022003-10-01 Andreas Tobler <a.tobler@schweiz.ch>
203
204 * testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_64 for
205 SPARC64. Cleanup whitespaces.
206
9e3bfa9b
AT
2072003-09-19 Andreas Tobler <a.tobler@schweiz.ch>
208
209 * testsuite/libffi.call/closure_fn0.c: Xfail mips, arm,
210 strongarm, xscale. Cleanup whitespaces.
211 * testsuite/libffi.call/closure_fn1.c: Likewise.
212 * testsuite/libffi.call/closure_fn2.c: Likewise.
213 * testsuite/libffi.call/closure_fn3.c: Likewise.
214 * testsuite/libffi.call/cls_12byte.c: Likewise.
215 * testsuite/libffi.call/cls_16byte.c: Likewise.
216 * testsuite/libffi.call/cls_1_1byte.c: Likewise.
217 * testsuite/libffi.call/cls_20byte.c: Likewise.
218 * testsuite/libffi.call/cls_24byte.c: Likewise.
219 * testsuite/libffi.call/cls_2byte.c: Likewise.
220 * testsuite/libffi.call/cls_3_1byte.c: Likewise.
221 * testsuite/libffi.call/cls_3byte1.c: Likewise.
222 * testsuite/libffi.call/cls_3byte2.c: Likewise.
223 * testsuite/libffi.call/cls_4_1byte.c: Likewise.
224 * testsuite/libffi.call/cls_4byte.c: Likewise.
225 * testsuite/libffi.call/cls_5byte.c: Likewise.
226 * testsuite/libffi.call/cls_6byte.c: Likewise.
227 * testsuite/libffi.call/cls_7byte.c: Likewise.
228 * testsuite/libffi.call/cls_8byte.c: Likewise.
229 * testsuite/libffi.call/cls_double.c: Likewise.
230 * testsuite/libffi.call/cls_float.c: Likewise.
231 * testsuite/libffi.call/cls_uchar.c: Likewise.
232 * testsuite/libffi.call/cls_uint.c: Likewise.
233 * testsuite/libffi.call/cls_ulonglong.c: Likewise.
234 * testsuite/libffi.call/cls_ushort.c: Likewise.
235 * testsuite/libffi.call/nested_struct.c: Likewise.
236 * testsuite/libffi.call/nested_struct1.c: Likewise.
237 * testsuite/libffi.call/problem1.c: Likewise.
238 * testsuite/libffi.special/unwindtest.cc: Likewise.
239 * testsuite/libffi.call/pyobjc-tc.c: Cleanup whitespaces.
240
3e86b595
DE
2412003-09-18 David Edelsohn <edelsohn@gnu.org>
242
243 * src/powerpc/aix.S: Cleanup whitespaces.
244 * src/powerpc/aix_closure.S: Likewise.
245
8d8369f8
AT
2462003-09-18 Andreas Tobler <a.tobler@schweiz.ch>
247
248 * src/powerpc/darwin.S: Cleanup whitespaces, comment formatting.
249 * src/powerpc/darwin_closure.S: Likewise.
250 * src/powerpc/ffi_darwin.c: Likewise.
251
69b182fd
AT
2522003-09-18 Andreas Tobler <a.tobler@schweiz.ch>
253 David Edelsohn <edelsohn@gnu.org>
254
255 * src/types.c (double): Add AIX and Darwin to the right TYPEDEF.
256 * src/powerpc/aix_closure.S: Remove the pointer to the outgoing
257 parameter stack.
258 * src/powerpc/darwin_closure.S: Likewise.
259 * src/powerpc/ffi_darwin.c (ffi_prep_args): Handle structures
260 according to the Darwin/AIX ABI.
261 (ffi_prep_cif_machdep): Likewise.
262 (ffi_closure_helper_DARWIN): Likewise.
263 Remove the outgoing parameter stack logic. Simplify the evaluation
264 of the different CASE types.
265 (ffi_prep_clousure): Avoid the casts on lvalues. Change the branch
266 statement in the trampoline code.
267
df805cdc
KK
2682003-09-18 Kaz Kojima <kkojima@gcc.gnu.org>
269
270 * src/sh/ffi.c (ffi_prep_args): Take account into the alignement
271 for the register size.
272 (ffi_closure_helper_SYSV): Handle the structure return value
273 address correctly.
274 (ffi_closure_helper_SYSV): Return the appropriate type when
275 the registers are used for the structure return value.
276 * src/sh/sysv.S (ffi_closure_SYSV): Fix the stack layout for
277 the 64-bit return value. Update copyright years.
278
eb26c76c
RO
2792003-09-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
280
281 * testsuite/lib/libffi-dg.exp (libffi_target_compile): Search in
282 srcdir for ffi_mips.h.
283
6350c02c
AM
2842003-09-12 Alan Modra <amodra@bigpond.net.au>
285
286 * src/prep_cif.c (initialize_aggregate): Include tail padding in
287 structure size.
288 * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Correct
289 placement of float result.
290 * testsuite/libffi.special/unwindtest.cc (closure_test_fn1): Correct
291 cast of "resp" for big-endian 64 bit machines.
292
5af1c806
AM
2932003-09-11 Alan Modra <amodra@bigpond.net.au>
294
295 * src/types.c (double, longdouble): Merge identical SH and ARM
296 typedefs, and add POWERPC64.
297 * src/powerpc/ffi.c (ffi_prep_args64): Correct next_arg calc for
298 struct split over gpr and rest.
299 (ffi_prep_cif_machdep): Correct intarg_count for structures.
300 * src/powerpc/linux64.S (ffi_call_LINUX64): Fix gpr offsets.
301
086a4bd7
AT
3022003-09-09 Andreas Tobler <a.tobler@schweiz.ch>
303
304 * src/powerpc/ffi.c (ffi_closure_helper_SYSV) Handle struct
305 passing correctly.
306
e517f636
AM
3072003-09-09 Alan Modra <amodra@bigpond.net.au>
308
309 * configure: Regenerate.
310
6f20d627
AT
3112003-09-04 Andreas Tobler <a.tobler@schweiz.ch>
312
313 * Makefile.am: Remove build rules for ffitest.
314 * Makefile.in: Rebuilt.
315
3162003-09-04 Andreas Tobler <a.tobler@schweiz.ch>
226660af
AT
317
318 * src/java_raw_api.c: Include <stdlib.h> to fix compiler warning
319 about implicit declaration of abort().
320
bbf3057b
AT
3212003-09-04 Andreas Tobler <a.tobler@schweiz.ch>
322
323 * Makefile.am: Add dejagnu test framework. Fixes PR other/11411.
324 * Makefile.in: Rebuilt.
325 * configure.in: Add dejagnu test framework.
326 * configure: Rebuilt.
327
328 * testsuite/Makefile.am: New file.
329 * testsuite/Makefile.in: Built
330 * testsuite/lib/libffi-dg.exp: New file.
331 * testsuite/config/default.exp: Likewise.
332 * testsuite/libffi.call/call.exp: Likewise.
333 * testsuite/libffi.call/ffitest.h: Likewise.
334 * testsuite/libffi.call/closure_fn0.c: Likewise.
335 * testsuite/libffi.call/closure_fn1.c: Likewise.
336 * testsuite/libffi.call/closure_fn2.c: Likewise.
337 * testsuite/libffi.call/closure_fn3.c: Likewise.
338 * testsuite/libffi.call/cls_1_1byte.c: Likewise.
339 * testsuite/libffi.call/cls_3_1byte.c: Likewise.
340 * testsuite/libffi.call/cls_4_1byte.c: Likewise.
341 * testsuite/libffi.call/cls_2byte.c: Likewise.
342 * testsuite/libffi.call/cls_3byte1.c: Likewise.
343 * testsuite/libffi.call/cls_3byte2.c: Likewise.
344 * testsuite/libffi.call/cls_4byte.c: Likewise.
345 * testsuite/libffi.call/cls_5byte.c: Likewise.
346 * testsuite/libffi.call/cls_6byte.c: Likewise.
347 * testsuite/libffi.call/cls_7byte.c: Likewise.
348 * testsuite/libffi.call/cls_8byte.c: Likewise.
349 * testsuite/libffi.call/cls_12byte.c: Likewise.
350 * testsuite/libffi.call/cls_16byte.c: Likewise.
351 * testsuite/libffi.call/cls_20byte.c: Likewise.
352 * testsuite/libffi.call/cls_24byte.c: Likewise.
353 * testsuite/libffi.call/cls_double.c: Likewise.
354 * testsuite/libffi.call/cls_float.c: Likewise.
355 * testsuite/libffi.call/cls_uchar.c: Likewise.
356 * testsuite/libffi.call/cls_uint.c: Likewise.
357 * testsuite/libffi.call/cls_ulonglong.c: Likewise.
358 * testsuite/libffi.call/cls_ushort.c: Likewise.
359 * testsuite/libffi.call/float.c: Likewise.
360 * testsuite/libffi.call/float1.c: Likewise.
361 * testsuite/libffi.call/float2.c: Likewise.
362 * testsuite/libffi.call/many.c: Likewise.
363 * testsuite/libffi.call/many_win32.c: Likewise.
364 * testsuite/libffi.call/nested_struct.c: Likewise.
365 * testsuite/libffi.call/nested_struct1.c: Likewise.
366 * testsuite/libffi.call/pyobjc-tc.c: Likewise.
367 * testsuite/libffi.call/problem1.c: Likewise.
368 * testsuite/libffi.call/promotion.c: Likewise.
369 * testsuite/libffi.call/return_ll.c: Likewise.
370 * testsuite/libffi.call/return_sc.c: Likewise.
371 * testsuite/libffi.call/return_uc.c: Likewise.
372 * testsuite/libffi.call/strlen.c: Likewise.
373 * testsuite/libffi.call/strlen_win32.c: Likewise.
374 * testsuite/libffi.call/struct1.c: Likewise.
375 * testsuite/libffi.call/struct2.c: Likewise.
376 * testsuite/libffi.call/struct3.c: Likewise.
377 * testsuite/libffi.call/struct4.c: Likewise.
378 * testsuite/libffi.call/struct5.c: Likewise.
379 * testsuite/libffi.call/struct6.c: Likewise.
380 * testsuite/libffi.call/struct7.c: Likewise.
381 * testsuite/libffi.call/struct8.c: Likewise.
382 * testsuite/libffi.call/struct9.c: Likewise.
383 * testsuite/libffi.special/special.exp: New file.
384 * testsuite/libffi.special/ffitestcxx.h: Likewise.
385 * testsuite/libffi.special/unwindtest.cc: Likewise.
386
387
996b4f8f
KK
3882003-08-13 Kaz Kojima <kkojima@gcc.gnu.org>
389
390 * src/sh/ffi.c (OFS_INT16): Set 0 for little endian case. Update
391 copyright years.
392
b00badcd
AM
3932003-08-02 Alan Modra <amodra@bigpond.net.au>
394
395 * src/powerpc/ffi.c (ffi_prep_args64): Modify for changed gcc
396 structure passing.
397 (ffi_closure_helper_LINUX64): Likewise.
398 * src/powerpc/linux64.S: Remove code writing to parm save area.
399 * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Use return
400 address in lr from ffi_closure_helper_LINUX64 call to calculate
401 table address. Optimize function tail.
402
c1516eae
AT
4032003-07-28 Andreas Tobler <a.tobler@schweiz.ch>
404
405 * src/sparc/ffi.c: Handle all floating point registers.
406 * src/sparc/v9.S: Likewise. Fixes second part of PR target/11410.
407
fc0e6222
GP
4082003-07-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
409
410 * README: Note that libffi is not part of GCC. Update the project
411 URL and status.
412
a1569df8
FS
4132003-06-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
414
415 * src/powerpc/ppc_closure.S: Include ffi.h.
416
12e816bf
RO
4172003-06-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
418
419 * src/x86/sysv.S: Avoid gas-only .uleb128/.sleb128 directives.
420 Use C style comments.
421
e860ed6d
KK
4222003-06-13 Kaz Kojima <kkojima@rr.iij4u.or.jp>
423
424 * Makefile.am: Add SHmedia support. Fix a typo of SH support.
425 * Makefile.in: Regenerate.
426 * configure.in (sh64-*-linux*, sh5*-*-linux*): Add target.
427 * configure: Regenerate.
428 * include/ffi.h.in: Add SHmedia support.
429 * src/sh64/ffi.c: New file.
430 * src/sh64/sysv.S: New file.
431
a733b15e
JJ
4322003-05-16 Jakub Jelinek <jakub@redhat.com>
433
434 * configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section
435 should be read-only.
436 * configure: Rebuilt.
437 * fficonfig.h.in: Rebuilt.
438 * include/ffi.h.in (EH_FRAME_FLAGS): Define.
439 * src/alpha/osf.S: Use EH_FRAME_FLAGS.
440 * src/powerpc/linux64.S: Likewise.
441 * src/powerpc/linux64_closure.S: Likewise. Include ffi.h.
442 * src/powerpc/sysv.S: Use EH_FRAME_FLAGS. Use pcrel encoding
443 if -fpic/-fPIC/-mrelocatable.
444 * src/powerpc/powerpc_closure.S: Likewise.
445 * src/sparc/v8.S: If HAVE_RO_EH_FRAME is defined, don't include
446 #write in .eh_frame flags.
447 * src/sparc/v9.S: Likewise.
448 * src/x86/unix64.S: Use EH_FRAME_FLAGS.
449 * src/x86/sysv.S: Likewise. Use pcrel encoding if -fpic/-fPIC.
450 * src/s390/sysv.S: Use EH_FRAME_FLAGS. Include ffi.h.
451
bd19c9f4
JS
4522003-05-07 Jeff Sturm <jsturm@one-point.com>
453
454 Fixes PR bootstrap/10656
455 * configure.in (HAVE_AS_REGISTER_PSEUDO_OP): Test assembler
456 support for .register pseudo-op.
457 * src/sparc/v8.S: Use it.
458 * fficonfig.h.in: Rebuilt.
459 * configure: Rebuilt.
460
e9b84181
JJ
4612003-04-18 Jakub Jelinek <jakub@redhat.com>
462
463 * include/ffi.h.in (POWERPC64): Define if 64-bit.
464 (enum ffi_abi): Add FFI_LINUX64 on POWERPC.
465 Make it the default on POWERPC64.
466 (FFI_TRAMPOLINE_SIZE): Define to 24 on POWERPC64.
467 * configure.in: Change powerpc-*-linux* into powerpc*-*-linux*.
468 * configure: Rebuilt.
469 * src/powerpc/ffi.c (hidden): Define.
470 (ffi_prep_args_SYSV): Renamed from
471 ffi_prep_args. Cast pointers to unsigned long to shut up warnings.
472 (NUM_GPR_ARG_REGISTERS64, NUM_FPR_ARG_REGISTERS64,
473 ASM_NEEDS_REGISTERS64): New.
474 (ffi_prep_args64): New function.
475 (ffi_prep_cif_machdep): Handle FFI_LINUX64 ABI.
476 (ffi_call): Likewise.
477 (ffi_prep_closure): Likewise.
478 (flush_icache): Surround by #ifndef POWERPC64.
479 (ffi_dblfl): New union type.
480 (ffi_closure_helper_SYSV): Use it to avoid aliasing problems.
481 (ffi_closure_helper_LINUX64): New function.
482 * src/powerpc/ppc_closure.S: Surround whole file by #ifndef
483 __powerpc64__.
484 * src/powerpc/sysv.S: Likewise.
485 (ffi_call_SYSV): Rename ffi_prep_args to ffi_prep_args_SYSV.
486 * src/powerpc/linux64.S: New file.
487 * src/powerpc/linux64_closure.S: New file.
488 * Makefile.am (EXTRA_DIST): Add src/powerpc/linux64.S and
489 src/powerpc/linux64_closure.S.
490 (TARGET_SRC_POWERPC): Likewise.
491
492 * src/ffitest.c (closure_test_fn, closure_test_fn1, closure_test_fn2,
493 closure_test_fn3): Fix result printing on big-endian 64-bit
494 machines.
495 (main): Print tst2_arg instead of uninitialized tst2_result.
496
497 * src/ffitest.c (main): Hide what closure pointer really points to
498 from the compiler.
499
908a31e1
RE
5002003-04-16 Richard Earnshaw <rearnsha@arm.com>
501
502 * configure.in (arm-*-netbsdelf*): Add configuration.
503 (configure): Regenerated.
504
41a73c4c
LR
5052003-04-04 Loren J. Rittle <ljrittle@acm.org>
506
507 * include/Makefile.in: Regenerate.
508
cd41c847
ZD
5092003-03-21 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
510
511 * libffi/include/ffi.h.in: Define X86 instead of X86_64 in 32
512 bit mode.
513 * libffi/src/x86/ffi.c (ffi_closure_SYSV, ffi_closure_raw_SYSV):
514 Receive closure pointer through parameter, read args using
515 __builtin_dwarf_cfa.
516 (FFI_INIT_TRAMPOLINE): Send closure reference through eax.
517
6db450f9
AS
5182003-03-12 Andreas Schwab <schwab@suse.de>
519
520 * configure.in: Avoid trailing /. in toolexeclibdir.
521 * configure: Rebuilt.
522
70144e9c
AT
5232003-03-03 Andreas Tobler <a.tobler@schweiz.ch>
524
525 * src/powerpc/darwin_closure.S: Recode to fit dynamic libraries.
526
79e43f89
AT
5272003-02-06 Andreas Tobler <a.tobler@schweiz.ch>
528
529 * libffi/src/powerpc/darwin_closure.S:
530 Fix alignement bug, allocate 8 bytes for the result.
531 * libffi/src/powerpc/aix_closure.S:
532 Likewise.
533 * libffi/src/powerpc/ffi_darwin.c:
534 Update stackframe description for aix/darwin_closure.S.
535
0fcc9e55
JJ
5362003-02-06 Jakub Jelinek <jakub@redhat.com>
537
538 * src/s390/ffi.c (ffi_closure_helper_SYSV): Add hidden visibility
539 attribute.
540
63b87c2e
CC
5412003-01-31 Christian Cornelssen <ccorn@cs.tu-berlin.de>,
542 Andreas Schwab <schwab@suse.de>
543
544 * configure.in: Adjust command to source config-ml.in to account
545 for changes to the libffi_basedir definition.
546 (libffi_basedir): Remove ${srcdir} from value and include trailing
547 slash if nonempty.
548
549 * configure: Regenerate.
550
c33402e2
FS
5512003-01-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
552
553 * src/powerpc/ppc_closure.S: Recode to fit shared libs.
554
fd2e49b2
AH
5552003-01-28 Andrew Haley <aph@redhat.com>
556
557 * include/ffi.h.in: Enable FFI_CLOSURES for x86_64.
558 * src/x86/ffi64.c (ffi_prep_closure): New.
559 (ffi_closure_UNIX64_inner): New.
560 * src/x86/unix64.S (ffi_closure_UNIX64): New.
561
0e292c01
AO
5622003-01-27 Alexandre Oliva <aoliva@redhat.com>
563
564 * configure.in (toolexecdir, toolexeclibdir): Set and AC_SUBST.
565 Remove USE_LIBDIR conditional.
566 * Makefile.am (toolexecdir, toolexeclibdir): Don't override.
567 * Makefile.in, configure: Rebuilt.
568
acabc220
DE
5692003-01027 David Edelsohn <edelsohn@gnu.org>
570
571 * Makefile.am (TARGET_SRC_POWERPC_AIX): Fix typo.
572 * Makefile.in: Regenerate.
573
be0acd42
AH
5742003-01-22 Andrew Haley <aph@redhat.com>
575
576 * src/powerpc/darwin.S (_ffi_call_AIX): Add Augmentation size to
577 unwind info.
578
ed695c8e
AT
5792003-01-21 Andreas Tobler <a.tobler@schweiz.ch>
580
581 * src/powerpc/darwin.S: Add unwind info.
582 * src/powerpc/darwin_closure.S: Likewise.
583
45ba15f4
AH
5842003-01-14 Andrew Haley <aph@redhat.com>
585
586 * src/x86/ffi64.c (ffi_prep_args): Check for void retval.
587 (ffi_prep_cif_machdep): Likewise.
588 * src/x86/unix64.S: Add unwind info.
589
4b5f402e
AJ
5902003-01-14 Andreas Jaeger <aj@suse.de>
591
592 * src/ffitest.c (main): Only use ffi_closures if those are
593 supported.
594
7b5102af
TT
5952003-01-13 Andreas Tobler <a.tobler@schweiz.ch>
596
597 * libffi/src/ffitest.c
598 add closure testcases
599
6002003-01-13 Kevin B. Hendricks <khendricks@ivey.uwo.ca>
601
602 * libffi/src/powerpc/ffi.c
603 fix alignment bug for float (4 byte aligned iso 8 byte)
604
5f7c78d8
GK
6052003-01-09 Geoffrey Keating <geoffk@apple.com>
606
607 * src/powerpc/ffi_darwin.c: Remove RCS version string.
608 * src/powerpc/darwin.S: Remove RCS version string.
609
c75c7793
JS
6102003-01-03 Jeff Sturm <jsturm@one-point.com>
611
612 * include/ffi.h.in: Add closure defines for SPARC, SPARC64.
613 * src/ffitest.c (main): Use static storage for closure.
614 * src/sparc/ffi.c (ffi_prep_closure, ffi_closure_sparc_inner): New.
615 * src/sparc/v8.S (ffi_closure_v8): New.
616 * src/sparc/v9.S (ffi_closure_v9): New.
617
eb3c46a1
RM
6182002-11-10 Ranjit Mathew <rmathew@hotmail.com>
619
620 * include/ffi.h.in: Added FFI_STDCALL ffi_type
621 enumeration for X86_WIN32.
622 * src/x86/win32.S: Added ffi_call_STDCALL function
623 definition.
624 * src/x86/ffi.c (ffi_call/ffi_raw_call): Added
625 switch cases for recognising FFI_STDCALL and
626 calling ffi_call_STDCALL if target is X86_WIN32.
627 * src/ffitest.c (my_stdcall_strlen/stdcall_many):
628 stdcall versions of the "my_strlen" and "many"
629 test functions (for X86_WIN32).
630 Added test cases to test stdcall invocation using
631 these functions.
632
4977bab6
ZW
6332002-12-02 Kaz Kojima <kkojima@gcc.gnu.org>
634
635 * src/sh/sysv.S: Add DWARF2 unwind info.
636
67333e84
UW
6372002-11-27 Ulrich Weigand <uweigand@de.ibm.com>
638
639 * src/s390/sysv.S (.eh_frame section): Make section read-only.
640
bc3cf760
JW
6412002-11-26 Jim Wilson <wilson@redhat.com>
642
643 * src/types.c (FFI_TYPE_POINTER): Has size 8 on IA64.
644
4977bab6
ZW
6452002-11-23 H.J. Lu <hjl@gnu.org>
646
647 * acinclude.m4: Add dummy AM_PROG_LIBTOOL.
648 Include ../config/accross.m4.
649 * aclocal.m4; Rebuild.
650 * configure: Likewise.
651
18789f4e
UW
6522002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
653
654 * src/s390/sysv.S (.eh_frame section): Adapt to pcrel FDE encoding.
655
6bee5372
DD
6562002-11-11 DJ Delorie <dj@redhat.com>
657
658 * configure.in: Look for common files in the right place.
659
8177895b
UW
6602002-10-08 Ulrich Weigand <uweigand@de.ibm.com>
661
662 * src/java_raw_api.c (ffi_java_raw_to_ptrarray): Interpret
663 raw data as _Jv_word values, not ffi_raw.
664 (ffi_java_ptrarray_to_raw): Likewise.
665 (ffi_java_rvalue_to_raw): New function.
666 (ffi_java_raw_call): Call it.
667 (ffi_java_raw_to_rvalue): New function.
668 (ffi_java_translate_args): Call it.
669 * src/ffitest.c (closure_test_fn): Interpret return value
670 as ffi_arg, not int.
671 * src/s390/ffi.c (ffi_prep_cif_machdep): Add missing
672 FFI_TYPE_POINTER case.
673 (ffi_closure_helper_SYSV): Likewise. Also, assume return
674 values extended to word size.
675
af50f4c8
AJ
6762002-10-02 Andreas Jaeger <aj@suse.de>
677
678 * src/x86/ffi64.c (ffi_prep_cif_machdep): Remove debug output.
679
5d297584
BT
6802002-10-01 Bo Thorsen <bo@smetana.suse.de>
681
682 * include/ffi.h.in: Fix i386 win32 compilation.
683
c4f17c6f
UW
6842002-09-30 Ulrich Weigand <uweigand@de.ibm.com>
685
686 * configure.in: Add s390x-*-linux-* target.
687 * configure: Regenerate.
688 * include/ffi.h.in: Define S390X for s390x targets.
689 (FFI_CLOSURES): Define for s390/s390x.
690 (FFI_TRAMPOLINE_SIZE): Likewise.
691 (FFI_NATIVE_RAW_API): Likewise.
692 * src/prep_cif.c (ffi_prep_cif): Do not compute stack space for s390.
693 * src/types.c (FFI_TYPE_POINTER): Use 8-byte pointers on s390x.
4977bab6 694 * src/s390/ffi.c: Major rework of existing code. Add support for
c4f17c6f
UW
695 s390x targets. Add closure support.
696 * src/s390/sysv.S: Likewise.
697
d7b52625
RE
6982002-09-29 Richard Earnshaw <rearnsha@arm.com>
699
700 * src/arm/sysv.S: Fix typo.
701
28165e22
RE
7022002-09-28 Richard Earnshaw <rearnsha@arm.com>
703
704 * src/arm/sysv.S: If we don't have machine/asm.h and the pre-processor
705 has defined __USER_LABEL_PREFIX__, then use it in CNAME.
706 (ffi_call_SYSV): Handle soft-float.
707
0b0f4163
BT
7082002-09-27 Bo Thorsen <bo@suse.de>
709
710 * include/ffi.h.in: Fix multilib x86-64 support.
711
6c5d742e
KG
7122002-09-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
713
714 * Makefile.am (all-multi): Fix multilib parallel build.
715
f4b2b0d6
KK
7162002-07-19 Kaz Kojima <kkojima@gcc.gnu.org>
717
718 * configure.in (sh[34]*-*-linux*): Add brackets.
719 * configure: Regenerate.
720
ddebdfeb
KK
7212002-07-18 Kaz Kojima <kkojima@gcc.gnu.org>
722
723 * Makefile.am: Add SH support.
724 * Makefile.in: Regenerate.
725 * configure.in (sh-*-linux*, sh[34]*-*-linux*): Add target.
726 * configure: Regenerate.
727 * include/ffi.h.in: Add SH support.
728 * src/sh/ffi.c: New file.
729 * src/sh/sysv.S: New file.
730 * src/types.c: Add SH support.
731
c94974ca
BT
7322002-07-16 Bo Thorsen <bo@suse.de>
733
734 * src/x86/ffi64.c: New file that adds x86-64 support.
735 * src/x86/unix64.S: New file that handles argument setup for
736 x86-64.
737 * src/x86/sysv.S: Don't use this on x86-64.
738 * src/x86/ffi.c: Don't use this on x86-64.
739 Remove unused vars.
740 * src/prep_cif.c (ffi_prep_cif): Don't do stack size calculation
741 for x86-64.
742 * src/ffitest.c (struct6): New test that tests a special case in
743 the x86-64 ABI.
744 (struct7): Likewise.
745 (struct8): Likewise.
746 (struct9): Likewise.
747 (closure_test_fn): Silence warning about this when it's not used.
748 (main): Add the new tests.
749 (main): Fix a couple of wrong casts and silence some compiler warnings.
750 * include/ffi.h.in: Add x86-64 ABI definition.
751 * fficonfig.h.in: Regenerate.
752 * Makefile.am: Add x86-64 support.
753 * configure.in: Likewise.
754 * Makefile.in: Regenerate.
755 * configure: Likewise.
756
7572002-06-24 Bo Thorsen <bo@suse.de>
758
759 * src/types.c: Merge settings for similar architectures.
760 Add x86-64 sizes and alignments.
761
7622002-06-23 Bo Thorsen <bo@suse.de>
763
764 * src/arm/ffi.c (ffi_prep_args): Remove unused vars.
765 * src/sparc/ffi.c (ffi_prep_args_v8): Likewise.
766 * src/mips/ffi.c (ffi_prep_args): Likewise.
767 * src/m68k/ffi.c (ffi_prep_args): Likewise.
768
5be36a8f
L
7692002-07-18 H.J. Lu (hjl@gnu.org)
770
771 * Makefile.am (TARGET_SRC_MIPS_LINUX): New.
772 (libffi_la_SOURCES): Support MIPS_LINUX.
773 (libffi_convenience_la_SOURCES): Likewise.
774 * Makefile.in: Regenerated.
775
776 * configure.in (mips64*-*): Skip.
777 (mips*-*-linux*): New.
778 * configure: Regenerated.
779
780 * src/mips/ffi.c: Include <sgidefs.h>.
781
ad5e163c
UW
7822002-06-06 Ulrich Weigand <uweigand@de.ibm.com>
783
784 * src/s390/sysv.S: Save/restore %r6. Add DWARF-2 unwind info.
785
ee4586c5
RS
7862002-05-27 Roger Sayle <roger@eyesopen.com>
787
788 * src/x86/ffi.c (ffi_prep_args): Remove reference to avn.
789
b86aa7b0
BT
7902002-05-27 Bo Thorsen <bo@suse.de>
791
792 * src/x86/ffi.c (ffi_prep_args): Remove unused variable and
793 fix formatting.
794
859f7aaf
AT
7952002-05-13 Andreas Tobler <a.tobler@schweiz.ch>
796
797 * src/powerpc/ffi_darwin.c (ffi_prep_closure): Declare fd at
798 beginning of function (for older apple cc).
799
6706f116
AO
8002002-05-08 Alexandre Oliva <aoliva@redhat.com>
801
802 * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
803 script entry, and set LD to it when configuring multilibs.
804 * configure: Rebuilt.
805
fad655c8
JT
8062002-05-05 Jason Thorpe <thorpej@wasabisystems.com>
807
808 * configure.in (sparc64-*-netbsd*): Add target.
809 (sparc-*-netbsdelf*): Likewise.
810 * configure: Regenerate.
811
189ab118
DM
8122002-04-28 David S. Miller <davem@redhat.com>
813
814 * configure.in, configure: Fix SPARC test in previous change.
815
22bcf65c
GT
8162002-04-29 Gerhard Tonn <GerhardTonn@swol.de>
817
818 * Makefile.am: Add Linux for S/390 support.
819 * Makefile.in: Regenerate.
820 * configure.in: Add Linux for S/390 support.
821 * configure: Regenerate.
822 * include/ffi.h.in: Add Linux for S/390 support.
823 * src/s390/ffi.c: New file from libffi CVS tree.
824 * src/s390/sysv.S: New file from libffi CVS tree.
825
5d84cf0b
JJ
8262002-04-28 Jakub Jelinek <jakub@redhat.com>
827
828 * configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working
829 %r_disp32().
830 * src/sparc/v8.S: Use it.
831 * src/sparc/v9.S: Likewise.
832 * fficonfig.h.in: Rebuilt.
833 * configure: Rebuilt.
834
cc382e5c
HB
8352002-04-08 Hans Boehm <Hans_Boehm@hp.com>
836
837 * src/java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE
838 correctly.
839 * src/ia64/unix.S: Add unwind information. Fix comments.
840 Save sp in a way that's compatible with unwind info.
841 (ffi_call_unix): Correctly restore sp in all cases.
842 * src/ia64/ffi.c: Add, fix comments.
843
dc798645
JJ
8442002-04-08 Jakub Jelinek <jakub@redhat.com>
845
846 * src/sparc/v8.S: Make .eh_frame dependent on target word size.
847
da00eaab
JT
8482002-04-06 Jason Thorpe <thorpej@wasabisystems.com>
849
850 * configure.in (alpha*-*-netbsd*): Add target.
851 * configure: Regenerate.
852
0c0b87ad
JS
8532002-04-04 Jeff Sturm <jsturm@one-point.com>
854
855 * src/sparc/v8.S: Add unwind info.
856 * src/sparc/v9.S: Likewise.
857
320d7e7a
KW
8582002-03-30 Krister Walfridsson <cato@df.lth.se>
859
860 * configure.in: Enable i*86-*-netbsdelf*.
861 * configure: Rebuilt.
4977bab6 862
c75e51ed
DB
8632002-03-29 David Billinghurst <David.Billinghurst@riotinto.com>
864
865 PR other/2620
866 * src/mips/n32.s: Delete
867 * src/mips/o32.s: Delete
868
5bb366e0
LR
8692002-03-21 Loren J. Rittle <ljrittle@acm.org>
870
871 * configure.in: Enable alpha*-*-freebsd*.
872 * configure: Rebuilt.
873
ce3b24a7
BM
8742002-03-17 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
875
876 * Makefile.am: libfficonvenience -> libffi_convenience.
877 * Makefile.in: Rebuilt.
4977bab6 878
1eb7ba30
BM
879 * Makefile.am: Define ffitest_OBJECTS.
880 * Makefile.in: Rebuilt.
ce3b24a7 881
073ae293
AT
8822002-03-07 Andreas Tobler <toa@pop.agri.ch>
883 David Edelsohn <edelsohn@gnu.org>
884
885 * Makefile.am (EXTRA_DIST): Add Darwin and AIX closure files.
886 (TARGET_SRC_POWERPC_AIX): Add aix_closure.S.
887 (TARGET_SRC_POWERPC_DARWIN): Add darwin_closure.S.
888 * Makefile.in: Regenerate.
889 * include/ffi.h.in: Add AIX and Darwin closure definitions.
890 * src/powerpc/ffi_darwin.c (ffi_prep_closure): New function.
891 (flush_icache, flush_range): New functions.
892 (ffi_closure_helper_DARWIN): New function.
893 * src/powerpc/aix_closure.S: New file.
894 * src/powerpc/darwin_closure.S: New file.
4977bab6 895
02c521f4
JS
8962002-02-24 Jeff Sturm <jsturm@one-point.com>
897
898 * include/ffi.h.in: Add typedef for ffi_arg.
899 * src/ffitest.c (main): Declare rint with ffi_arg.
4977bab6 900
287dd527
AT
9012002-02-21 Andreas Tobler <toa@pop.agri.ch>
902
903 * src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate
904 number of GPRs for floating-point arguments.
905
e2f2e70a
AG
9062002-01-31 Anthony Green <green@redhat.com>
907
908 * configure: Rebuilt.
909 * configure.in: Replace CHECK_SIZEOF and endian tests with
910 cross-compiler friendly macros.
911 * aclocal.m4 (AC_COMPILE_CHECK_SIZEOF, AC_C_BIGENDIAN_CROSS): New
912 macros.
913
15b9b32f
DE
9142002-01-18 David Edelsohn <edelsohn@gnu.org>
915
916 * src/powerpc/darwin.S (_ffi_call_AIX): New.
1f7d5413 917 * src/powerpc/aix.S (ffi_call_DARWIN): New.
15b9b32f 918
2f4006f8
DE
9192002-01-17 David Edelsohn <edelsohn@gnu.org>
920
921 * Makefile.am (EXTRA_DIST): Add Darwin and AIX files.
922 (TARGET_SRC_POWERPC_AIX): New.
923 (POWERPC_AIX): New stanza.
924 * Makefile.in: Regenerate.
925 * configure.in: Add AIX case.
926 * configure: Regenerate.
927 * include/ffi.h.in (ffi_abi): Add FFI_AIX.
928 * src/powerpc/ffi_darwin.c (ffi_status): Use "long" to scale frame
929 size. Fix "long double" support.
930 (ffi_call): Add FFI_AIX case.
931 * src/powerpc/aix.S: New.
932
3c017635
JH
9332001-10-09 John Hornkvist <john@toastedmarshmallow.com>
934
935 Implement Darwin PowerPC ABI.
936 * configure.in: Handle powerpc-*-darwin*.
937 * Makefile.am: Set source files for POWERPC_DARWIN.
938 * configure: Rebuilt.
939 * Makefile.in: Rebuilt.
940 * include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for
941 POWERPC_DARWIN.
942 * src/powerpc/darwin.S: New file.
943 * src/powerpc/ffi_darwin.c: New file.
944
cc712abf
JM
9452001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
946
947 * src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
948
03a8de49
RO
9492001-07-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
950
951 * src/x86/sysv.S: Avoid gas-only .balign directive.
952 Use C style comments.
953
92a0e6c6
RO
9542001-07-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
955
956 * src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
957 Fixes PR bootstrap/3563.
958
57482f58
RO
9592001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
960
961 * src/alpha/osf.S (ffi_closure_osf): Use .rdata for ECOFF.
962
d7e2dd2f
RO
9632001-06-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
964
965 * configure.in: Recognize sparc*-sun-* host.
966 * configure: Regenerate.
4977bab6 967
be72207c
AH
9682001-06-06 Andrew Haley <aph@redhat.com>
969
4075db8f 970 * src/alpha/osf.S (__FRAME_BEGIN__): Conditionalize for ELF.
be72207c 971
552cb45a
AH
9722001-06-03 Andrew Haley <aph@redhat.com>
973
4075db8f
BT
974 * src/alpha/osf.S: Add unwind info.
975 * src/powerpc/sysv.S: Add unwind info.
976 * src/powerpc/ppc_closure.S: Likewise.
552cb45a 977
7d45b968
JS
9782000-05-31 Jeff Sturm <jsturm@one-point.com>
979
980 * configure.in: Fix AC_ARG_ENABLE usage.
981 * configure: Rebuilt.
982
2a7f63c4
BM
9832001-05-06 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
984
985 * configure.in: Remove warning about beta code.
986 * configure: Rebuilt.
987
9882001-04-25 Hans Boehm <Hans_Boehm@hp.com>
989
03a55252
HB
990 * src/ia64/unix.S: Restore stack pointer when returning from
991 ffi_closure_UNIX.
992 * src/ia64/ffi.c: Fix typo in comment.
993
df5da1c4
JW
9942001-04-18 Jim Wilson <wilson@redhat.com>
995
996 * src/ia64/unix.S: Delete unnecessary increment and decrement of loc2
997 to eliminate RAW DV.
998
52c28977
BM
9992001-04-12 Bryce McKinlay <bryce@albatross.co.nz>
1000
1001 * Makefile.am: Make a libtool convenience library.
1002 * Makefile.in: Rebuilt.
1003
3b905056
BM
10042001-03-29 Bryce McKinlay <bryce@albatross.co.nz>
1005
1006 * configure.in: Use different syntax for subdirectory creation.
1007 * configure: Rebuilt.
1008
d6c4152a
JB
10092001-03-27 Jon Beniston <jon@beniston.com>
1010
1011 * configure.in: Added X86_WIN32 target (Win32, CygWin, MingW).
1012 * configure: Rebuilt.
1013 * Makefile.am: Added X86_WIN32 target support.
1014 * Makefile.in: Rebuilt.
1015
1016 * include/ffi.h.in: Added X86_WIN32 target support.
1017
1018 * src/ffitest.c: Doesn't run structure tests for X86_WIN32 targets.
1019 * src/types.c: Added X86_WIN32 target support.
1020
1021 * src/x86/win32.S: New file. Based on sysv.S, but with EH
1022 stuff removed and made to work with CygWin's gas.
1023
675cdab3
BM
10242001-03-26 Bryce McKinlay <bryce@albatross.co.nz>
1025
1026 * configure.in: Make target subdirectory in build dir.
1027 * Makefile.am: Override suffix based rules to specify correct output
1028 subdirectory.
1029 * Makefile.in: Rebuilt.
1030 * configure: Rebuilt.
1031
e5f8858a 10322001-03-23 Kevin B Hendricks <khendricks@ivey.uwo.ca>
cc4c8975
KH
1033
1034 * src/powerpc/ppc_closure.S: New file.
1035 * src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug
1036 involving long long and register pairs.
1037 (ffi_prep_closure): New function.
1038 (flush_icache): Likewise.
1039 (ffi_closure_helper_SYSV): Likewise.
1040 * include/ffi.h.in (FFI_CLOSURES): Define on PPC.
1041 (FFI_TRAMPOLINE_SIZE): Likewise.
1042 (FFI_NATIVE_RAW_API): Likewise.
1043 * Makefile.in: Rebuilt.
1044 * Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S.
1045 (TARGET_SRC_POWERPC): Likewise.
1046
9450a929
TT
10472001-03-19 Tom Tromey <tromey@redhat.com>
1048
1049 * Makefile.in: Rebuilt.
1050 * Makefile.am (ffitest_LDFLAGS): New macro.
1051
4d2cf715
NC
10522001-03-02 Nick Clifton <nickc@redhat.com>
1053
1054 * include/ffi.h.in: Remove RCS ident string.
1055 * include/ffi_mips.h: Remove RCS ident string.
1056 * src/debug.c: Remove RCS ident string.
1057 * src/ffitest.c: Remove RCS ident string.
1058 * src/prep_cif.c: Remove RCS ident string.
1059 * src/types.c: Remove RCS ident string.
1060 * src/alpha/ffi.c: Remove RCS ident string.
1061 * src/alpha/osf.S: Remove RCS ident string.
1062 * src/arm/ffi.c: Remove RCS ident string.
1063 * src/arm/sysv.S: Remove RCS ident string.
1064 * src/mips/ffi.c: Remove RCS ident string.
1065 * src/mips/n32.S: Remove RCS ident string.
1066 * src/mips/o32.S: Remove RCS ident string.
1067 * src/sparc/ffi.c: Remove RCS ident string.
1068 * src/sparc/v8.S: Remove RCS ident string.
1069 * src/sparc/v9.S: Remove RCS ident string.
1070 * src/x86/ffi.c: Remove RCS ident string.
1071 * src/x86/sysv.S: Remove RCS ident string.
1072
7e5fd99f
JM
10732001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
1074
1075 * include/ffi.h.in: Change sourceware.cygnus.com references to
1076 gcc.gnu.org.
1077
3f67ba6e
RH
10782000-12-09 Richard Henderson <rth@redhat.com>
1079
1080 * src/alpha/ffi.c (ffi_call): Simplify struct return test.
1081 (ffi_closure_osf_inner): Index rather than increment avalue
1082 and arg_types. Give ffi_closure_osf the raw return value type.
1083 * src/alpha/osf.S (ffi_closure_osf): Handle return value type
1084 promotion.
1085
10862000-12-07 Richard Henderson <rth@redhat.com>
29fe0479
RH
1087
1088 * src/raw_api.c (ffi_translate_args): Fix typo.
1089 (ffi_prep_closure): Likewise.
1090
1091 * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
1092 FFI_TRAMPOLINE_SIZE.
1093 * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
1094 cif->bytes for new ffi_call_osf implementation.
1095 (ffi_prep_args): Absorb into ...
1096 (ffi_call): ... here. Do all stack allocation here and
1097 avoid a callback function.
1098 (ffi_prep_closure, ffi_closure_osf_inner): New.
1099 * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
1100 (ffi_closure_osf): New.
1101
2f7bf5b7
AO
11022000-09-10 Alexandre Oliva <aoliva@redhat.com>
1103
ed1c1a1a
AO
1104 * config.guess, config.sub, install-sh: Removed.
1105 * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
1106 * Makefile.in: Rebuilt.
1107
2f7bf5b7
AO
1108 * acinclude.m4: Include libtool macros from the top level.
1109 * aclocal.m4, configure: Rebuilt.
1110
e15a68e7
AO
11112000-08-22 Alexandre Oliva <aoliva@redhat.com>
1112
1113 * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
1114 * configure: Rebuilt.
1115
7f8c11d5
SB
11162000-05-11 Scott Bambrough <scottb@netwinder.org>
1117
4977bab6
ZW
1118 * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to
1119 memory correctly. Use conditional instructions, not branches where
7f8c11d5
SB
1120 possible.
1121
c5acf51f
TT
11222000-05-04 Tom Tromey <tromey@cygnus.com>
1123
1124 * configure: Rebuilt.
1125 * configure.in: Match `arm*-*-linux-*'.
1126 From Chris Dornan <cdornan@arm.com>.
1127
91bffbe9
JJ
11282000-04-28 Jakub Jelinek <jakub@redhat.com>
1129
1130 * Makefile.am (SUBDIRS): Define.
1131 (AM_MAKEFLAGS): Likewise.
1132 (Multilib support.): Add section.
1133 * Makefile.in: Rebuilt.
1134 * ltconfig (extra_compiler_flags, extra_compiler_flags_value):
4075db8f
BT
1135 New variables. Set for gcc using -print-multi-lib. Export them
1136 to libtool.
1137 (sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
1138 * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
1139 for -shared links.
1140 (extra_compiler_flags_value, extra_compiler_flags): Check these
1141 for extra compiler options which need to be passed down in
1142 compiler_flags.
91bffbe9 1143
bd66587e
AG
11442000-04-16 Anthony Green <green@redhat.com>
1145
1146 * configure: Rebuilt.
1147 * configure.in: Change i*86-pc-linux* to i*86-*-linux*.
1148
3791773c
JJ
11492000-04-14 Jakub Jelinek <jakub@redhat.com>
1150
4075db8f 1151 * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
3791773c
JJ
1152 Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
1153 * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
1154 Replace all void * sizeofs with sizeof(int).
1155 Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
1156 different than DOUBLE.
1157 Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
1158 (ffi_prep_args_v9): New function.
1159 (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
1160 (ffi_V9_return_struct): New function.
1161 (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
1162 32bit code (not yet cross-arch calls).
1163 * src/sparc/v8.S: Add struct return delay nop.
1164 Handle long long.
1165 * src/sparc/v9.S: New file.
1166 * src/prep_cif.c (ffi_prep_cif): Return structure pointer
1167 is used on sparc64 only for structures larger than 32 bytes.
1168 Pass by reference for structures is done for structure arguments
1169 larger than 16 bytes.
1170 * src/ffitest.c (main): Use 64bit rint on sparc64.
1171 Run long long tests on sparc.
1172 * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
1173 sparc64.
1174 (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
1175 on sparc64.
1176 * configure.in (sparc-*-linux*): New supported target.
1177 (sparc64-*-linux*): Likewise.
1178 * configure: Rebuilt.
1179 * Makefile.am: Add v9.S to SPARC files.
1180 * Makefile.in: Likewise.
1181 (LINK): Surround $(CCLD) into double quotes, so that multilib
1182 compiles work correctly.
1183
db459595
APB
11842000-04-04 Alexandre Petit-Bianco <apbianco@cygnus.com>
1185
1186 * configure: Rebuilt.
1187 * configure.in: (i*86-*-solaris*): New libffi target. Patch
1188 proposed by Bryce McKinlay.
1189
c1f63902
TT
11902000-03-20 Tom Tromey <tromey@cygnus.com>
1191
1192 * Makefile.in: Hand edit for java_raw_api.lo.
1193
0f72dc9e
BM
11942000-03-08 Bryce McKinlay <bryce@albatross.co.nz>
1195
1196 * config.guess, config.sub: Update from the gcc tree.
1197 Fix for PR libgcj/168.
1198
3c18f2d1
TT
11992000-03-03 Tom Tromey <tromey@cygnus.com>
1200
323eee8a
TT
1201 * Makefile.in: Fixed ia64 by hand.
1202
3c18f2d1
TT
1203 * configure: Rebuilt.
1204 * configure.in (--enable-multilib): New option.
1205 (libffi_basedir): New subst.
1206 (AC_OUTPUT): Added multilib code.
1207
a2b10a92
TT
12082000-03-02 Tom Tromey <tromey@cygnus.com>
1209
1210 * Makefile.in: Rebuilt.
1211 * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
1212 directory name.
1213
dc5de370
HB
12142000-02-25 Hans Boehm <boehm@acm.org>
1215
1216 * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
1217 files.
1218 * src/raw_api.c (ffi_translate_args): Fixed typo in argument
1219 list.
1220 (ffi_prep_raw_closure): Use ffi_translate_args, not
1221 ffi_closure_translate.
1222 * src/java_raw_api.c: New file.
1223 * src/ffitest.c (closure_test_fn): New function.
1224 (main): Define `rint' as long long on IA64. Added new test when
1225 FFI_CLOSURES is defined.
1226 * include/ffi.h.in (ALIGN): Use size_t, not unsigned.
1227 (ffi_abi): Recognize IA64.
1228 (ffi_raw): Added `flt' field.
1229 Added "Java raw API" code.
1230 * configure.in: Recognize ia64.
1231 * Makefile.am (TARGET_SRC_IA64): New macro.
1232 (libffi_la_common_SOURCES): Added java_raw_api.c.
1233 (libffi_la_SOURCES): Define in IA64 case.
1234
d79229bd
TT
12352000-01-04 Tom Tromey <tromey@cygnus.com>
1236
1237 * Makefile.in: Rebuilt with newer automake.
1238
2c33b220
TT
12391999-12-31 Tom Tromey <tromey@cygnus.com>
1240
1241 * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
1242
6ba9e3b0
TT
12431999-09-01 Tom Tromey <tromey@cygnus.com>
1244
1245 * include/ffi.h.in: Removed PACKAGE and VERSION defines and
1246 undefs.
1247 * fficonfig.h.in: Rebuilt.
1248 * configure: Rebuilt.
1249 * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
1250 Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
1251 * acconfig.h: Don't #undef PACKAGE or VERSION.
1252
63e5e3e0
AG
12531999-08-09 Anthony Green <green@cygnus.com>
1254
1255 * include/ffi.h.in: Try to work around messy header problem
1256 with PACKAGE and VERSION.
1257
1258 * configure: Rebuilt.
1259 * configure.in: Change version to 2.00-beta.
1260
4075db8f 1261 * fficonfig.h.in: Rebuilt.
63e5e3e0
AG
1262 * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
1263
1264 * src/x86/ffi.c (ffi_raw_call): Rename.
1265
12661999-08-02 Kresten Krab Thorup <krab@dominiq.is.s.u-tokyo.ac.jp>
1267
1268 * src/x86/ffi.c (ffi_closure_SYSV): New function.
1269 (ffi_prep_incoming_args_SYSV): Ditto.
1270 (ffi_prep_closure): Ditto.
1271 (ffi_closure_raw_SYSV): Ditto.
1272 (ffi_prep_raw_closure): More ditto.
1273 (ffi_call_raw): Final ditto.
1274
1275 * include/ffi.h.in: Add definitions for closure and raw API.
1276
1277 * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
4977bab6 1278 FFI_TYPE_UINT64.
63e5e3e0
AG
1279
1280 * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
1281
1282 * src/raw_api.c: New file.
1283
1284 * include/ffi.h.in (ffi_raw): New type.
1285 (UINT_ARG, SINT_ARG): New defines.
1286 (ffi_closure, ffi_raw_closure): New types.
1287 (ffi_prep_closure, ffi_prep_raw_closure): New declarations.
4977bab6 1288
63e5e3e0
AG
1289 * configure.in: Add check for endianness and sizeof void*.
1290
1291 * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
1292 instead of directly.
1293
1294 * configure: Rebuilt.
1295
1296Thu Jul 8 14:28:42 1999 Anthony Green <green@cygnus.com>
1297
1298 * configure.in: Add x86 and powerpc BeOS configurations.
1299 From Makoto Kato <m_kato@ga2.so-net.ne.jp>.
1300
13011999-05-09 Anthony Green <green@cygnus.com>
1302
1303 * configure.in: Add warning about this being beta code.
1304 Remove src/Makefile.am from the picture.
1305 * configure: Rebuilt.
1306
1307 * Makefile.am: Move logic from src/Makefile.am. Add changes
1308 to support libffi as a target library.
1309 * Makefile.in: Rebuilt.
1310
1311 * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
1312 Upgraded to new autoconf, automake, libtool.
1313
1314 * README: Tweaks.
1315
1316 * LICENSE: Update copyright date.
1317
1318 * src/Makefile.am, src/Makefile.in: Removed.
1319
13201998-11-29 Anthony Green <green@cygnus.com>
1321
1322 * include/ChangeLog: Removed.
1323 * src/ChangeLog: Removed.
1324 * src/mips/ChangeLog: Removed.
1325 * src/sparc/ChangeLog: Remboved.
1326 * src/x86/ChangeLog: Removed.
1327
1328 * ChangeLog.v1: Created.