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