1*1fd5a2e1SPrashanth Swaminathan2014-03-16 Josh Triplett <[email protected]> 2*1fd5a2e1SPrashanth Swaminathan 3*1fd5a2e1SPrashanth Swaminathan * ChangeLog: Archive to ChangeLog.libffi-3.1 and delete. Future 4*1fd5a2e1SPrashanth Swaminathan changelogs will come from git, with autogenerated snapshots shipped in 5*1fd5a2e1SPrashanth Swaminathan distributed tarballs. 6*1fd5a2e1SPrashanth Swaminathan 7*1fd5a2e1SPrashanth Swaminathan2014-03-16 Josh Triplett <[email protected]> 8*1fd5a2e1SPrashanth Swaminathan 9*1fd5a2e1SPrashanth Swaminathan Add support for stdcall, thiscall, and fastcall on non-Windows 10*1fd5a2e1SPrashanth Swaminathan x86-32. 11*1fd5a2e1SPrashanth Swaminathan 12*1fd5a2e1SPrashanth Swaminathan Linux supports the stdcall calling convention, either via 13*1fd5a2e1SPrashanth Swaminathan functions explicitly declared with the stdcall attribute, or via 14*1fd5a2e1SPrashanth Swaminathan code compiled with -mrtd which effectively makes stdcall the 15*1fd5a2e1SPrashanth Swaminathan default. 16*1fd5a2e1SPrashanth Swaminathan 17*1fd5a2e1SPrashanth Swaminathan This introduces FFI_STDCALL, FFI_THISCALL, and FFI_FASTCALL on 18*1fd5a2e1SPrashanth Swaminathan non-Windows x86-32 platforms, as non-default calling conventions. 19*1fd5a2e1SPrashanth Swaminathan 20*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Compile in src/x86/win32.S on non-Windows x86-32. 21*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h: Add FFI_STDCALL, FFI_THISCALL, and 22*1fd5a2e1SPrashanth Swaminathan FFI_FASTCALL on non-Windows x86-32. Increase trampoline size to 23*1fd5a2e1SPrashanth Swaminathan accomodate these calling conventions, and unify some ifdeffery. 24*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Add support for FFI_STDCALL, FFI_THISCALL, and 25*1fd5a2e1SPrashanth Swaminathan FFI_FASTCALL on non-Windows x86-32 platforms; update ifdeffery. 26*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S: Support compiling on non-Windows x86-32 27*1fd5a2e1SPrashanth Swaminathan platforms. On those platforms, avoid redefining the SYSV symbols 28*1fd5a2e1SPrashanth Swaminathan already provided by src/x86/sysv.S. 29*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_stdcall.c: Run on non-Windows. 30*1fd5a2e1SPrashanth Swaminathan #define __stdcall if needed. 31*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_thiscall.c: Run on non-Windows. 32*1fd5a2e1SPrashanth Swaminathan #define __fastcall if needed. 33*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis1_win32.c: Run on non-Windows. 34*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis2_win32.c: Ditto. 35*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis3_win32.c: Ditto. 36*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many2_win32.c: Ditto. 37*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many_win32.c: Ditto. 38*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/strlen2_win32.c: Ditto. 39*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/strlen_win32.c: Ditto. 40*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct1_win32.c: Ditto. 41*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct2_win32.c: Ditto. 42*1fd5a2e1SPrashanth Swaminathan 43*1fd5a2e1SPrashanth Swaminathan2014-03-16 Josh Triplett <[email protected]> 44*1fd5a2e1SPrashanth Swaminathan 45*1fd5a2e1SPrashanth Swaminathan * prep_cif.c: Remove unnecessary ifdef for X86_WIN32. 46*1fd5a2e1SPrashanth Swaminathan ffi_prep_cif_core had a special case for X86_WIN32, checking for 47*1fd5a2e1SPrashanth Swaminathan FFI_THISCALL in addition to the FFI_FIRST_ABI-to-FFI_LAST_ABI 48*1fd5a2e1SPrashanth Swaminathan range before returning FFI_BAD_ABI. However, on X86_WIN32, 49*1fd5a2e1SPrashanth Swaminathan FFI_THISCALL already falls in that range, making the special case 50*1fd5a2e1SPrashanth Swaminathan unnecessary. Remove it. 51*1fd5a2e1SPrashanth Swaminathan 52*1fd5a2e1SPrashanth Swaminathan2014-03-16 Josh Triplett <[email protected]> 53*1fd5a2e1SPrashanth Swaminathan 54*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_stdcall.c, 55*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_thiscall.c: Remove fragile stack 56*1fd5a2e1SPrashanth Swaminathan pointer checks. These files included inline assembly to save the 57*1fd5a2e1SPrashanth Swaminathan stack pointer before and after the call, and compare the values. 58*1fd5a2e1SPrashanth Swaminathan However, compilers can and do leave the stack in different states 59*1fd5a2e1SPrashanth Swaminathan for these two pieces of inline assembly, such as by saving a 60*1fd5a2e1SPrashanth Swaminathan temporary value on the stack across the call; observed with gcc 61*1fd5a2e1SPrashanth Swaminathan -Os, and verified as spurious through careful inspection of 62*1fd5a2e1SPrashanth Swaminathan disassembly. 63*1fd5a2e1SPrashanth Swaminathan 64*1fd5a2e1SPrashanth Swaminathan2014-03-16 Josh Triplett <[email protected]> 65*1fd5a2e1SPrashanth Swaminathan 66*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many.c: Avoid spurious failure due to 67*1fd5a2e1SPrashanth Swaminathan excess floating-point precision. 68*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many_win32.c: Ditto. 69*1fd5a2e1SPrashanth Swaminathan 70*1fd5a2e1SPrashanth Swaminathan2014-03-16 Josh Triplett <[email protected]> 71*1fd5a2e1SPrashanth Swaminathan 72*1fd5a2e1SPrashanth Swaminathan * libtool-ldflags: Re-add. 73*1fd5a2e1SPrashanth Swaminathan 74*1fd5a2e1SPrashanth Swaminathan2014-03-16 Josh Triplett <[email protected]> 75*1fd5a2e1SPrashanth Swaminathan 76*1fd5a2e1SPrashanth Swaminathan * Makefile.in, aclocal.m4, compile, config.guess, config.sub, 77*1fd5a2e1SPrashanth Swaminathan configure, depcomp, include/Makefile.in, install-sh, 78*1fd5a2e1SPrashanth Swaminathan libtool-ldflags, ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, 79*1fd5a2e1SPrashanth Swaminathan m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4, 80*1fd5a2e1SPrashanth Swaminathan man/Makefile.in, mdate-sh, missing, testsuite/Makefile.in: Delete 81*1fd5a2e1SPrashanth Swaminathan autogenerated files from version control. 82*1fd5a2e1SPrashanth Swaminathan * .gitignore: Add autogenerated files. 83*1fd5a2e1SPrashanth Swaminathan * autogen.sh: New script to generate the autogenerated files. 84*1fd5a2e1SPrashanth Swaminathan * README: Document requirement to run autogen.sh when building 85*1fd5a2e1SPrashanth Swaminathan directly from version control. 86*1fd5a2e1SPrashanth Swaminathan * .travis.yml: Run autogen.sh 87*1fd5a2e1SPrashanth Swaminathan 88*1fd5a2e1SPrashanth Swaminathan2014-03-14 Anthony Green <[email protected]> 89*1fd5a2e1SPrashanth Swaminathan 90*1fd5a2e1SPrashanth Swaminathan * configure, Makefile.in: Rebuilt. 91*1fd5a2e1SPrashanth Swaminathan 92*1fd5a2e1SPrashanth Swaminathan2014-03-10 Mike Hommey <[email protected]> 93*1fd5a2e1SPrashanth Swaminathan 94*1fd5a2e1SPrashanth Swaminathan * configure.ac: Allow building for mipsel with Android NDK r8. 95*1fd5a2e1SPrashanth Swaminathan * Makefile.am (AM_MAKEFLAGS): Replace double quotes with single 96*1fd5a2e1SPrashanth Swaminathan quotes. 97*1fd5a2e1SPrashanth Swaminathan 98*1fd5a2e1SPrashanth Swaminathan2014-03-10 Landry Breuil <[email protected]> 99*1fd5a2e1SPrashanth Swaminathan 100*1fd5a2e1SPrashanth Swaminathan * configure.ac: Ensure the linker supports @unwind sections in libffi. 101*1fd5a2e1SPrashanth Swaminathan 102*1fd5a2e1SPrashanth Swaminathan2014-03-01 Anthony Green <[email protected]> 103*1fd5a2e1SPrashanth Swaminathan 104*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Replace old scripts with 105*1fd5a2e1SPrashanth Swaminathan generate-darwin-source-and-headers.py. 106*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 107*1fd5a2e1SPrashanth Swaminathan 108*1fd5a2e1SPrashanth Swaminathan2014-02-28 Anthony Green <[email protected]> 109*1fd5a2e1SPrashanth Swaminathan 110*1fd5a2e1SPrashanth Swaminathan * Makefile.am (AM_CFLAGS): Reintroduce missing -DFFI_DEBUG for 111*1fd5a2e1SPrashanth Swaminathan --enable-debug builds. 112*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 113*1fd5a2e1SPrashanth Swaminathan 114*1fd5a2e1SPrashanth Swaminathan2014-02-28 Makoto Kato <[email protected]> 115*1fd5a2e1SPrashanth Swaminathan 116*1fd5a2e1SPrashanth Swaminathan * src/closures.c: Fix build failure when using clang for Android. 117*1fd5a2e1SPrashanth Swaminathan 118*1fd5a2e1SPrashanth Swaminathan2014-02-28 Marcin Wojdyr <[email protected]> 119*1fd5a2e1SPrashanth Swaminathan 120*1fd5a2e1SPrashanth Swaminathan * libffi.pc.in (toolexeclibdir): use -L${toolexeclibdir} instead 121*1fd5a2e1SPrashanth Swaminathan of -L${libdir}. 122*1fd5a2e1SPrashanth Swaminathan 123*1fd5a2e1SPrashanth Swaminathan2014-02-28 Paulo Pizarro <[email protected]> 124*1fd5a2e1SPrashanth Swaminathan 125*1fd5a2e1SPrashanth Swaminathan * src/bfin/sysv.S: Calling functions in shared libraries requires 126*1fd5a2e1SPrashanth Swaminathan considering the GOT. 127*1fd5a2e1SPrashanth Swaminathan 128*1fd5a2e1SPrashanth Swaminathan2014-02-28 Josh Triplett <[email protected]> 129*1fd5a2e1SPrashanth Swaminathan 130*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (classify_argument): Handle case where 131*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_LONGDOUBLE == FFI_TYPE_DOUBLE. 132*1fd5a2e1SPrashanth Swaminathan 133*1fd5a2e1SPrashanth Swaminathan2014-02-28 Anthony Green <[email protected]> 134*1fd5a2e1SPrashanth Swaminathan 135*1fd5a2e1SPrashanth Swaminathan * ltmain.sh: Generate with libtool-2.4.2.418. 136*1fd5a2e1SPrashanth Swaminathan * m4/libtool.m4, m4/ltoptions.m4, m4/ltversion.m4: Ditto. 137*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 138*1fd5a2e1SPrashanth Swaminathan 139*1fd5a2e1SPrashanth Swaminathan2014-02-28 Dominik Vogt <[email protected]> 140*1fd5a2e1SPrashanth Swaminathan 141*1fd5a2e1SPrashanth Swaminathan * configure.ac (AC_ARG_ENABLE struct): Fix typo in help 142*1fd5a2e1SPrashanth Swaminathan message. 143*1fd5a2e1SPrashanth Swaminathan (AC_ARG_ENABLE raw_api): Ditto. 144*1fd5a2e1SPrashanth Swaminathan * configure, fficonfig.h.in: Rebuilt. 145*1fd5a2e1SPrashanth Swaminathan 146*1fd5a2e1SPrashanth Swaminathan2014-02-28 Will Newton <[email protected]> 147*1fd5a2e1SPrashanth Swaminathan 148*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Initialize IP register with FP. 149*1fd5a2e1SPrashanth Swaminathan 150*1fd5a2e1SPrashanth Swaminathan2014-02-28 Yufeng Zhang <[email protected]> 151*1fd5a2e1SPrashanth Swaminathan 152*1fd5a2e1SPrashanth Swaminathan * src/aarch64/sysv.S (ffi_closure_SYSV): Use x29 as the 153*1fd5a2e1SPrashanth Swaminathan main CFA reg; update cfi_rel_offset. 154*1fd5a2e1SPrashanth Swaminathan 155*1fd5a2e1SPrashanth Swaminathan2014-02-15 Marcus Comstedt <[email protected]> 156*1fd5a2e1SPrashanth Swaminathan 157*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_linux64.c, src/powerpc/linux64_closure.S: Remove 158*1fd5a2e1SPrashanth Swaminathan assumption on contents of r11 in closure. 159*1fd5a2e1SPrashanth Swaminathan 160*1fd5a2e1SPrashanth Swaminathan2014-02-09 Heiher <[email protected]> 161*1fd5a2e1SPrashanth Swaminathan 162*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S: Fix call floating point va function. 163*1fd5a2e1SPrashanth Swaminathan 164*1fd5a2e1SPrashanth Swaminathan2014-01-21 Zachary Waldowski <[email protected]> 165*1fd5a2e1SPrashanth Swaminathan 166*1fd5a2e1SPrashanth Swaminathan * src/aarch64/ffi.c: Fix missing semicolons on assertions under 167*1fd5a2e1SPrashanth Swaminathan debug mode. 168*1fd5a2e1SPrashanth Swaminathan 169*1fd5a2e1SPrashanth Swaminathan2013-12-30 Zachary Waldowski <[email protected]> 170*1fd5a2e1SPrashanth Swaminathan 171*1fd5a2e1SPrashanth Swaminathan * .gitignore: Exclude darwin_* generated source and build_* trees. 172*1fd5a2e1SPrashanth Swaminathan * src/aarch64/ffi.c, src/arm/ffi.c, src/x86/ffi.c: Inhibit Clang 173*1fd5a2e1SPrashanth Swaminathan previous prototype warnings. 174*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c: Prevent NULL dereference, fix short type warning 175*1fd5a2e1SPrashanth Swaminathan * src/dlmalloc.c: Fix warnings from set_segment_flags return type, 176*1fd5a2e1SPrashanth Swaminathan and the native use of size_t for malloc on platforms 177*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Use unified syntax. Clang clean-ups for 178*1fd5a2e1SPrashanth Swaminathan ARM_FUNC_START. 179*1fd5a2e1SPrashanth Swaminathan * generate-osx-source-and-headers.py: Remove. 180*1fd5a2e1SPrashanth Swaminathan * build-ios.sh: Remove. 181*1fd5a2e1SPrashanth Swaminathan * libffi.xcodeproj/project.pbxproj: Rebuild targets. Include 182*1fd5a2e1SPrashanth Swaminathan x86_64+aarch64 pieces in library. Export headers properly. 183*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c: More Clang warning clean-ups. 184*1fd5a2e1SPrashanth Swaminathan * src/closures.c (open_temp_exec_file_dir): Use size_t. 185*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif_core): Cast ALIGN result. 186*1fd5a2e1SPrashanth Swaminathan * src/aarch64/sysv.S: Use CNAME for global symbols. Only use 187*1fd5a2e1SPrashanth Swaminathan .size for ELF targets. 188*1fd5a2e1SPrashanth Swaminathan * src/aarch64/ffi.c: Clean up for double == long double. Clean up 189*1fd5a2e1SPrashanth Swaminathan from Clang warnings. Use Clang cache invalidation builtin. Use 190*1fd5a2e1SPrashanth Swaminathan size_t in place of unsigned in many places. Accommodate for 191*1fd5a2e1SPrashanth Swaminathan differences in Apple AArch64 ABI. 192*1fd5a2e1SPrashanth Swaminathan 193*1fd5a2e1SPrashanth Swaminathan2013-12-02 Daniel Rodríguez Troitiño <[email protected]> 194*1fd5a2e1SPrashanth Swaminathan 195*1fd5a2e1SPrashanth Swaminathan * generate-darwin-source-and-headers.py: Clean up, modernize, 196*1fd5a2e1SPrashanth Swaminathan merged version of previous scripts. 197*1fd5a2e1SPrashanth Swaminathan 198*1fd5a2e1SPrashanth Swaminathan2013-11-21 Anthony Green <[email protected]> 199*1fd5a2e1SPrashanth Swaminathan 200*1fd5a2e1SPrashanth Swaminathan * configure, Makefile.in, include/Makefile.in, include/ffi.h.in, 201*1fd5a2e1SPrashanth Swaminathan man/Makefile.in, testsuite/Makefile.in, fficonfig.h.in: Rebuilt. 202*1fd5a2e1SPrashanth Swaminathan 203*1fd5a2e1SPrashanth Swaminathan2013-11-21 Alan Modra <[email protected]> 204*1fd5a2e1SPrashanth Swaminathan 205*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add new src/powerpc files. 206*1fd5a2e1SPrashanth Swaminathan (nodist_libffi_la_SOURCES <POWERPC, POWERPC_FREEBSD>): Likewise. 207*1fd5a2e1SPrashanth Swaminathan * configure.ac (HAVE_LONG_DOUBLE_VARIANT): Define for powerpc. 208*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (ffi_prep_types): Declare. 209*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif_core): Call ffi_prep_types. 210*1fd5a2e1SPrashanth Swaminathan * src/types.c (FFI_NONCONST_TYPEDEF): Define and use for 211*1fd5a2e1SPrashanth Swaminathan HAVE_LONG_DOUBLE_VARIANT. 212*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_powerpc.h: New file. 213*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Split into.. 214*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_sysv.c: ..new file, and.. 215*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_linux64.c: ..new file, rewriting parts. 216*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h (enum ffi_abi): Rewrite powerpc ABI 217*1fd5a2e1SPrashanth Swaminathan selection as bits controlling features. 218*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S: For consistency, use POWERPC64 rather 219*1fd5a2e1SPrashanth Swaminathan than __powerpc64__. 220*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S: Likewise. 221*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Likewise. Move .note.FNU-stack 222*1fd5a2e1SPrashanth Swaminathan inside guard. 223*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Likewise. 224*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 225*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Regenerate. 226*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 227*1fd5a2e1SPrashanth Swaminathan 228*1fd5a2e1SPrashanth Swaminathan2013-11-20 Alan Modra <[email protected]> 229*1fd5a2e1SPrashanth Swaminathan 230*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_cif_machdep_core): Use 231*1fd5a2e1SPrashanth Swaminathan NUM_FPR_ARG_REGISTERS64 and NUM_GPR_ARG_REGISTERS64 not their 232*1fd5a2e1SPrashanth Swaminathan 32-bit versions for 64-bit code. 233*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S: Don't use the return value area 234*1fd5a2e1SPrashanth Swaminathan as a parameter save area on ELFv2. 235*1fd5a2e1SPrashanth Swaminathan 236*1fd5a2e1SPrashanth Swaminathan2013-11-18 Iain Sandoe <[email protected]> 237*1fd5a2e1SPrashanth Swaminathan 238*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S (EH): Correct use of pcrel FDE encoding. 239*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S (EH): Likewise. Modernise picbase 240*1fd5a2e1SPrashanth Swaminathan labels. 241*1fd5a2e1SPrashanth Swaminathan 242*1fd5a2e1SPrashanth Swaminathan2013-11-18 Anthony Green <[email protected]> 243*1fd5a2e1SPrashanth Swaminathan 244*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_call): Hoist declaration of temp to top of 245*1fd5a2e1SPrashanth Swaminathan function. 246*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_closure_inner): Moderize function declaration 247*1fd5a2e1SPrashanth Swaminathan to appease compiler. 248*1fd5a2e1SPrashanth Swaminathan Thanks for Gregory P. Smith <[email protected]>. 249*1fd5a2e1SPrashanth Swaminathan 250*1fd5a2e1SPrashanth Swaminathan2013-11-18 Anthony Green <[email protected]> 251*1fd5a2e1SPrashanth Swaminathan 252*1fd5a2e1SPrashanth Swaminathan * README (tested): Mention PowerPC ELFv2. 253*1fd5a2e1SPrashanth Swaminathan 254*1fd5a2e1SPrashanth Swaminathan2013-11-16 Alan Modra <[email protected]> 255*1fd5a2e1SPrashanth Swaminathan 256*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Move errant #endif to where it belongs. 257*1fd5a2e1SPrashanth Swaminathan Don't bl .Luint128. 258*1fd5a2e1SPrashanth Swaminathan 259*1fd5a2e1SPrashanth Swaminathan2013-11-16 Alan Modra <[email protected]> 260*1fd5a2e1SPrashanth Swaminathan 261*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_cif_machdep_core): Use #if _CALL_ELF 262*1fd5a2e1SPrashanth Swaminathan test to select parameter save sizing for ELFv2 vs. ELFv1. 263*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h (FFI_V2_TYPE_FLOAT_HOMOG, 264*1fd5a2e1SPrashanth Swaminathan FFI_V2_TYPE_DOUBLE_HOMOG, FFI_V2_TYPE_SMALL_STRUCT): Define. 265*1fd5a2e1SPrashanth Swaminathan (FFI_TRAMPOLINE_SIZE): Define variant for ELFv2. 266*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (FLAG_ARG_NEEDS_PSAVE): Define. 267*1fd5a2e1SPrashanth Swaminathan (discover_homogeneous_aggregate): New function. 268*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args64): Adjust start of param save area for ELFv2. 269*1fd5a2e1SPrashanth Swaminathan Handle homogenous floating point struct parms. 270*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep_core): Adjust space calculation for ELFv2. 271*1fd5a2e1SPrashanth Swaminathan Handle ELFv2 return values. Set FLAG_ARG_NEEDS_PSAVE. Handle 272*1fd5a2e1SPrashanth Swaminathan homogenous floating point structs. 273*1fd5a2e1SPrashanth Swaminathan (ffi_call): Increase size of smst_buffer for ELFv2. Handle ELFv2. 274*1fd5a2e1SPrashanth Swaminathan (flush_icache): Compile for ELFv2. 275*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Set up ELFv2 trampoline. 276*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_LINUX64): Don't return all structs directly 277*1fd5a2e1SPrashanth Swaminathan to caller. Handle homogenous floating point structs. Handle 278*1fd5a2e1SPrashanth Swaminathan ELFv2 struct return values. 279*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S (ffi_call_LINUX64): Set up r2 for 280*1fd5a2e1SPrashanth Swaminathan ELFv2. Adjust toc save location. Call function pointer using 281*1fd5a2e1SPrashanth Swaminathan r12. Handle FLAG_RETURNS_SMST. Don't predict branches. 282*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Set up r2 283*1fd5a2e1SPrashanth Swaminathan for ELFv2. Define ELFv2 versions of STACKFRAME, PARMSAVE, and 284*1fd5a2e1SPrashanth Swaminathan RETVAL. Handle possibly missing parameter save area. Handle 285*1fd5a2e1SPrashanth Swaminathan ELFv2 return values. 286*1fd5a2e1SPrashanth Swaminathan (.note.GNU-stack): Move inside outer #ifdef. 287*1fd5a2e1SPrashanth Swaminathan 288*1fd5a2e1SPrashanth Swaminathan2013-11-16 Alan Modra <[email protected]> 289*1fd5a2e1SPrashanth Swaminathan 290*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_cif_machdep): Revert 2013-02-08 291*1fd5a2e1SPrashanth Swaminathan change. Do not consume an int arg when returning a small struct 292*1fd5a2e1SPrashanth Swaminathan for FFI_SYSV ABI. 293*1fd5a2e1SPrashanth Swaminathan (ffi_call): Only use bounce buffer when FLAG_RETURNS_SMST. 294*1fd5a2e1SPrashanth Swaminathan Properly copy bounce buffer to destination. 295*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Revert 2013-02-08 change. 296*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Remove stray '+'. 297*1fd5a2e1SPrashanth Swaminathan 298*1fd5a2e1SPrashanth Swaminathan2013-11-16 Alan Modra <[email protected]> 299*1fd5a2e1SPrashanth Swaminathan 300*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args64): Align struct parameters 301*1fd5a2e1SPrashanth Swaminathan according to __STRUCT_PARM_ALIGN__. 302*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep_core): Likewise. 303*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_LINUX64): Likewise. 304*1fd5a2e1SPrashanth Swaminathan 305*1fd5a2e1SPrashanth Swaminathan2013-11-16 Alan Modra <[email protected]> 306*1fd5a2e1SPrashanth Swaminathan 307*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S (ffi_call_LINUX64): Tweak restore of r28. 308*1fd5a2e1SPrashanth Swaminathan (.note.GNU-stack): Move inside outer #ifdef. 309*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S (STACKFRAME, PARMSAVE, 310*1fd5a2e1SPrashanth Swaminathan RETVAL): Define and use throughout. 311*1fd5a2e1SPrashanth Swaminathan (ffi_closure_LINUX64): Save fprs before buying stack. 312*1fd5a2e1SPrashanth Swaminathan (.note.GNU-stack): Move inside outer #ifdef. 313*1fd5a2e1SPrashanth Swaminathan 314*1fd5a2e1SPrashanth Swaminathan2013-11-16 Alan Modra <[email protected]> 315*1fd5a2e1SPrashanth Swaminathan 316*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h (FFI_TARGET_SPECIFIC_VARIADIC): Define. 317*1fd5a2e1SPrashanth Swaminathan (FFI_EXTRA_CIF_FIELDS): Define. 318*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args64): Save fprs as per the 319*1fd5a2e1SPrashanth Swaminathan ABI, not to both fpr and param save area. 320*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep_core): Renamed from ffi_prep_cif_machdep. 321*1fd5a2e1SPrashanth Swaminathan Keep initial flags. Formatting. Remove dead FFI_LINUX_SOFT_FLOAT 322*1fd5a2e1SPrashanth Swaminathan code. 323*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep, ffi_prep_cif_machdep_var): New functions. 324*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_LINUX64): Pass floating point as per ABI, 325*1fd5a2e1SPrashanth Swaminathan not to both fpr and parameter save areas. 326*1fd5a2e1SPrashanth Swaminathan 327*1fd5a2e1SPrashanth Swaminathan * libffi/testsuite/libffi.call/cls_double_va.c (main): Correct 328*1fd5a2e1SPrashanth Swaminathan function cast and don't call ffi_prep_cif. 329*1fd5a2e1SPrashanth Swaminathan * libffi/testsuite/libffi.call/cls_longdouble_va.c (main): Likewise. 330*1fd5a2e1SPrashanth Swaminathan 331*1fd5a2e1SPrashanth Swaminathan2013-11-15 Andrew Haley <[email protected]> 332*1fd5a2e1SPrashanth Swaminathan 333*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi (Closure Example): Fix the sample code. 334*1fd5a2e1SPrashanth Swaminathan * doc/libffi.info, doc/stamp-vti, doc/version.texi: Rebuilt. 335*1fd5a2e1SPrashanth Swaminathan 336*1fd5a2e1SPrashanth Swaminathan2013-11-15 Andrew Haley <[email protected]> 337*1fd5a2e1SPrashanth Swaminathan 338*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/va_struct1.c (main): Fix broken test. 339*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint_va.c (cls_ret_T_fn): Likewise 340*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_struct_va1.c (test_fn): Likewise. 341*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/va_1.c (main): Likewise. 342*1fd5a2e1SPrashanth Swaminathan 343*1fd5a2e1SPrashanth Swaminathan2013-11-14 David Schneider <[email protected]> 344*1fd5a2e1SPrashanth Swaminathan 345*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c: Fix register allocation for mixed float and 346*1fd5a2e1SPrashanth Swaminathan doubles. 347*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_many_mixed_float_double.c: Testcase 348*1fd5a2e1SPrashanth Swaminathan for many mixed float and double arguments. 349*1fd5a2e1SPrashanth Swaminathan 350*1fd5a2e1SPrashanth Swaminathan2013-11-13 Alan Modra <[email protected]> 351*1fd5a2e1SPrashanth Swaminathan 352*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi (Simple Example): Correct example code. 353*1fd5a2e1SPrashanth Swaminathan * doc/libffi.info, doc/stamp-vti, doc/version.texi: Rebuilt. 354*1fd5a2e1SPrashanth Swaminathan 355*1fd5a2e1SPrashanth Swaminathan2013-11-13 Anthony Green <[email protected]> 356*1fd5a2e1SPrashanth Swaminathan 357*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h: Respect HAVE_ALLOCA_H for GNU compiler 358*1fd5a2e1SPrashanth Swaminathan based build. (Thanks to tmr111116 on github) 359*1fd5a2e1SPrashanth Swaminathan 360*1fd5a2e1SPrashanth Swaminathan2013-11-09 Anthony Green <[email protected]> 361*1fd5a2e1SPrashanth Swaminathan 362*1fd5a2e1SPrashanth Swaminathan * m4/libtool.m4: Refresh. 363*1fd5a2e1SPrashanth Swaminathan * configure, Makefile.in: Rebuilt. 364*1fd5a2e1SPrashanth Swaminathan * README: Add more notes about next release. 365*1fd5a2e1SPrashanth Swaminathan 366*1fd5a2e1SPrashanth Swaminathan2013-11-09 Shigeharu TAKENO <[email protected]> 367*1fd5a2e1SPrashanth Swaminathan 368*1fd5a2e1SPrashanth Swaminathan * m4/ax_gcc_archflag.m4 (ax_gcc_arch): Don't recognize 369*1fd5a2e1SPrashanth Swaminathan UltraSPARC-IIi as ultrasparc3. 370*1fd5a2e1SPrashanth Swaminathan 371*1fd5a2e1SPrashanth Swaminathan2013-11-06 Mark Kettenis <[email protected]> 372*1fd5a2e1SPrashanth Swaminathan 373*1fd5a2e1SPrashanth Swaminathan * src/x86/freebsd.S (ffi_call_SYSV): Align the stack pointer to 374*1fd5a2e1SPrashanth Swaminathan 16-bytes. 375*1fd5a2e1SPrashanth Swaminathan 376*1fd5a2e1SPrashanth Swaminathan2013-11-06 Konstantin Belousov <[email protected]> 377*1fd5a2e1SPrashanth Swaminathan 378*1fd5a2e1SPrashanth Swaminathan * src/x86/freebsd.S (ffi_closure_raw_SYSV): Mark the assembler 379*1fd5a2e1SPrashanth Swaminathan source as not requiring executable stack. 380*1fd5a2e1SPrashanth Swaminathan 381*1fd5a2e1SPrashanth Swaminathan2013-11-02 Anthony Green <[email protected]> 382*1fd5a2e1SPrashanth Swaminathan 383*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi (The Basics): Clarify return value buffer size 384*1fd5a2e1SPrashanth Swaminathan requirements. Also, NULL result buffer pointers are no longer 385*1fd5a2e1SPrashanth Swaminathan supported. 386*1fd5a2e1SPrashanth Swaminathan * doc/libffi.info: Rebuilt. 387*1fd5a2e1SPrashanth Swaminathan 388*1fd5a2e1SPrashanth Swaminathan2013-11-02 Mischa Jonker <[email protected]> 389*1fd5a2e1SPrashanth Swaminathan 390*1fd5a2e1SPrashanth Swaminathan * Makefile.am (nodist_libffi_la_SOURCES): Fix build error. 391*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 392*1fd5a2e1SPrashanth Swaminathan 393*1fd5a2e1SPrashanth Swaminathan2013-11-02 David Schneider <[email protected]> 394*1fd5a2e1SPrashanth Swaminathan 395*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c: more robust argument handling for closures on arm hardfloat 396*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many_mixed.c: New file. 397*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_many_mixed_args.c: More tests. 398*1fd5a2e1SPrashanth Swaminathan 399*1fd5a2e1SPrashanth Swaminathan2013-11-02 Vitaly Budovski 400*1fd5a2e1SPrashanth Swaminathan 401*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): Don't align stack for win32. 402*1fd5a2e1SPrashanth Swaminathan 403*1fd5a2e1SPrashanth Swaminathan2013-10-23 Mark H Weaver <[email protected]> 404*1fd5a2e1SPrashanth Swaminathan 405*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c: Fix handling of uint32_t arguments on the 406*1fd5a2e1SPrashanth Swaminathan MIPS N32 ABI. 407*1fd5a2e1SPrashanth Swaminathan 408*1fd5a2e1SPrashanth Swaminathan2013-10-13 Sandra Loosemore <[email protected]> 409*1fd5a2e1SPrashanth Swaminathan 410*1fd5a2e1SPrashanth Swaminathan * README: Add Nios II to table of supported platforms. 411*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add nios2 files. 412*1fd5a2e1SPrashanth Swaminathan (nodist_libffi_la_SOURCES): Likewise. 413*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerated. 414*1fd5a2e1SPrashanth Swaminathan * configure.ac (nios2*-linux*): New host. 415*1fd5a2e1SPrashanth Swaminathan (NIOS2): Add AM_CONDITIONAL. 416*1fd5a2e1SPrashanth Swaminathan * configure: Regenerated. 417*1fd5a2e1SPrashanth Swaminathan * src/nios2/ffi.c: New. 418*1fd5a2e1SPrashanth Swaminathan * src/nios2/ffitarget.h: New. 419*1fd5a2e1SPrashanth Swaminathan * src/nios2/sysv.S: New. 420*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (initialize_aggregate): Handle extra structure 421*1fd5a2e1SPrashanth Swaminathan alignment via FFI_AGGREGATE_ALIGNMENT. 422*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_core): Conditionalize structure return for NIOS2. 423*1fd5a2e1SPrashanth Swaminathan 424*1fd5a2e1SPrashanth Swaminathan2013-10-10 Sandra Loosemore <[email protected]> 425*1fd5a2e1SPrashanth Swaminathan 426*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_many_mixed_args.c (cls_ret_double_fn): 427*1fd5a2e1SPrashanth Swaminathan Fix uninitialized variable. 428*1fd5a2e1SPrashanth Swaminathan 429*1fd5a2e1SPrashanth Swaminathan2013-10-11 Marcus Shawcroft <[email protected]> 430*1fd5a2e1SPrashanth Swaminathan 431*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many.c (many): Replace * with +. 432*1fd5a2e1SPrashanth Swaminathan 433*1fd5a2e1SPrashanth Swaminathan2013-10-08 Ondřej Bílka <[email protected]> 434*1fd5a2e1SPrashanth Swaminathan 435*1fd5a2e1SPrashanth Swaminathan * src/aarch64/ffi.c, src/aarch64/sysv.S, src/arm/ffi.c, 436*1fd5a2e1SPrashanth Swaminathan src/arm/gentramp.sh, src/bfin/sysv.S, src/closures.c, 437*1fd5a2e1SPrashanth Swaminathan src/dlmalloc.c, src/ia64/ffi.c, src/microblaze/ffi.c, 438*1fd5a2e1SPrashanth Swaminathan src/microblaze/sysv.S, src/powerpc/darwin_closure.S, 439*1fd5a2e1SPrashanth Swaminathan src/powerpc/ffi.c, src/powerpc/ffi_darwin.c, src/sh/ffi.c, 440*1fd5a2e1SPrashanth Swaminathan src/tile/tile.S, testsuite/libffi.call/nested_struct11.c: Fix 441*1fd5a2e1SPrashanth Swaminathan spelling errors. 442*1fd5a2e1SPrashanth Swaminathan 443*1fd5a2e1SPrashanth Swaminathan2013-10-08 Anthony Green <[email protected]> 444*1fd5a2e1SPrashanth Swaminathan 445*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, compile, config.guess, config.sub, depcomp, 446*1fd5a2e1SPrashanth Swaminathan install-sh, mdate-sh, missing, texinfo.tex: Update from upstream. 447*1fd5a2e1SPrashanth Swaminathan * configure.ac: Update version to 3.0.14-rc0. 448*1fd5a2e1SPrashanth Swaminathan * Makefile.in, configure, Makefile.in, include/Makefile.in, 449*1fd5a2e1SPrashanth Swaminathan man/Makefile.in, testsuite/Makefile.in: Rebuilt. 450*1fd5a2e1SPrashanth Swaminathan * README: Mention M88K and VAX. 451*1fd5a2e1SPrashanth Swaminathan 452*1fd5a2e1SPrashanth Swaminathan2013-07-15 Miod Vallat <[email protected]> 453*1fd5a2e1SPrashanth Swaminathan 454*1fd5a2e1SPrashanth Swaminathan * Makefile.am, 455*1fd5a2e1SPrashanth Swaminathan configure.ac, 456*1fd5a2e1SPrashanth Swaminathan src/m88k/ffi.c, 457*1fd5a2e1SPrashanth Swaminathan src/m88k/ffitarget.h, 458*1fd5a2e1SPrashanth Swaminathan src/m88k/obsd.S, 459*1fd5a2e1SPrashanth Swaminathan src/vax/elfbsd.S, 460*1fd5a2e1SPrashanth Swaminathan src/vax/ffi.c, 461*1fd5a2e1SPrashanth Swaminathan src/vax/ffitarget.h: Add m88k and vax support. 462*1fd5a2e1SPrashanth Swaminathan 463*1fd5a2e1SPrashanth Swaminathan2013-06-24 Alan Modra <[email protected]> 464*1fd5a2e1SPrashanth Swaminathan 465*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args_SYSV): Move var declaration 466*1fd5a2e1SPrashanth Swaminathan before statements. 467*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args64): Support little-endian. 468*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV, ffi_closure_helper_LINUX64): Likewise. 469*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Likewise. 470*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S (ffi_closure_SYSV): Likewise. 471*1fd5a2e1SPrashanth Swaminathan 472*1fd5a2e1SPrashanth Swaminathan2013-06-12 Mischa Jonker <[email protected]> 473*1fd5a2e1SPrashanth Swaminathan 474*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add support for ARC. 475*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Likewise. 476*1fd5a2e1SPrashanth Swaminathan * README: Add ARC details. 477*1fd5a2e1SPrashanth Swaminathan * src/arc/arcompact.S: New. 478*1fd5a2e1SPrashanth Swaminathan * src/arc/ffi.c: Likewise. 479*1fd5a2e1SPrashanth Swaminathan * src/arc/ffitarget.h: Likewise. 480*1fd5a2e1SPrashanth Swaminathan 481*1fd5a2e1SPrashanth Swaminathan2013-03-28 David Schneider <[email protected]> 482*1fd5a2e1SPrashanth Swaminathan 483*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c: Fix support for ARM hard-float calling convention. 484*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: call different methods for SYSV and VFP ABIs. 485*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_many_mixed_args.c: testcase for a closure with 486*1fd5a2e1SPrashanth Swaminathan mixed arguments, many doubles. 487*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many_double.c: testcase for calling a function using 488*1fd5a2e1SPrashanth Swaminathan more than 8 doubles. 489*1fd5a2e1SPrashanth Swaminathan * testcase/libffi.call/many.c: use absolute value to check result against an 490*1fd5a2e1SPrashanth Swaminathan epsilon 491*1fd5a2e1SPrashanth Swaminathan 492*1fd5a2e1SPrashanth Swaminathan2013-03-17 Anthony Green <[email protected]> 493*1fd5a2e1SPrashanth Swaminathan 494*1fd5a2e1SPrashanth Swaminathan * README: Update for 3.0.13. 495*1fd5a2e1SPrashanth Swaminathan * configure.ac: Ditto. 496*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 497*1fd5a2e1SPrashanth Swaminathan * doc/*: Update version. 498*1fd5a2e1SPrashanth Swaminathan 499*1fd5a2e1SPrashanth Swaminathan2013-03-17 Dave Korn <[email protected]> 500*1fd5a2e1SPrashanth Swaminathan 501*1fd5a2e1SPrashanth Swaminathan * src/closures.c (is_emutramp_enabled 502*1fd5a2e1SPrashanth Swaminathan [!FFI_MMAP_EXEC_EMUTRAMP_PAX]): Move default definition outside 503*1fd5a2e1SPrashanth Swaminathan enclosing #if scope. 504*1fd5a2e1SPrashanth Swaminathan 505*1fd5a2e1SPrashanth Swaminathan2013-03-17 Anthony Green <[email protected]> 506*1fd5a2e1SPrashanth Swaminathan 507*1fd5a2e1SPrashanth Swaminathan * configure.ac: Only modify toolexecdir in certain cases. 508*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 509*1fd5a2e1SPrashanth Swaminathan 510*1fd5a2e1SPrashanth Swaminathan2013-03-16 Gilles Talis <[email protected]> 511*1fd5a2e1SPrashanth Swaminathan 512*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args_SYSV): Don't use 513*1fd5a2e1SPrashanth Swaminathan fparg_count,etc on __NO_FPRS__ targets. 514*1fd5a2e1SPrashanth Swaminathan 515*1fd5a2e1SPrashanth Swaminathan2013-03-16 Alan Hourihane <[email protected]> 516*1fd5a2e1SPrashanth Swaminathan 517*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S (epilogue): Don't use extb instruction on 518*1fd5a2e1SPrashanth Swaminathan m680000 machines. 519*1fd5a2e1SPrashanth Swaminathan 520*1fd5a2e1SPrashanth Swaminathan2013-03-16 Alex Gaynor <[email protected]> 521*1fd5a2e1SPrashanth Swaminathan 522*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): Always align stack. 523*1fd5a2e1SPrashanth Swaminathan 524*1fd5a2e1SPrashanth Swaminathan2013-03-13 Markos Chandras <[email protected]> 525*1fd5a2e1SPrashanth Swaminathan 526*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add support for Imagination Technologies Meta. 527*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Likewise. 528*1fd5a2e1SPrashanth Swaminathan * README: Add Imagination Technologies Meta details. 529*1fd5a2e1SPrashanth Swaminathan * src/metag/ffi.c: New. 530*1fd5a2e1SPrashanth Swaminathan * src/metag/ffitarget.h: Likewise. 531*1fd5a2e1SPrashanth Swaminathan * src/metag/sysv.S: Likewise. 532*1fd5a2e1SPrashanth Swaminathan 533*1fd5a2e1SPrashanth Swaminathan2013-02-24 Andreas Schwab <[email protected]> 534*1fd5a2e1SPrashanth Swaminathan 535*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi (Structures): Fix missing category argument of 536*1fd5a2e1SPrashanth Swaminathan @deftp. 537*1fd5a2e1SPrashanth Swaminathan 538*1fd5a2e1SPrashanth Swaminathan2013-02-11 Anthony Green <[email protected]> 539*1fd5a2e1SPrashanth Swaminathan 540*1fd5a2e1SPrashanth Swaminathan * configure.ac: Update release number to 3.0.12. 541*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 542*1fd5a2e1SPrashanth Swaminathan * README: Update release info. 543*1fd5a2e1SPrashanth Swaminathan 544*1fd5a2e1SPrashanth Swaminathan2013-02-10 Anthony Green <[email protected]> 545*1fd5a2e1SPrashanth Swaminathan 546*1fd5a2e1SPrashanth Swaminathan * README: Add Moxie. 547*1fd5a2e1SPrashanth Swaminathan * src/moxie/ffi.c: Created. 548*1fd5a2e1SPrashanth Swaminathan * src/moxie/eabi.S: Created. 549*1fd5a2e1SPrashanth Swaminathan * src/moxie/ffitarget.h: Created. 550*1fd5a2e1SPrashanth Swaminathan * Makefile.am (nodist_libffi_la_SOURCES): Add Moxie. 551*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 552*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add Moxie. 553*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 554*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/huge_struct.c: Disable format string 555*1fd5a2e1SPrashanth Swaminathan warnings for moxie*-*-elf tests. 556*1fd5a2e1SPrashanth Swaminathan 557*1fd5a2e1SPrashanth Swaminathan2013-02-10 Anthony Green <[email protected]> 558*1fd5a2e1SPrashanth Swaminathan 559*1fd5a2e1SPrashanth Swaminathan * Makefile.am (LTLDFLAGS): Fix reference. 560*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 561*1fd5a2e1SPrashanth Swaminathan 562*1fd5a2e1SPrashanth Swaminathan2013-02-10 Anthony Green <[email protected]> 563*1fd5a2e1SPrashanth Swaminathan 564*1fd5a2e1SPrashanth Swaminathan * README: Update supported platforms. Update test results link. 565*1fd5a2e1SPrashanth Swaminathan 566*1fd5a2e1SPrashanth Swaminathan2013-02-09 Anthony Green <[email protected]> 567*1fd5a2e1SPrashanth Swaminathan 568*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/negint.c: Remove forced -O2. 569*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many2.c (foo): Remove GCCism. 570*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Add default PRIuPTR definition. 571*1fd5a2e1SPrashanth Swaminathan 572*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S (ffi_closure_v8): Import ancient ulonglong 573*1fd5a2e1SPrashanth Swaminathan closure return type fix developed by Martin v. Löwis for cpython 574*1fd5a2e1SPrashanth Swaminathan fork. 575*1fd5a2e1SPrashanth Swaminathan 576*1fd5a2e1SPrashanth Swaminathan2013-02-08 Andreas Tobler <[email protected]> 577*1fd5a2e1SPrashanth Swaminathan 578*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix small struct 579*1fd5a2e1SPrashanth Swaminathan support. 580*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Ditto. 581*1fd5a2e1SPrashanth Swaminathan 582*1fd5a2e1SPrashanth Swaminathan2013-02-08 Anthony Green <[email protected]> 583*1fd5a2e1SPrashanth Swaminathan 584*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble.c: Remove xfail for 585*1fd5a2e1SPrashanth Swaminathan arm*-*-*. 586*1fd5a2e1SPrashanth Swaminathan 587*1fd5a2e1SPrashanth Swaminathan2013-02-08 Anthony Green <[email protected]> 588*1fd5a2e1SPrashanth Swaminathan 589*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_closure_loc): Fix cache flushing for GCC. 590*1fd5a2e1SPrashanth Swaminathan 591*1fd5a2e1SPrashanth Swaminathan2013-02-08 Matthias Klose <[email protected]> 592*1fd5a2e1SPrashanth Swaminathan 593*1fd5a2e1SPrashanth Swaminathan * man/ffi_prep_cif.3: Clean up for debian linter. 594*1fd5a2e1SPrashanth Swaminathan 595*1fd5a2e1SPrashanth Swaminathan2013-02-08 Peter Bergner <[email protected]> 596*1fd5a2e1SPrashanth Swaminathan 597*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args_SYSV): Account for FP args pushed 598*1fd5a2e1SPrashanth Swaminathan on the stack. 599*1fd5a2e1SPrashanth Swaminathan 600*1fd5a2e1SPrashanth Swaminathan2013-02-08 Anthony Green <[email protected]> 601*1fd5a2e1SPrashanth Swaminathan 602*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add missing files. 603*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.am (EXTRA_DIST): Ditto. 604*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 605*1fd5a2e1SPrashanth Swaminathan 606*1fd5a2e1SPrashanth Swaminathan2013-02-08 Anthony Green <[email protected]> 607*1fd5a2e1SPrashanth Swaminathan 608*1fd5a2e1SPrashanth Swaminathan * configure.ac: Move sparc asm config checks to within functions 609*1fd5a2e1SPrashanth Swaminathan for compatibility with sun tools. 610*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 611*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_closure_loc): Flush cache on v9 612*1fd5a2e1SPrashanth Swaminathan systems. 613*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S (ffi_flush_icache): Implement a sparc v9 cache 614*1fd5a2e1SPrashanth Swaminathan flusher. 615*1fd5a2e1SPrashanth Swaminathan 616*1fd5a2e1SPrashanth Swaminathan2013-02-08 Nathan Rossi <[email protected]> 617*1fd5a2e1SPrashanth Swaminathan 618*1fd5a2e1SPrashanth Swaminathan * src/microblaze/ffi.c (ffi_closure_call_SYSV): Fix handling of 619*1fd5a2e1SPrashanth Swaminathan small big-endian structures. 620*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args): Ditto. 621*1fd5a2e1SPrashanth Swaminathan 622*1fd5a2e1SPrashanth Swaminathan2013-02-07 Anthony Green <[email protected]> 623*1fd5a2e1SPrashanth Swaminathan 624*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S (ffi_call_v8): Fix typo from last patch 625*1fd5a2e1SPrashanth Swaminathan (effectively hiding ffi_call_v8). 626*1fd5a2e1SPrashanth Swaminathan 627*1fd5a2e1SPrashanth Swaminathan2013-02-07 Anthony Green <[email protected]> 628*1fd5a2e1SPrashanth Swaminathan 629*1fd5a2e1SPrashanth Swaminathan * configure.ac: Update bug reporting address. 630*1fd5a2e1SPrashanth Swaminathan * configure.in: Rebuild. 631*1fd5a2e1SPrashanth Swaminathan 632*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S (ffi_flush_icache): Out-of-line cache flusher for 633*1fd5a2e1SPrashanth Swaminathan Sun compiler. 634*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_call): Remove warning. 635*1fd5a2e1SPrashanth Swaminathan Call ffi_flush_icache for non-GCC builds. 636*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Use ffi_flush_icache. 637*1fd5a2e1SPrashanth Swaminathan 638*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add libtool-ldflags. 639*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 640*1fd5a2e1SPrashanth Swaminathan * libtool-ldflags: New file. 641*1fd5a2e1SPrashanth Swaminathan 642*1fd5a2e1SPrashanth Swaminathan2013-02-07 Daniel Schepler <[email protected]> 643*1fd5a2e1SPrashanth Swaminathan 644*1fd5a2e1SPrashanth Swaminathan * configure.ac: Correctly identify x32 systems as 64-bit. 645*1fd5a2e1SPrashanth Swaminathan * m4/libtool.m4: Remove libtool expr error. 646*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, configure: Rebuilt. 647*1fd5a2e1SPrashanth Swaminathan 648*1fd5a2e1SPrashanth Swaminathan2013-02-07 Anthony Green <[email protected]> 649*1fd5a2e1SPrashanth Swaminathan 650*1fd5a2e1SPrashanth Swaminathan * configure.ac: Fix GCC usage test. 651*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 652*1fd5a2e1SPrashanth Swaminathan * README: Mention LLVM/GCC x86_64 issue. 653*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Rebuilt. 654*1fd5a2e1SPrashanth Swaminathan 655*1fd5a2e1SPrashanth Swaminathan2013-02-07 Anthony Green <[email protected]> 656*1fd5a2e1SPrashanth Swaminathan 657*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double_va.c (main): Replace // style 658*1fd5a2e1SPrashanth Swaminathan comments with /* */ for xlc compiler. 659*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_large.c (main): Ditto. 660*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_large2.c (main): Ditto. 661*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct1.c (main): Ditto. 662*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/huge_struct.c (main): Ditto. 663*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float_va.c (main): Ditto. 664*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_struct_va1.c (main): Ditto. 665*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_pointer_stack.c (main): Ditto. 666*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_pointer.c (main): Ditto. 667*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble_va.c (main): Ditto. 668*1fd5a2e1SPrashanth Swaminathan 669*1fd5a2e1SPrashanth Swaminathan2013-02-06 Anthony Green <[email protected]> 670*1fd5a2e1SPrashanth Swaminathan 671*1fd5a2e1SPrashanth Swaminathan * man/ffi_prep_cif.3: Clean up for debian lintian checker. 672*1fd5a2e1SPrashanth Swaminathan 673*1fd5a2e1SPrashanth Swaminathan2013-02-06 Anthony Green <[email protected]> 674*1fd5a2e1SPrashanth Swaminathan 675*1fd5a2e1SPrashanth Swaminathan * Makefile.am (pkgconfigdir): Add missing pkgconfig install bits. 676*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuild. 677*1fd5a2e1SPrashanth Swaminathan 678*1fd5a2e1SPrashanth Swaminathan2013-02-02 Mark H Weaver <[email protected]> 679*1fd5a2e1SPrashanth Swaminathan 680*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (ffi_call): Sign-extend integer arguments passed 681*1fd5a2e1SPrashanth Swaminathan via general purpose registers. 682*1fd5a2e1SPrashanth Swaminathan 683*1fd5a2e1SPrashanth Swaminathan2013-01-21 Nathan Rossi <[email protected]> 684*1fd5a2e1SPrashanth Swaminathan 685*1fd5a2e1SPrashanth Swaminathan * README: Add MicroBlaze details. 686*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add MicroBlaze support. 687*1fd5a2e1SPrashanth Swaminathan * configure.ac: Likewise. 688*1fd5a2e1SPrashanth Swaminathan * src/microblaze/ffi.c: New. 689*1fd5a2e1SPrashanth Swaminathan * src/microblaze/ffitarget.h: Likewise. 690*1fd5a2e1SPrashanth Swaminathan * src/microblaze/sysv.S: Likewise. 691*1fd5a2e1SPrashanth Swaminathan 692*1fd5a2e1SPrashanth Swaminathan2013-01-21 Nathan Rossi <[email protected]> 693*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_uc.c: Fixed issue. 694*1fd5a2e1SPrashanth Swaminathan 695*1fd5a2e1SPrashanth Swaminathan2013-01-21 Chris Zankel <[email protected]> 696*1fd5a2e1SPrashanth Swaminathan 697*1fd5a2e1SPrashanth Swaminathan * README: Add Xtensa support. 698*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Likewise. 699*1fd5a2e1SPrashanth Swaminathan * configure.ac: Likewise. 700*1fd5a2e1SPrashanth Swaminathan * Makefile.in Regenerate. 701*1fd5a2e1SPrashanth Swaminathan * configure: Likewise. 702*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c: Handle Xtensa. 703*1fd5a2e1SPrashanth Swaminathan * src/xtensa: New directory. 704*1fd5a2e1SPrashanth Swaminathan * src/xtensa/ffi.c: New file. 705*1fd5a2e1SPrashanth Swaminathan * src/xtensa/ffitarget.h: Ditto. 706*1fd5a2e1SPrashanth Swaminathan * src/xtensa/sysv.S: Ditto. 707*1fd5a2e1SPrashanth Swaminathan 708*1fd5a2e1SPrashanth Swaminathan2013-01-11 Anthony Green <[email protected]> 709*1fd5a2e1SPrashanth Swaminathan 710*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Replace // style 711*1fd5a2e1SPrashanth Swaminathan comments with /* */ for xlc compiler. 712*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S (ffi_call_AIX): Ditto. 713*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h (allocate_mmap): Delete 714*1fd5a2e1SPrashanth Swaminathan deprecated inline function. 715*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/ffitestcxx.h: Ditto. 716*1fd5a2e1SPrashanth Swaminathan * README: Add update for AIX support. 717*1fd5a2e1SPrashanth Swaminathan 718*1fd5a2e1SPrashanth Swaminathan2013-01-11 Anthony Green <[email protected]> 719*1fd5a2e1SPrashanth Swaminathan 720*1fd5a2e1SPrashanth Swaminathan * configure.ac: Robustify pc relative reloc check. 721*1fd5a2e1SPrashanth Swaminathan * m4/ax_cc_maxopt.m4: Don't -malign-double. This is an ABI 722*1fd5a2e1SPrashanth Swaminathan changing option for 32-bit x86. 723*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, configure: Rebuilt. 724*1fd5a2e1SPrashanth Swaminathan * README: Update supported target list. 725*1fd5a2e1SPrashanth Swaminathan 726*1fd5a2e1SPrashanth Swaminathan2013-01-10 Anthony Green <[email protected]> 727*1fd5a2e1SPrashanth Swaminathan 728*1fd5a2e1SPrashanth Swaminathan * README (tested): Add Compiler column to table. 729*1fd5a2e1SPrashanth Swaminathan 730*1fd5a2e1SPrashanth Swaminathan2013-01-10 Anthony Green <[email protected]> 731*1fd5a2e1SPrashanth Swaminathan 732*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (struct register_args): Make sse array and array 733*1fd5a2e1SPrashanth Swaminathan of unions for sunpro compiler compatibility. 734*1fd5a2e1SPrashanth Swaminathan 735*1fd5a2e1SPrashanth Swaminathan2013-01-10 Anthony Green <[email protected]> 736*1fd5a2e1SPrashanth Swaminathan 737*1fd5a2e1SPrashanth Swaminathan * configure.ac: Test target platform size_t size. Handle both 32 738*1fd5a2e1SPrashanth Swaminathan and 64-bit builds for x86_64-* and i?86-* targets (allowing for 739*1fd5a2e1SPrashanth Swaminathan CFLAG option to change default settings). 740*1fd5a2e1SPrashanth Swaminathan * configure, aclocal.m4: Rebuilt. 741*1fd5a2e1SPrashanth Swaminathan 742*1fd5a2e1SPrashanth Swaminathan2013-01-10 Anthony Green <[email protected]> 743*1fd5a2e1SPrashanth Swaminathan 744*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/special.exp: Only run exception 745*1fd5a2e1SPrashanth Swaminathan handling tests when using GNU compiler. 746*1fd5a2e1SPrashanth Swaminathan 747*1fd5a2e1SPrashanth Swaminathan * m4/ax_compiler_vendor.m4: New file. 748*1fd5a2e1SPrashanth Swaminathan * configure.ac: Test for compiler vendor and don't use 749*1fd5a2e1SPrashanth Swaminathan AX_CFLAGS_WARN_ALL with the sun compiler. 750*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, configure: Rebuilt. 751*1fd5a2e1SPrashanth Swaminathan 752*1fd5a2e1SPrashanth Swaminathan2013-01-10 Anthony Green <[email protected]> 753*1fd5a2e1SPrashanth Swaminathan 754*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h: Don't use GCCisms to define types when 755*1fd5a2e1SPrashanth Swaminathan building with the SUNPRO compiler. 756*1fd5a2e1SPrashanth Swaminathan 757*1fd5a2e1SPrashanth Swaminathan2013-01-10 Anthony Green <[email protected]> 758*1fd5a2e1SPrashanth Swaminathan 759*1fd5a2e1SPrashanth Swaminathan * configure.ac: Put local.exp in the right place. 760*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 761*1fd5a2e1SPrashanth Swaminathan 762*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Update comment about regparm function attributes. 763*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (ffi_closure_SYSV): The SUNPRO compiler requires 764*1fd5a2e1SPrashanth Swaminathan that all function arguments be passed on the stack (no regparm 765*1fd5a2e1SPrashanth Swaminathan support). 766*1fd5a2e1SPrashanth Swaminathan 767*1fd5a2e1SPrashanth Swaminathan2013-01-08 Anthony Green <[email protected]> 768*1fd5a2e1SPrashanth Swaminathan 769*1fd5a2e1SPrashanth Swaminathan * configure.ac: Generate local.exp. This sets CC_FOR_TARGET 770*1fd5a2e1SPrashanth Swaminathan when we are using the vendor compiler. 771*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): Point to 772*1fd5a2e1SPrashanth Swaminathan ../local.exp. 773*1fd5a2e1SPrashanth Swaminathan * configure, testsuite/Makefile.in: Rebuilt. 774*1fd5a2e1SPrashanth Swaminathan 775*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/call.exp: Run tests with different 776*1fd5a2e1SPrashanth Swaminathan options, depending on whether or not we are using gcc or the 777*1fd5a2e1SPrashanth Swaminathan vendor compiler. 778*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi.exp (libffi-init): Set using_gcc based on 779*1fd5a2e1SPrashanth Swaminathan whether or not we are building/testing with gcc. 780*1fd5a2e1SPrashanth Swaminathan 781*1fd5a2e1SPrashanth Swaminathan2013-01-08 Anthony Green <[email protected]> 782*1fd5a2e1SPrashanth Swaminathan 783*1fd5a2e1SPrashanth Swaminathan * configure.ac: Switch x86 solaris target to X86 by default. 784*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 785*1fd5a2e1SPrashanth Swaminathan 786*1fd5a2e1SPrashanth Swaminathan2013-01-08 Anthony Green <[email protected]> 787*1fd5a2e1SPrashanth Swaminathan 788*1fd5a2e1SPrashanth Swaminathan * configure.ac: Fix test for read-only eh_frame. 789*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 790*1fd5a2e1SPrashanth Swaminathan 791*1fd5a2e1SPrashanth Swaminathan2013-01-08 Anthony Green <[email protected]> 792*1fd5a2e1SPrashanth Swaminathan 793*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S, src/x86/unix64.S: Only emit DWARF unwind info 794*1fd5a2e1SPrashanth Swaminathan when building with the GNU toolchain. 795*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h (CHECK): Fix for Solaris vendor 796*1fd5a2e1SPrashanth Swaminathan compiler. 797*1fd5a2e1SPrashanth Swaminathan 798*1fd5a2e1SPrashanth Swaminathan2013-01-07 Thorsten Glaser <[email protected]> 799*1fd5a2e1SPrashanth Swaminathan 800*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar_va.c, 801*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ushort_va.c, 802*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/va_1.c: Testsuite fixes. 803*1fd5a2e1SPrashanth Swaminathan 804*1fd5a2e1SPrashanth Swaminathan2013-01-07 Thorsten Glaser <[email protected]> 805*1fd5a2e1SPrashanth Swaminathan 806*1fd5a2e1SPrashanth Swaminathan * src/m68k/ffi.c (CIF_FLAGS_SINT8, CIF_FLAGS_SINT16): Define. 807*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Fix 8-bit and 16-bit signed calls. 808*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S (ffi_call_SYSV, ffi_closure_SYSV): Ditto. 809*1fd5a2e1SPrashanth Swaminathan 810*1fd5a2e1SPrashanth Swaminathan2013-01-04 Anthony Green <[email protected]> 811*1fd5a2e1SPrashanth Swaminathan 812*1fd5a2e1SPrashanth Swaminathan * Makefile.am (AM_CFLAGS): Don't automatically add -fexceptions 813*1fd5a2e1SPrashanth Swaminathan and -Wall. This is set in the configure script after testing for 814*1fd5a2e1SPrashanth Swaminathan GCC. 815*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 816*1fd5a2e1SPrashanth Swaminathan 817*1fd5a2e1SPrashanth Swaminathan2013-01-02 rofl0r <https://github.com/rofl0r> 818*1fd5a2e1SPrashanth Swaminathan 819*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix build error on ppc 820*1fd5a2e1SPrashanth Swaminathan when long double == double. 821*1fd5a2e1SPrashanth Swaminathan 822*1fd5a2e1SPrashanth Swaminathan2013-01-02 Reini Urban <[email protected]> 823*1fd5a2e1SPrashanth Swaminathan 824*1fd5a2e1SPrashanth Swaminathan * Makefile.am (libffi_la_LDFLAGS): Add -no-undefined to LDFLAGS 825*1fd5a2e1SPrashanth Swaminathan (required for shared libs on cygwin/mingw). 826*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 827*1fd5a2e1SPrashanth Swaminathan 828*1fd5a2e1SPrashanth Swaminathan2012-10-31 Alan Modra <[email protected]> 829*1fd5a2e1SPrashanth Swaminathan 830*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S: Add new ABI support. 831*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S: Likewise. 832*1fd5a2e1SPrashanth Swaminathan 833*1fd5a2e1SPrashanth Swaminathan2012-10-30 Magnus Granberg <[email protected]> 834*1fd5a2e1SPrashanth Swaminathan Pavel Labushev <[email protected]> 835*1fd5a2e1SPrashanth Swaminathan 836*1fd5a2e1SPrashanth Swaminathan * configure.ac: New options pax_emutramp 837*1fd5a2e1SPrashanth Swaminathan * configure, fficonfig.h.in: Regenerated 838*1fd5a2e1SPrashanth Swaminathan * src/closures.c: New function emutramp_enabled_check() and 839*1fd5a2e1SPrashanth Swaminathan checks. 840*1fd5a2e1SPrashanth Swaminathan 841*1fd5a2e1SPrashanth Swaminathan2012-10-30 Frederick Cheung <[email protected]> 842*1fd5a2e1SPrashanth Swaminathan 843*1fd5a2e1SPrashanth Swaminathan * configure.ac: Enable FFI_MAP_EXEC_WRIT for Darwin 12 (mountain 844*1fd5a2e1SPrashanth Swaminathan lion) and future version. 845*1fd5a2e1SPrashanth Swaminathan * configure: Rebuild. 846*1fd5a2e1SPrashanth Swaminathan 847*1fd5a2e1SPrashanth Swaminathan2012-10-30 James Greenhalgh <james.greenhalgh at arm.com> 848*1fd5a2e1SPrashanth Swaminathan Marcus Shawcroft <marcus.shawcroft at arm.com> 849*1fd5a2e1SPrashanth Swaminathan 850*1fd5a2e1SPrashanth Swaminathan * README: Add details of aarch64 port. 851*1fd5a2e1SPrashanth Swaminathan * src/aarch64/ffi.c: New. 852*1fd5a2e1SPrashanth Swaminathan * src/aarch64/ffitarget.h: Likewise. 853*1fd5a2e1SPrashanth Swaminathan * src/aarch64/sysv.S: Likewise. 854*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Support aarch64. 855*1fd5a2e1SPrashanth Swaminathan * configure.ac: Support aarch64. 856*1fd5a2e1SPrashanth Swaminathan * Makefile.in, configure: Rebuilt. 857*1fd5a2e1SPrashanth Swaminathan 858*1fd5a2e1SPrashanth Swaminathan2012-10-30 James Greenhalgh <james.greenhalgh at arm.com> 859*1fd5a2e1SPrashanth Swaminathan Marcus Shawcroft <marcus.shawcroft at arm.com> 860*1fd5a2e1SPrashanth Swaminathan 861*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi.exp: Add support for aarch64. 862*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_struct_va1.c: New. 863*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar_va.c: Likewise. 864*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint_va.c: Likewise. 865*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulong_va.c: Likewise. 866*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ushort_va.c: Likewise. 867*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct11.c: Likewise. 868*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/uninitialized.c: Likewise. 869*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/va_1.c: Likewise. 870*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/va_struct1.c: Likewise. 871*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/va_struct2.c: Likewise. 872*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/va_struct3.c: Likewise. 873*1fd5a2e1SPrashanth Swaminathan 874*1fd5a2e1SPrashanth Swaminathan2012-10-12 Walter Lee <[email protected]> 875*1fd5a2e1SPrashanth Swaminathan 876*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add TILE-Gx/TILEPro support. 877*1fd5a2e1SPrashanth Swaminathan * configure.ac: Likewise. 878*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 879*1fd5a2e1SPrashanth Swaminathan * configure: Likewise. 880*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif_core): Handle TILE-Gx/TILEPro. 881*1fd5a2e1SPrashanth Swaminathan * src/tile: New directory. 882*1fd5a2e1SPrashanth Swaminathan * src/tile/ffi.c: New file. 883*1fd5a2e1SPrashanth Swaminathan * src/tile/ffitarget.h: Ditto. 884*1fd5a2e1SPrashanth Swaminathan * src/tile/tile.S: Ditto. 885*1fd5a2e1SPrashanth Swaminathan 886*1fd5a2e1SPrashanth Swaminathan2012-10-12 Matthias Klose <[email protected]> 887*1fd5a2e1SPrashanth Swaminathan 888*1fd5a2e1SPrashanth Swaminathan * generate-osx-source-and-headers.py: Normalize whitespace. 889*1fd5a2e1SPrashanth Swaminathan 890*1fd5a2e1SPrashanth Swaminathan2012-09-14 David Edelsohn <[email protected]> 891*1fd5a2e1SPrashanth Swaminathan 892*1fd5a2e1SPrashanth Swaminathan * configure: Regenerated. 893*1fd5a2e1SPrashanth Swaminathan 894*1fd5a2e1SPrashanth Swaminathan2012-08-26 Andrew Pinski <[email protected]> 895*1fd5a2e1SPrashanth Swaminathan 896*1fd5a2e1SPrashanth Swaminathan PR libffi/53014 897*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_prep_closure_loc): Allow n32 with soft-float and n64 with 898*1fd5a2e1SPrashanth Swaminathan soft-float. 899*1fd5a2e1SPrashanth Swaminathan 900*1fd5a2e1SPrashanth Swaminathan2012-08-08 Uros Bizjak <[email protected]> 901*1fd5a2e1SPrashanth Swaminathan 902*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test, 903*1fd5a2e1SPrashanth Swaminathan just return FFI_BAD_ABI when things are wrong. 904*1fd5a2e1SPrashanth Swaminathan 905*1fd5a2e1SPrashanth Swaminathan2012-07-18 H.J. Lu <[email protected]> 906*1fd5a2e1SPrashanth Swaminathan 907*1fd5a2e1SPrashanth Swaminathan PR libffi/53982 908*1fd5a2e1SPrashanth Swaminathan PR libffi/53973 909*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h: Check __ILP32__ instead of __LP64__ for x32. 910*1fd5a2e1SPrashanth Swaminathan (FFI_SIZEOF_JAVA_RAW): Defined to 4 for x32. 911*1fd5a2e1SPrashanth Swaminathan 912*1fd5a2e1SPrashanth Swaminathan2012-05-16 H.J. Lu <[email protected]> 913*1fd5a2e1SPrashanth Swaminathan 914*1fd5a2e1SPrashanth Swaminathan * configure: Regenerated. 915*1fd5a2e1SPrashanth Swaminathan 916*1fd5a2e1SPrashanth Swaminathan2012-05-05 Nicolas Lelong 917*1fd5a2e1SPrashanth Swaminathan 918*1fd5a2e1SPrashanth Swaminathan * libffi.xcodeproj/project.pbxproj: Fixes. 919*1fd5a2e1SPrashanth Swaminathan * README: Update for iOS builds. 920*1fd5a2e1SPrashanth Swaminathan 921*1fd5a2e1SPrashanth Swaminathan2012-04-23 Alexandre Keunecke I. de Mendonca <[email protected]> 922*1fd5a2e1SPrashanth Swaminathan 923*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add Blackfin/sysv support 924*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add Blackfin/sysv support 925*1fd5a2e1SPrashanth Swaminathan * src/bfin/ffi.c: Add Blackfin/sysv support 926*1fd5a2e1SPrashanth Swaminathan * src/bfin/ffitarget.h: Add Blackfin/sysv support 927*1fd5a2e1SPrashanth Swaminathan 928*1fd5a2e1SPrashanth Swaminathan2012-04-11 Anthony Green <[email protected]> 929*1fd5a2e1SPrashanth Swaminathan 930*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add new script. 931*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 932*1fd5a2e1SPrashanth Swaminathan 933*1fd5a2e1SPrashanth Swaminathan2012-04-11 Zachary Waldowski <[email protected]> 934*1fd5a2e1SPrashanth Swaminathan 935*1fd5a2e1SPrashanth Swaminathan * generate-ios-source-and-headers.py, 936*1fd5a2e1SPrashanth Swaminathan libffi.xcodeproj/project.pbxproj: Support a Mac static library via 937*1fd5a2e1SPrashanth Swaminathan Xcode. Set iOS compatibility to 4.0. Move iOS trampoline 938*1fd5a2e1SPrashanth Swaminathan generation into an Xcode "run script" phase. Include both as 939*1fd5a2e1SPrashanth Swaminathan Xcode build scripts. Don't always regenerate config files. 940*1fd5a2e1SPrashanth Swaminathan 941*1fd5a2e1SPrashanth Swaminathan2012-04-10 Anthony Green <[email protected]> 942*1fd5a2e1SPrashanth Swaminathan 943*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Add missing semicolon. 944*1fd5a2e1SPrashanth Swaminathan 945*1fd5a2e1SPrashanth Swaminathan2012-04-06 Anthony Green <[email protected]> 946*1fd5a2e1SPrashanth Swaminathan 947*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add new iOS/xcode files. 948*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 949*1fd5a2e1SPrashanth Swaminathan 950*1fd5a2e1SPrashanth Swaminathan2012-04-06 Mike Lewis <[email protected]> 951*1fd5a2e1SPrashanth Swaminathan 952*1fd5a2e1SPrashanth Swaminathan * generate-ios-source-and-headers.py: New file. 953*1fd5a2e1SPrashanth Swaminathan * libffi.xcodeproj/project.pbxproj: New file. 954*1fd5a2e1SPrashanth Swaminathan * README: Update instructions on building iOS binary. 955*1fd5a2e1SPrashanth Swaminathan * build-ios.sh: Delete. 956*1fd5a2e1SPrashanth Swaminathan 957*1fd5a2e1SPrashanth Swaminathan2012-04-06 Anthony Green <[email protected]> 958*1fd5a2e1SPrashanth Swaminathan 959*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (UINT128): Define differently for Intel and GNU 960*1fd5a2e1SPrashanth Swaminathan compilers, then use it. 961*1fd5a2e1SPrashanth Swaminathan 962*1fd5a2e1SPrashanth Swaminathan2012-04-06 H.J. Lu <[email protected]> 963*1fd5a2e1SPrashanth Swaminathan 964*1fd5a2e1SPrashanth Swaminathan * m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32. 965*1fd5a2e1SPrashanth Swaminathan 966*1fd5a2e1SPrashanth Swaminathan2012-04-06 Anthony Green <[email protected]> 967*1fd5a2e1SPrashanth Swaminathan 968*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.am (EXTRA_DIST): Add missing test cases. 969*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Rebuilt. 970*1fd5a2e1SPrashanth Swaminathan 971*1fd5a2e1SPrashanth Swaminathan2012-04-05 Zachary Waldowski <[email protected]> 972*1fd5a2e1SPrashanth Swaminathan 973*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add missing trampoline table fields. 974*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Fix ENTRY definition, and wrap symbol references 975*1fd5a2e1SPrashanth Swaminathan in CNAME. 976*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Wrap Windows specific code in ifdefs. 977*1fd5a2e1SPrashanth Swaminathan 978*1fd5a2e1SPrashanth Swaminathan2012-04-02 Peter Bergner <[email protected]> 979*1fd5a2e1SPrashanth Swaminathan 980*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp. 981*1fd5a2e1SPrashanth Swaminathan Silence casting pointer to integer of different size warning. 982*1fd5a2e1SPrashanth Swaminathan Delete goto to previously deleted label. 983*1fd5a2e1SPrashanth Swaminathan (ffi_call): Silence possibly undefined warning. 984*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Declare variable type. 985*1fd5a2e1SPrashanth Swaminathan 986*1fd5a2e1SPrashanth Swaminathan2012-04-02 Peter Rosin <[email protected]> 987*1fd5a2e1SPrashanth Swaminathan 988*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_call_win32): Sign/zero extend the return 989*1fd5a2e1SPrashanth Swaminathan value in the Intel version as is already done for the AT&T version. 990*1fd5a2e1SPrashanth Swaminathan (ffi_closure_SYSV): Likewise. 991*1fd5a2e1SPrashanth Swaminathan (ffi_closure_raw_SYSV): Likewise. 992*1fd5a2e1SPrashanth Swaminathan (ffi_closure_STDCALL): Likewise. 993*1fd5a2e1SPrashanth Swaminathan 994*1fd5a2e1SPrashanth Swaminathan2012-03-29 Peter Rosin <[email protected]> 995*1fd5a2e1SPrashanth Swaminathan 996*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_closure_raw_THISCALL): Unify the frame 997*1fd5a2e1SPrashanth Swaminathan generation, fix the ENDP label and remove the surplus third arg 998*1fd5a2e1SPrashanth Swaminathan from the 'lea' insn. 999*1fd5a2e1SPrashanth Swaminathan 1000*1fd5a2e1SPrashanth Swaminathan2012-03-29 Peter Rosin <[email protected]> 1001*1fd5a2e1SPrashanth Swaminathan 1002*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_closure_raw_SYSV): Make the 'stubraw' label 1003*1fd5a2e1SPrashanth Swaminathan visible outside the PROC, so that ffi_closure_raw_THISCALL can see 1004*1fd5a2e1SPrashanth Swaminathan it. Also instruct the assembler to add a frame to the function. 1005*1fd5a2e1SPrashanth Swaminathan 1006*1fd5a2e1SPrashanth Swaminathan2012-03-23 Peter Rosin <[email protected]> 1007*1fd5a2e1SPrashanth Swaminathan 1008*1fd5a2e1SPrashanth Swaminathan * Makefile.am (AM_CPPFLAGS): Add -DFFI_BUILDING. 1009*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 1010*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in [MSVC]: Add __declspec(dllimport) decorations 1011*1fd5a2e1SPrashanth Swaminathan to all data exports, when compiling libffi clients using MSVC. 1012*1fd5a2e1SPrashanth Swaminathan 1013*1fd5a2e1SPrashanth Swaminathan2012-03-29 Peter Rosin <[email protected]> 1014*1fd5a2e1SPrashanth Swaminathan 1015*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h (ffi_abi): Add new ABI FFI_MS_CDECL and 1016*1fd5a2e1SPrashanth Swaminathan make it the default for MSVC. 1017*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_MS_STRUCT): New structure return convention. 1018*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): Tweak the structure 1019*1fd5a2e1SPrashanth Swaminathan return convention for FFI_MS_CDECL to be FFI_TYPE_MS_STRUCT 1020*1fd5a2e1SPrashanth Swaminathan instead of an ordinary FFI_TYPE_STRUCT. 1021*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args): Treat FFI_TYPE_MS_STRUCT as FFI_TYPE_STRUCT. 1022*1fd5a2e1SPrashanth Swaminathan (ffi_call): Likewise. 1023*1fd5a2e1SPrashanth Swaminathan (ffi_prep_incoming_args_SYSV): Likewise. 1024*1fd5a2e1SPrashanth Swaminathan (ffi_raw_call): Likewise. 1025*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Treat FFI_MS_CDECL as FFI_SYSV. 1026*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_closure_SYSV): For FFI_TYPE_MS_STRUCT, 1027*1fd5a2e1SPrashanth Swaminathan return a pointer to the result structure in eax and don't pop 1028*1fd5a2e1SPrashanth Swaminathan that pointer from the stack, the caller takes care of it. 1029*1fd5a2e1SPrashanth Swaminathan (ffi_call_win32): Treat FFI_TYPE_MS_STRUCT as FFI_TYPE_STRUCT. 1030*1fd5a2e1SPrashanth Swaminathan (ffi_closure_raw_SYSV): Likewise. 1031*1fd5a2e1SPrashanth Swaminathan 1032*1fd5a2e1SPrashanth Swaminathan2012-03-22 Peter Rosin <[email protected]> 1033*1fd5a2e1SPrashanth Swaminathan 1034*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_stdcall.c [MSVC]: Add inline 1035*1fd5a2e1SPrashanth Swaminathan assembly version with Intel syntax. 1036*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_thiscall.c [MSVC]: Likewise. 1037*1fd5a2e1SPrashanth Swaminathan 1038*1fd5a2e1SPrashanth Swaminathan2012-03-23 Peter Rosin <[email protected]> 1039*1fd5a2e1SPrashanth Swaminathan 1040*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Provide abstration of 1041*1fd5a2e1SPrashanth Swaminathan __attribute__((fastcall)) in the form of a __FASTCALL__ 1042*1fd5a2e1SPrashanth Swaminathan define. Define it to __fastcall for MSVC. 1043*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis1_win32.c: Use the above. 1044*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis2_win32.c: Likewise. 1045*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis3_win32.c: Likewise. 1046*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/strlen2_win32.c: Likewise. 1047*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct1_win32.c: Likewise. 1048*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct2_win32.c: Likewise. 1049*1fd5a2e1SPrashanth Swaminathan 1050*1fd5a2e1SPrashanth Swaminathan2012-03-22 Peter Rosin <[email protected]> 1051*1fd5a2e1SPrashanth Swaminathan 1052*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S [MSVC] (ffi_closure_THISCALL): Remove the manual 1053*1fd5a2e1SPrashanth Swaminathan frame on function entry, MASM adds one automatically. 1054*1fd5a2e1SPrashanth Swaminathan 1055*1fd5a2e1SPrashanth Swaminathan2012-03-22 Peter Rosin <[email protected]> 1056*1fd5a2e1SPrashanth Swaminathan 1057*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h [MSVC]: Add kludge for missing 1058*1fd5a2e1SPrashanth Swaminathan bits in the MSVC headers. 1059*1fd5a2e1SPrashanth Swaminathan 1060*1fd5a2e1SPrashanth Swaminathan2012-03-22 Peter Rosin <[email protected]> 1061*1fd5a2e1SPrashanth Swaminathan 1062*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_12byte.c: Adjust to the C89 style 1063*1fd5a2e1SPrashanth Swaminathan with no declarations after statements. 1064*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_16byte.c: Likewise. 1065*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_18byte.c: Likewise. 1066*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_19byte.c: Likewise. 1067*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_1_1byte.c: Likewise. 1068*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte.c: Likewise. 1069*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte1.c: Likewise. 1070*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_24byte.c: Likewise. 1071*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_2byte.c: Likewise. 1072*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3_1byte.c: Likewise. 1073*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte1.c: Likewise. 1074*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte2.c: Likewise. 1075*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4_1byte.c: Likewise. 1076*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4byte.c: Likewise. 1077*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5_1_byte.c: Likewise. 1078*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5byte.c: Likewise. 1079*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_64byte.c: Likewise. 1080*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6_1_byte.c: Likewise. 1081*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6byte.c: Likewise. 1082*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7_1_byte.c: Likewise. 1083*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7byte.c: Likewise. 1084*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_8byte.c: Likewise. 1085*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte1.c: Likewise. 1086*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte2.c: Likewise. 1087*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_double.c: Likewise. 1088*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_float.c: Likewise. 1089*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble.c: Likewise. 1090*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble_split.c: Likewise. 1091*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble_split2.c: Likewise. 1092*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_pointer.c: Likewise. 1093*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint16.c: Likewise. 1094*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint32.c: Likewise. 1095*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint64.c: Likewise. 1096*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint16.c: Likewise. 1097*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint32.c: Likewise. 1098*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint64.c: Likewise. 1099*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_dbls_struct.c: Likewise. 1100*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_pointer_stack.c: Likewise. 1101*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_typedef.c: Likewise. 1102*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/huge_struct.c: Likewise. 1103*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct.c: Likewise. 1104*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct1.c: Likewise. 1105*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct10.c: Likewise. 1106*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct2.c: Likewise. 1107*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct3.c: Likewise. 1108*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct4.c: Likewise. 1109*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct5.c: Likewise. 1110*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct6.c: Likewise. 1111*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct7.c: Likewise. 1112*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct8.c: Likewise. 1113*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct9.c: Likewise. 1114*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_large.c: Likewise. 1115*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_large2.c: Likewise. 1116*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_medium.c: Likewise. 1117*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_medium2.c: Likewise. 1118*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct1.c: Likewise. 1119*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct1_win32.c: Likewise. 1120*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct2.c: Likewise. 1121*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct2_win32.c: Likewise. 1122*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct3.c: Likewise. 1123*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct4.c: Likewise. 1124*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct5.c: Likewise. 1125*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct6.c: Likewise. 1126*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct7.c: Likewise. 1127*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct8.c: Likewise. 1128*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct9.c: Likewise. 1129*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/testclosure.c: Likewise. 1130*1fd5a2e1SPrashanth Swaminathan 1131*1fd5a2e1SPrashanth Swaminathan2012-03-21 Peter Rosin <[email protected]> 1132*1fd5a2e1SPrashanth Swaminathan 1133*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float_va.c (float_va_fn): Use %f when 1134*1fd5a2e1SPrashanth Swaminathan printing doubles (%lf is for long doubles). 1135*1fd5a2e1SPrashanth Swaminathan (main): Likewise. 1136*1fd5a2e1SPrashanth Swaminathan 1137*1fd5a2e1SPrashanth Swaminathan2012-03-21 Peter Rosin <[email protected]> 1138*1fd5a2e1SPrashanth Swaminathan 1139*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/target-libpath.exp [*-*-cygwin*, *-*-mingw*] 1140*1fd5a2e1SPrashanth Swaminathan (set_ld_library_path_env_vars): Add the library search dir to PATH 1141*1fd5a2e1SPrashanth Swaminathan (and save PATH for later). 1142*1fd5a2e1SPrashanth Swaminathan (restore_ld_library_path_env_vars): Restore PATH. 1143*1fd5a2e1SPrashanth Swaminathan 1144*1fd5a2e1SPrashanth Swaminathan2012-03-21 Peter Rosin <[email protected]> 1145*1fd5a2e1SPrashanth Swaminathan 1146*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/target-libpath.exp [*-*-cygwin*, *-*-mingw*] 1147*1fd5a2e1SPrashanth Swaminathan (set_ld_library_path_env_vars): Add the library search dir to PATH 1148*1fd5a2e1SPrashanth Swaminathan (and save PATH for later). 1149*1fd5a2e1SPrashanth Swaminathan (restore_ld_library_path_env_vars): Restore PATH. 1150*1fd5a2e1SPrashanth Swaminathan 1151*1fd5a2e1SPrashanth Swaminathan2012-03-20 Peter Rosin <[email protected]> 1152*1fd5a2e1SPrashanth Swaminathan 1153*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/strlen2_win32.c (main): Remove bug. 1154*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S [MSVC] (ffi_closure_SYSV): Make the 'stub' label 1155*1fd5a2e1SPrashanth Swaminathan visible outside the PROC, so that ffi_closure_THISCALL can see it. 1156*1fd5a2e1SPrashanth Swaminathan 1157*1fd5a2e1SPrashanth Swaminathan2012-03-20 Peter Rosin <[email protected]> 1158*1fd5a2e1SPrashanth Swaminathan 1159*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/strlen2_win32.c (main): Remove bug. 1160*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S [MSVC] (ffi_closure_SYSV): Make the 'stub' label 1161*1fd5a2e1SPrashanth Swaminathan visible outside the PROC, so that ffi_closure_THISCALL can see it. 1162*1fd5a2e1SPrashanth Swaminathan 1163*1fd5a2e1SPrashanth Swaminathan2012-03-19 Alan Hourihane <[email protected]> 1164*1fd5a2e1SPrashanth Swaminathan 1165*1fd5a2e1SPrashanth Swaminathan * src/m68k/ffi.c: Add MINT support. 1166*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S: Ditto. 1167*1fd5a2e1SPrashanth Swaminathan 1168*1fd5a2e1SPrashanth Swaminathan2012-03-06 Chung-Lin Tang <[email protected]> 1169*1fd5a2e1SPrashanth Swaminathan 1170*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_call): Add __ARM_EABI__ guard around call to 1171*1fd5a2e1SPrashanth Swaminathan ffi_call_VFP(). 1172*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Add __ARM_EABI__ guard around use of 1173*1fd5a2e1SPrashanth Swaminathan ffi_closure_VFP. 1174*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Add __ARM_EABI__ guard around VFP code. 1175*1fd5a2e1SPrashanth Swaminathan 1176*1fd5a2e1SPrashanth Swaminathan2012-03-19 chennam <[email protected]> 1177*1fd5a2e1SPrashanth Swaminathan 1178*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure 1179*1fd5a2e1SPrashanth Swaminathan support. 1180*1fd5a2e1SPrashanth Swaminathan 1181*1fd5a2e1SPrashanth Swaminathan2012-03-13 Kaz Kojima <[email protected]> 1182*1fd5a2e1SPrashanth Swaminathan 1183*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test, 1184*1fd5a2e1SPrashanth Swaminathan just return FFI_BAD_ABI when things are wrong. 1185*1fd5a2e1SPrashanth Swaminathan * src/sh64/ffi.c (ffi_prep_closure_loc): Ditto. 1186*1fd5a2e1SPrashanth Swaminathan 1187*1fd5a2e1SPrashanth Swaminathan2012-03-09 David Edelsohn <[email protected]> 1188*1fd5a2e1SPrashanth Swaminathan 1189*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S (ffi_closure_ASM): Adjust for Darwin64 1190*1fd5a2e1SPrashanth Swaminathan change to return value of ffi_closure_helper_DARWIN and load type 1191*1fd5a2e1SPrashanth Swaminathan from return type. 1192*1fd5a2e1SPrashanth Swaminathan 1193*1fd5a2e1SPrashanth Swaminathan2012-03-03 H.J. Lu <[email protected]> 1194*1fd5a2e1SPrashanth Swaminathan 1195*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (ffi_call): Cast the return value to unsigned 1196*1fd5a2e1SPrashanth Swaminathan long. 1197*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Cast to 64bit address in trampoline. 1198*1fd5a2e1SPrashanth Swaminathan (ffi_closure_unix64_inner): Cast return pointer to unsigned long 1199*1fd5a2e1SPrashanth Swaminathan first. 1200*1fd5a2e1SPrashanth Swaminathan 1201*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h (FFI_SIZEOF_ARG): Defined to 8 for x32. 1202*1fd5a2e1SPrashanth Swaminathan (ffi_arg): Set to unsigned long long for x32. 1203*1fd5a2e1SPrashanth Swaminathan (ffi_sarg): Set to long long for x32. 1204*1fd5a2e1SPrashanth Swaminathan 1205*1fd5a2e1SPrashanth Swaminathan2012-03-03 H.J. Lu <[email protected]> 1206*1fd5a2e1SPrashanth Swaminathan 1207*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif_core): Properly check bad ABI. 1208*1fd5a2e1SPrashanth Swaminathan 1209*1fd5a2e1SPrashanth Swaminathan2012-03-03 Andoni Morales Alastruey <[email protected]> 1210*1fd5a2e1SPrashanth Swaminathan 1211*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add -no-undefined for both 32- and 64-bit x86 1212*1fd5a2e1SPrashanth Swaminathan windows-like hosts. 1213*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1214*1fd5a2e1SPrashanth Swaminathan 1215*1fd5a2e1SPrashanth Swaminathan2012-02-27 Mikael Pettersson <[email protected]> 1216*1fd5a2e1SPrashanth Swaminathan 1217*1fd5a2e1SPrashanth Swaminathan PR libffi/52223 1218*1fd5a2e1SPrashanth Swaminathan * Makefile.am (FLAGS_TO_PASS): Define. 1219*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 1220*1fd5a2e1SPrashanth Swaminathan 1221*1fd5a2e1SPrashanth Swaminathan2012-02-23 Anthony Green <[email protected]> 1222*1fd5a2e1SPrashanth Swaminathan 1223*1fd5a2e1SPrashanth Swaminathan * src/*/ffitarget.h: Ensure that users never include ffitarget.h 1224*1fd5a2e1SPrashanth Swaminathan directly. 1225*1fd5a2e1SPrashanth Swaminathan 1226*1fd5a2e1SPrashanth Swaminathan2012-02-23 Kai Tietz <[email protected]> 1227*1fd5a2e1SPrashanth Swaminathan 1228*1fd5a2e1SPrashanth Swaminathan PR libffi/52221 1229*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_closure_raw_THISCALL): New 1230*1fd5a2e1SPrashanth Swaminathan prototype. 1231*1fd5a2e1SPrashanth Swaminathan (ffi_prep_raw_closure_loc): Use ffi_closure_raw_THISCALL for 1232*1fd5a2e1SPrashanth Swaminathan thiscall-convention. 1233*1fd5a2e1SPrashanth Swaminathan (ffi_raw_call): Use ffi_prep_args_raw. 1234*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_closure_raw_THISCALL): Add 1235*1fd5a2e1SPrashanth Swaminathan implementation for stub. 1236*1fd5a2e1SPrashanth Swaminathan 1237*1fd5a2e1SPrashanth Swaminathan2012-02-10 Kai Tietz <[email protected]> 1238*1fd5a2e1SPrashanth Swaminathan 1239*1fd5a2e1SPrashanth Swaminathan * configure.ac (AM_LTLDFLAGS): Add -no-undefine for x64 1240*1fd5a2e1SPrashanth Swaminathan windows target. 1241*1fd5a2e1SPrashanth Swaminathan * configure: Regenerated. 1242*1fd5a2e1SPrashanth Swaminathan 1243*1fd5a2e1SPrashanth Swaminathan2012-02-08 Kai Tietz <[email protected]> 1244*1fd5a2e1SPrashanth Swaminathan 1245*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif): Allow for X86_WIN32 1246*1fd5a2e1SPrashanth Swaminathan also FFI_THISCALL. 1247*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_closure_THISCALL): Add prototype. 1248*1fd5a2e1SPrashanth Swaminathan (FFI_INIT_TRAMPOLINE_THISCALL): New trampoline code. 1249*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Add FFI_THISCALL support. 1250*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h (FFI_TRAMPOLINE_SIZE): Adjust size. 1251*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_closure_THISCALL): New closure code 1252*1fd5a2e1SPrashanth Swaminathan for thiscall-calling convention. 1253*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_thiscall.c: New test. 1254*1fd5a2e1SPrashanth Swaminathan 1255*1fd5a2e1SPrashanth Swaminathan2012-01-28 Kai Tietz <[email protected]> 1256*1fd5a2e1SPrashanth Swaminathan 1257*1fd5a2e1SPrashanth Swaminathan * src/libffi/src/x86/ffi.c (ffi_call_win32): Add new 1258*1fd5a2e1SPrashanth Swaminathan argument to prototype for specify calling-convention. 1259*1fd5a2e1SPrashanth Swaminathan (ffi_call): Add support for stdcall/thiscall convention. 1260*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args): Likewise. 1261*1fd5a2e1SPrashanth Swaminathan (ffi_raw_call): Likewise. 1262*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h (ffi_abi): Add FFI_THISCALL and 1263*1fd5a2e1SPrashanth Swaminathan FFI_FASTCALL. 1264*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (_ffi_call_win32): Add support for 1265*1fd5a2e1SPrashanth Swaminathan fastcall/thiscall calling-convention calls. 1266*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis1_win32.c: New test. 1267*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis2_win32.c: New test. 1268*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/fastthis3_win32.c: New test. 1269*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/strlen2_win32.c: New test. 1270*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many2_win32.c: New test. 1271*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct1_win32.c: New test. 1272*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct2_win32.c: New test. 1273*1fd5a2e1SPrashanth Swaminathan 1274*1fd5a2e1SPrashanth Swaminathan2012-01-23 Uros Bizjak <[email protected]> 1275*1fd5a2e1SPrashanth Swaminathan 1276*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c (ffi_prep_closure_loc): Check for bad ABI. 1277*1fd5a2e1SPrashanth Swaminathan 1278*1fd5a2e1SPrashanth Swaminathan2012-01-23 Anthony Green <[email protected]> 1279*1fd5a2e1SPrashanth Swaminathan Chris Young <[email protected]> 1280*1fd5a2e1SPrashanth Swaminathan 1281*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add Amiga support. 1282*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1283*1fd5a2e1SPrashanth Swaminathan 1284*1fd5a2e1SPrashanth Swaminathan2012-01-23 Dmitry Nadezhin <[email protected]> 1285*1fd5a2e1SPrashanth Swaminathan 1286*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h (LIKELY, UNLIKELY): Fix definitions. 1287*1fd5a2e1SPrashanth Swaminathan 1288*1fd5a2e1SPrashanth Swaminathan2012-01-23 Andreas Schwab <[email protected]> 1289*1fd5a2e1SPrashanth Swaminathan 1290*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S (ffi_call_SYSV): Properly test for plain 1291*1fd5a2e1SPrashanth Swaminathan mc68000. Test for __HAVE_68881__ in addition to __MC68881__. 1292*1fd5a2e1SPrashanth Swaminathan 1293*1fd5a2e1SPrashanth Swaminathan2012-01-19 Jakub Jelinek <[email protected]> 1294*1fd5a2e1SPrashanth Swaminathan 1295*1fd5a2e1SPrashanth Swaminathan PR rtl-optimization/48496 1296*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c (ffi_call): Fix up aliasing violations. 1297*1fd5a2e1SPrashanth Swaminathan 1298*1fd5a2e1SPrashanth Swaminathan2012-01-09 Rainer Orth <[email protected]> 1299*1fd5a2e1SPrashanth Swaminathan 1300*1fd5a2e1SPrashanth Swaminathan * configure.ac (i?86-*-*): Set TARGET to X86_64. 1301*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1302*1fd5a2e1SPrashanth Swaminathan 1303*1fd5a2e1SPrashanth Swaminathan2011-12-07 Andrew Pinski <[email protected]> 1304*1fd5a2e1SPrashanth Swaminathan 1305*1fd5a2e1SPrashanth Swaminathan PR libffi/50051 1306*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S: Add ".set mips4". 1307*1fd5a2e1SPrashanth Swaminathan 1308*1fd5a2e1SPrashanth Swaminathan2011-11-21 Andreas Tobler <[email protected]> 1309*1fd5a2e1SPrashanth Swaminathan 1310*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1311*1fd5a2e1SPrashanth Swaminathan 1312*1fd5a2e1SPrashanth Swaminathan2011-11-12 David Gilbert <[email protected]> 1313*1fd5a2e1SPrashanth Swaminathan 1314*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi, include/ffi.h.in, include/ffi_common.h, 1315*1fd5a2e1SPrashanth Swaminathan man/Makefile.am, man/ffi.3, man/ffi_prep_cif.3, 1316*1fd5a2e1SPrashanth Swaminathan man/ffi_prep_cif_var.3, src/arm/ffi.c, src/arm/ffitarget.h, 1317*1fd5a2e1SPrashanth Swaminathan src/cris/ffi.c, src/prep_cif.c, 1318*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_double_va.c, 1319*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble_va.c, 1320*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/float_va.c: Many changes to support variadic 1321*1fd5a2e1SPrashanth Swaminathan function calls. 1322*1fd5a2e1SPrashanth Swaminathan 1323*1fd5a2e1SPrashanth Swaminathan2011-11-12 Kyle Moffett <[email protected]> 1324*1fd5a2e1SPrashanth Swaminathan 1325*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c, src/powerpc/ffitarget.h, 1326*1fd5a2e1SPrashanth Swaminathan src/powerpc/ppc_closure.S, src/powerpc/sysv.S: Many changes for 1327*1fd5a2e1SPrashanth Swaminathan softfloat powerpc variants. 1328*1fd5a2e1SPrashanth Swaminathan 1329*1fd5a2e1SPrashanth Swaminathan2011-11-12 Petr Salinger <[email protected]> 1330*1fd5a2e1SPrashanth Swaminathan 1331*1fd5a2e1SPrashanth Swaminathan * configure.ac (FFI_EXEC_TRAMPOLINE_TABLE): Fix kfreebsd support. 1332*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1333*1fd5a2e1SPrashanth Swaminathan 1334*1fd5a2e1SPrashanth Swaminathan2011-11-12 Timothy Wall <[email protected]> 1335*1fd5a2e1SPrashanth Swaminathan 1336*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_prep_args, ffi_prep_incoming_args_SYSV): Max 1337*1fd5a2e1SPrashanth Swaminathan alignment of 4 for wince on ARM. 1338*1fd5a2e1SPrashanth Swaminathan 1339*1fd5a2e1SPrashanth Swaminathan2011-11-12 Kyle Moffett <[email protected]> 1340*1fd5a2e1SPrashanth Swaminathan Anthony Green <[email protected]> 1341*1fd5a2e1SPrashanth Swaminathan 1342*1fd5a2e1SPrashanth Swaminathan * src/ppc/sysv.S, src/ppc/ffi.c: Remove use of ppc string 1343*1fd5a2e1SPrashanth Swaminathan instructions (not available on some cores, like the PPC440). 1344*1fd5a2e1SPrashanth Swaminathan 1345*1fd5a2e1SPrashanth Swaminathan2011-11-12 Kimura Wataru <[email protected]> 1346*1fd5a2e1SPrashanth Swaminathan 1347*1fd5a2e1SPrashanth Swaminathan * m4/ax_enable_builddir: Change from string comparison to numeric 1348*1fd5a2e1SPrashanth Swaminathan comparison for wc output. 1349*1fd5a2e1SPrashanth Swaminathan * configure.ac: Enable FFI_MMAP_EXEC_WRIT for darwin11 aka Mac OS 1350*1fd5a2e1SPrashanth Swaminathan X 10.7. 1351*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1352*1fd5a2e1SPrashanth Swaminathan 1353*1fd5a2e1SPrashanth Swaminathan2011-11-12 Anthony Green <[email protected]> 1354*1fd5a2e1SPrashanth Swaminathan 1355*1fd5a2e1SPrashanth Swaminathan * Makefile.am (AM_CCASFLAGS): Add -g option to build assembly 1356*1fd5a2e1SPrashanth Swaminathan files with debug info. 1357*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 1358*1fd5a2e1SPrashanth Swaminathan 1359*1fd5a2e1SPrashanth Swaminathan2011-11-12 Jasper Lievisse Adriaanse <[email protected]> 1360*1fd5a2e1SPrashanth Swaminathan 1361*1fd5a2e1SPrashanth Swaminathan * README: Update list of supported OpenBSD systems. 1362*1fd5a2e1SPrashanth Swaminathan 1363*1fd5a2e1SPrashanth Swaminathan2011-11-12 Anthony Green <[email protected]> 1364*1fd5a2e1SPrashanth Swaminathan 1365*1fd5a2e1SPrashanth Swaminathan * libtool-version: Update. 1366*1fd5a2e1SPrashanth Swaminathan * Makefile.am (nodist_libffi_la_SOURCES): Add src/debug.c if 1367*1fd5a2e1SPrashanth Swaminathan FFI_DEBUG. 1368*1fd5a2e1SPrashanth Swaminathan (libffi_la_SOURCES): Remove src/debug.c 1369*1fd5a2e1SPrashanth Swaminathan (EXTRA_DIST): Add src/debug.c 1370*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 1371*1fd5a2e1SPrashanth Swaminathan * README: Update for 3.0.11. 1372*1fd5a2e1SPrashanth Swaminathan 1373*1fd5a2e1SPrashanth Swaminathan2011-11-10 Richard Henderson <[email protected]> 1374*1fd5a2e1SPrashanth Swaminathan 1375*1fd5a2e1SPrashanth Swaminathan * configure.ac (GCC_AS_CFI_PSEUDO_OP): Use it instead of inline check. 1376*1fd5a2e1SPrashanth Swaminathan * configure, aclocal.m4: Rebuild. 1377*1fd5a2e1SPrashanth Swaminathan 1378*1fd5a2e1SPrashanth Swaminathan2011-09-04 Iain Sandoe <[email protected]> 1379*1fd5a2e1SPrashanth Swaminathan 1380*1fd5a2e1SPrashanth Swaminathan PR libffi/49594 1381*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S (stubs): Make the stub binding 1382*1fd5a2e1SPrashanth Swaminathan helper reference track the architecture pointer size. 1383*1fd5a2e1SPrashanth Swaminathan 1384*1fd5a2e1SPrashanth Swaminathan2011-08-25 Andrew Haley <[email protected]> 1385*1fd5a2e1SPrashanth Swaminathan 1386*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Remove hard-coded assembly 1387*1fd5a2e1SPrashanth Swaminathan instructions. 1388*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S (ffi_arm_trampoline): Put them here instead. 1389*1fd5a2e1SPrashanth Swaminathan 1390*1fd5a2e1SPrashanth Swaminathan2011-07-11 Andrew Haley <[email protected]> 1391*1fd5a2e1SPrashanth Swaminathan 1392*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Clear icache. 1393*1fd5a2e1SPrashanth Swaminathan 1394*1fd5a2e1SPrashanth Swaminathan2011-06-29 Rainer Orth <[email protected]> 1395*1fd5a2e1SPrashanth Swaminathan 1396*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double_va.c: Move PR number to comment. 1397*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble_va.c: Likewise. 1398*1fd5a2e1SPrashanth Swaminathan 1399*1fd5a2e1SPrashanth Swaminathan2011-06-29 Rainer Orth <[email protected]> 1400*1fd5a2e1SPrashanth Swaminathan 1401*1fd5a2e1SPrashanth Swaminathan PR libffi/46660 1402*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double_va.c: xfail dg-output on 1403*1fd5a2e1SPrashanth Swaminathan mips-sgi-irix6*. 1404*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble_va.c: Likewise. 1405*1fd5a2e1SPrashanth Swaminathan 1406*1fd5a2e1SPrashanth Swaminathan2011-06-14 Rainer Orth <[email protected]> 1407*1fd5a2e1SPrashanth Swaminathan 1408*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/huge_struct.c (test_large_fn): Use PRIu8, 1409*1fd5a2e1SPrashanth Swaminathan PRId8 instead of %hhu, %hhd. 1410*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h [__alpha__ && __osf__] (PRId8, 1411*1fd5a2e1SPrashanth Swaminathan PRIu8): Define. 1412*1fd5a2e1SPrashanth Swaminathan [__sgi__] (PRId8, PRIu8): Define. 1413*1fd5a2e1SPrashanth Swaminathan 1414*1fd5a2e1SPrashanth Swaminathan2011-04-29 Rainer Orth <[email protected]> 1415*1fd5a2e1SPrashanth Swaminathan 1416*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S (UA_SI, FDE_ENCODING, FDE_ENCODE, FDE_ARANGE): 1417*1fd5a2e1SPrashanth Swaminathan Define. 1418*1fd5a2e1SPrashanth Swaminathan Use them to handle ELF vs. ECOFF differences. 1419*1fd5a2e1SPrashanth Swaminathan [__osf__] (_GLOBAL__F_ffi_call_osf): Define. 1420*1fd5a2e1SPrashanth Swaminathan 1421*1fd5a2e1SPrashanth Swaminathan2011-03-30 Timothy Wall <[email protected]> 1422*1fd5a2e1SPrashanth Swaminathan 1423*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Fix unknown FDE encoding. 1424*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: ditto. 1425*1fd5a2e1SPrashanth Swaminathan 1426*1fd5a2e1SPrashanth Swaminathan2011-02-25 Anthony Green <[email protected]> 1427*1fd5a2e1SPrashanth Swaminathan 1428*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_closure_loc): Allow for more 1429*1fd5a2e1SPrashanth Swaminathan 32-bit ABIs. 1430*1fd5a2e1SPrashanth Swaminathan 1431*1fd5a2e1SPrashanth Swaminathan2011-02-15 Anthony Green <[email protected]> 1432*1fd5a2e1SPrashanth Swaminathan 1433*1fd5a2e1SPrashanth Swaminathan * m4/ax_cc_maxopt.m4: Don't -malign-double or use -ffast-math. 1434*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1435*1fd5a2e1SPrashanth Swaminathan 1436*1fd5a2e1SPrashanth Swaminathan2011-02-13 Ralf Wildenhues <[email protected]> 1437*1fd5a2e1SPrashanth Swaminathan 1438*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1439*1fd5a2e1SPrashanth Swaminathan 1440*1fd5a2e1SPrashanth Swaminathan2011-02-13 Anthony Green <[email protected]> 1441*1fd5a2e1SPrashanth Swaminathan 1442*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h (UNLIKELY, LIKELY): Define. 1443*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (UNLIKELY, LIKELY): Remove definition. 1444*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (UNLIKELY, LIKELY): Remove definition. 1445*1fd5a2e1SPrashanth Swaminathan 1446*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (initialize_aggregate): Convert assertion into 1447*1fd5a2e1SPrashanth Swaminathan FFI_BAD_TYPEDEF return. Initialize arg size and alignment to 0. 1448*1fd5a2e1SPrashanth Swaminathan 1449*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test, 1450*1fd5a2e1SPrashanth Swaminathan just return FFI_BAD_ABI when things are wrong. 1451*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_prep_closure_loc): Ditto. 1452*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_closure_loc): Ditto. 1453*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_prep_closure_loc): Ditto. 1454*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c (ffi_prep_closure_loc): Ditto. 1455*1fd5a2e1SPrashanth Swaminathan * src/avr32/ffi.c (ffi_prep_closure_loc): Ditto. 1456*1fd5a2e1SPrashanth Swaminathan 1457*1fd5a2e1SPrashanth Swaminathan2011-02-11 Anthony Green <[email protected]> 1458*1fd5a2e1SPrashanth Swaminathan 1459*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test, 1460*1fd5a2e1SPrashanth Swaminathan just return FFI_BAD_ABI when things are wrong. 1461*1fd5a2e1SPrashanth Swaminathan 1462*1fd5a2e1SPrashanth Swaminathan2012-02-11 Eric Botcazou <[email protected]> 1463*1fd5a2e1SPrashanth Swaminathan 1464*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S (STACKFRAME): Bump to 176. 1465*1fd5a2e1SPrashanth Swaminathan 1466*1fd5a2e1SPrashanth Swaminathan2011-02-09 Stuart Shelton <[email protected]> 1467*1fd5a2e1SPrashanth Swaminathan 1468*1fd5a2e1SPrashanth Swaminathan http://bugs.gentoo.org/show_bug.cgi?id=286911 1469*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h: Clean up error messages. 1470*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c (ffi_java_translate_args): Cast raw arg to 1471*1fd5a2e1SPrashanth Swaminathan ffi_raw*. 1472*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add pragma for SGI compiler. 1473*1fd5a2e1SPrashanth Swaminathan 1474*1fd5a2e1SPrashanth Swaminathan2011-02-09 Anthony Green <[email protected]> 1475*1fd5a2e1SPrashanth Swaminathan 1476*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add powerpc64-*-darwin* support. 1477*1fd5a2e1SPrashanth Swaminathan 1478*1fd5a2e1SPrashanth Swaminathan2011-02-09 Anthony Green <[email protected]> 1479*1fd5a2e1SPrashanth Swaminathan 1480*1fd5a2e1SPrashanth Swaminathan * README: Mention Interix. 1481*1fd5a2e1SPrashanth Swaminathan 1482*1fd5a2e1SPrashanth Swaminathan2011-02-09 Jonathan Callen <[email protected]> 1483*1fd5a2e1SPrashanth Swaminathan 1484*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add Interix to win32/cygwin/mingw case. 1485*1fd5a2e1SPrashanth Swaminathan * configure: Ditto. 1486*1fd5a2e1SPrashanth Swaminathan * src/closures.c: Treat Interix like Cygwin, instead of as a 1487*1fd5a2e1SPrashanth Swaminathan generic win32. 1488*1fd5a2e1SPrashanth Swaminathan 1489*1fd5a2e1SPrashanth Swaminathan2011-02-09 Anthony Green <[email protected]> 1490*1fd5a2e1SPrashanth Swaminathan 1491*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_typedef.c: Remove xfail. 1492*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_abi.c: Remove xfail. 1493*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (UNLIKELY, LIKELY): Define. 1494*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Check for bad ABI. 1495*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (UNLIKELY, LIKELY): Define. 1496*1fd5a2e1SPrashanth Swaminathan (initialize_aggregate): Check for bad types. 1497*1fd5a2e1SPrashanth Swaminathan 1498*1fd5a2e1SPrashanth Swaminathan2011-02-09 Landon Fuller <[email protected]> 1499*1fd5a2e1SPrashanth Swaminathan 1500*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add build-ios.sh, src/arm/gentramp.sh, 1501*1fd5a2e1SPrashanth Swaminathan src/arm/trampoline.S. 1502*1fd5a2e1SPrashanth Swaminathan (nodist_libffi_la_SOURCES): Add src/arc/trampoline.S. 1503*1fd5a2e1SPrashanth Swaminathan * configure.ac (FFI_EXEC_TRAMPOLINE_TABLE): Define. 1504*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_trampoline_table) 1505*1fd5a2e1SPrashanth Swaminathan (ffi_closure_trampoline_table_page, ffi_trampoline_table_entry) 1506*1fd5a2e1SPrashanth Swaminathan (FFI_TRAMPOLINE_CODELOC_CONFIG, FFI_TRAMPOLINE_CONFIG_PAGE_OFFSET) 1507*1fd5a2e1SPrashanth Swaminathan (FFI_TRAMPOLINE_COUNT, ffi_trampoline_lock, ffi_trampoline_tables) 1508*1fd5a2e1SPrashanth Swaminathan (ffi_trampoline_table_alloc, ffi_closure_alloc, ffi_closure_free): 1509*1fd5a2e1SPrashanth Swaminathan Define for FFI_EXEC_TRAMPOLINE_TABLE case (iOS). 1510*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Handl FFI_EXEC_TRAMPOLINE_TABLE case 1511*1fd5a2e1SPrashanth Swaminathan separately. 1512*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Handle Apple iOS host. 1513*1fd5a2e1SPrashanth Swaminathan * src/closures.c: Handle FFI_EXEC_TRAMPOLINE_TABLE case. 1514*1fd5a2e1SPrashanth Swaminathan * build-ios.sh: New file. 1515*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in, configure, Makefile.in: Rebuilt. 1516*1fd5a2e1SPrashanth Swaminathan * README: Mention ARM iOS. 1517*1fd5a2e1SPrashanth Swaminathan 1518*1fd5a2e1SPrashanth Swaminathan2011-02-08 Oren Held <[email protected]> 1519*1fd5a2e1SPrashanth Swaminathan 1520*1fd5a2e1SPrashanth Swaminathan * src/dlmalloc.c (_STRUCT_MALLINFO): Define in order to avoid 1521*1fd5a2e1SPrashanth Swaminathan redefinition of mallinfo on HP-UX. 1522*1fd5a2e1SPrashanth Swaminathan 1523*1fd5a2e1SPrashanth Swaminathan2011-02-08 Ginn Chen <[email protected]> 1524*1fd5a2e1SPrashanth Swaminathan 1525*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_call): Make compatible with Solaris Studio 1526*1fd5a2e1SPrashanth Swaminathan aggregate return ABI. Flush cache. 1527*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Flush cache. 1528*1fd5a2e1SPrashanth Swaminathan 1529*1fd5a2e1SPrashanth Swaminathan2011-02-11 Anthony Green <[email protected]> 1530*1fd5a2e1SPrashanth Swaminathan 1531*1fd5a2e1SPrashanth Swaminathan From Tom Honermann <[email protected]>: 1532*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S (ffi_call_AIX): Support for xlc toolchain on 1533*1fd5a2e1SPrashanth Swaminathan AIX. Declare .ffi_prep_args. Insert nops after branch 1534*1fd5a2e1SPrashanth Swaminathan instructions so that the AIX linker can insert TOC reload 1535*1fd5a2e1SPrashanth Swaminathan instructions. 1536*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: Declare .ffi_closure_helper_DARWIN. 1537*1fd5a2e1SPrashanth Swaminathan 1538*1fd5a2e1SPrashanth Swaminathan2011-02-08 Ed <[email protected]> 1539*1fd5a2e1SPrashanth Swaminathan 1540*1fd5a2e1SPrashanth Swaminathan * src/powerpc/asm.h: Fix grammar nit in comment. 1541*1fd5a2e1SPrashanth Swaminathan 1542*1fd5a2e1SPrashanth Swaminathan2011-02-08 Uli Link <[email protected]> 1543*1fd5a2e1SPrashanth Swaminathan 1544*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (FFI_64_BIT_MAX): Define and use. 1545*1fd5a2e1SPrashanth Swaminathan 1546*1fd5a2e1SPrashanth Swaminathan2011-02-09 Rainer Orth <[email protected]> 1547*1fd5a2e1SPrashanth Swaminathan 1548*1fd5a2e1SPrashanth Swaminathan PR libffi/46661 1549*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_pointer.c (main): Cast void * to 1550*1fd5a2e1SPrashanth Swaminathan uintptr_t first. 1551*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_pointer_stack.c (main): Likewise. 1552*1fd5a2e1SPrashanth Swaminathan 1553*1fd5a2e1SPrashanth Swaminathan2011-02-08 Rafael Avila de Espindola <[email protected]> 1554*1fd5a2e1SPrashanth Swaminathan 1555*1fd5a2e1SPrashanth Swaminathan * configure.ac: Fix x86 test for pc related relocs. 1556*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1557*1fd5a2e1SPrashanth Swaminathan 1558*1fd5a2e1SPrashanth Swaminathan2011-02-07 Joel Sherrill <[email protected]> 1559*1fd5a2e1SPrashanth Swaminathan 1560*1fd5a2e1SPrashanth Swaminathan * libffi/src/m68k/ffi.c: Add RTEMS support for cache flushing. 1561*1fd5a2e1SPrashanth Swaminathan Handle case when CPU variant does not have long double support. 1562*1fd5a2e1SPrashanth Swaminathan * libffi/src/m68k/sysv.S: Add support for mc68000, Coldfire, 1563*1fd5a2e1SPrashanth Swaminathan and cores with soft floating point. 1564*1fd5a2e1SPrashanth Swaminathan 1565*1fd5a2e1SPrashanth Swaminathan2011-02-07 Joel Sherrill <[email protected]> 1566*1fd5a2e1SPrashanth Swaminathan 1567*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add mips*-*-rtems* support. 1568*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1569*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h: Ensure needed constants are available 1570*1fd5a2e1SPrashanth Swaminathan for targets which do not have sgidefs.h. 1571*1fd5a2e1SPrashanth Swaminathan 1572*1fd5a2e1SPrashanth Swaminathan2011-01-26 Dave Korn <[email protected]> 1573*1fd5a2e1SPrashanth Swaminathan 1574*1fd5a2e1SPrashanth Swaminathan PR target/40125 1575*1fd5a2e1SPrashanth Swaminathan * configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs. 1576*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1577*1fd5a2e1SPrashanth Swaminathan 1578*1fd5a2e1SPrashanth Swaminathan2010-12-18 Iain Sandoe <[email protected]> 1579*1fd5a2e1SPrashanth Swaminathan 1580*1fd5a2e1SPrashanth Swaminathan PR libffi/29152 1581*1fd5a2e1SPrashanth Swaminathan PR libffi/42378 1582*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Provide Darwin64 implementation, 1583*1fd5a2e1SPrashanth Swaminathan update comments. 1584*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h (POWERPC_DARWIN64): New, 1585*1fd5a2e1SPrashanth Swaminathan (FFI_TRAMPOLINE_SIZE): Update for Darwin64. 1586*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Provide Darwin64 implementation, 1587*1fd5a2e1SPrashanth Swaminathan update comments. 1588*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: Likewise. 1589*1fd5a2e1SPrashanth Swaminathan 1590*1fd5a2e1SPrashanth Swaminathan2010-12-06 Rainer Orth <[email protected]> 1591*1fd5a2e1SPrashanth Swaminathan 1592*1fd5a2e1SPrashanth Swaminathan * configure.ac (libffi_cv_as_ascii_pseudo_op): Use double 1593*1fd5a2e1SPrashanth Swaminathan backslashes. 1594*1fd5a2e1SPrashanth Swaminathan (libffi_cv_as_string_pseudo_op): Likewise. 1595*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1596*1fd5a2e1SPrashanth Swaminathan 1597*1fd5a2e1SPrashanth Swaminathan2010-12-03 Chung-Lin Tang <[email protected]> 1598*1fd5a2e1SPrashanth Swaminathan 1599*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive. 1600*1fd5a2e1SPrashanth Swaminathan (ffi_closure_VFP): Same. 1601*1fd5a2e1SPrashanth Swaminathan (ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp' 1602*1fd5a2e1SPrashanth Swaminathan directive. 1603*1fd5a2e1SPrashanth Swaminathan 1604*1fd5a2e1SPrashanth Swaminathan2010-12-01 Rainer Orth <[email protected]> 1605*1fd5a2e1SPrashanth Swaminathan 1606*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define. 1607*1fd5a2e1SPrashanth Swaminathan (PRIuPTR): Define. 1608*1fd5a2e1SPrashanth Swaminathan 1609*1fd5a2e1SPrashanth Swaminathan2010-11-29 Richard Henderson <[email protected]> 1610*1fd5a2e1SPrashanth Swaminathan Rainer Orth <[email protected]> 1611*1fd5a2e1SPrashanth Swaminathan 1612*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define. 1613*1fd5a2e1SPrashanth Swaminathan (.eh_frame): Use FDE_ENCODING. 1614*1fd5a2e1SPrashanth Swaminathan (.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE. 1615*1fd5a2e1SPrashanth Swaminathan 1616*1fd5a2e1SPrashanth Swaminathan2010-11-22 Jacek Caban <[email protected]> 1617*1fd5a2e1SPrashanth Swaminathan 1618*1fd5a2e1SPrashanth Swaminathan * configure.ac: Check for symbol underscores on mingw-w64. 1619*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1620*1fd5a2e1SPrashanth Swaminathan * src/x86/win64.S: Correctly access extern symbols in respect to 1621*1fd5a2e1SPrashanth Swaminathan underscores. 1622*1fd5a2e1SPrashanth Swaminathan 1623*1fd5a2e1SPrashanth Swaminathan2010-11-15 Rainer Orth <[email protected]> 1624*1fd5a2e1SPrashanth Swaminathan 1625*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Rename ... 1626*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi.exp: ... to this. 1627*1fd5a2e1SPrashanth Swaminathan * libffi/testsuite/libffi.call/call.exp: Don't load libffi-dg.exp. 1628*1fd5a2e1SPrashanth Swaminathan * libffi/testsuite/libffi.special/special.exp: Likewise. 1629*1fd5a2e1SPrashanth Swaminathan 1630*1fd5a2e1SPrashanth Swaminathan2010-10-28 Chung-Lin Tang <[email protected]> 1631*1fd5a2e1SPrashanth Swaminathan 1632*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_prep_args): Add VFP register argument handling 1633*1fd5a2e1SPrashanth Swaminathan code, new parameter, and return value. Update comments. 1634*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Add case for VFP struct return values. Add 1635*1fd5a2e1SPrashanth Swaminathan call to layout_vfp_args(). 1636*1fd5a2e1SPrashanth Swaminathan (ffi_call_SYSV): Update declaration. 1637*1fd5a2e1SPrashanth Swaminathan (ffi_call_VFP): New declaration. 1638*1fd5a2e1SPrashanth Swaminathan (ffi_call): Add VFP struct return conditions. Call ffi_call_VFP() 1639*1fd5a2e1SPrashanth Swaminathan when ABI is FFI_VFP. 1640*1fd5a2e1SPrashanth Swaminathan (ffi_closure_VFP): New declaration. 1641*1fd5a2e1SPrashanth Swaminathan (ffi_closure_SYSV_inner): Add new vfp_args parameter, update call to 1642*1fd5a2e1SPrashanth Swaminathan ffi_prep_incoming_args_SYSV(). 1643*1fd5a2e1SPrashanth Swaminathan (ffi_prep_incoming_args_SYSV): Update parameters. Add VFP argument 1644*1fd5a2e1SPrashanth Swaminathan case handling. 1645*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Pass ffi_closure_VFP to trampoline 1646*1fd5a2e1SPrashanth Swaminathan construction under VFP hard-float. 1647*1fd5a2e1SPrashanth Swaminathan (rec_vfp_type_p): New function. 1648*1fd5a2e1SPrashanth Swaminathan (vfp_type_p): Same. 1649*1fd5a2e1SPrashanth Swaminathan (place_vfp_arg): Same. 1650*1fd5a2e1SPrashanth Swaminathan (layout_vfp_args): Same. 1651*1fd5a2e1SPrashanth Swaminathan * src/arm/ffitarget.h (ffi_abi): Add FFI_VFP. Define FFI_DEFAULT_ABI 1652*1fd5a2e1SPrashanth Swaminathan based on __ARM_PCS_VFP. 1653*1fd5a2e1SPrashanth Swaminathan (FFI_EXTRA_CIF_FIELDS): Define for adding VFP hard-float specific 1654*1fd5a2e1SPrashanth Swaminathan fields. 1655*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_STRUCT_VFP_FLOAT): Define internally used type code. 1656*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_STRUCT_VFP_DOUBLE): Same. 1657*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S (ffi_call_SYSV): Change call of ffi_prep_args() to 1658*1fd5a2e1SPrashanth Swaminathan direct call. Move function pointer load upwards. 1659*1fd5a2e1SPrashanth Swaminathan (ffi_call_VFP): New function. 1660*1fd5a2e1SPrashanth Swaminathan (ffi_closure_VFP): Same. 1661*1fd5a2e1SPrashanth Swaminathan 1662*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (check-flags): New function. 1663*1fd5a2e1SPrashanth Swaminathan (dg-skip-if): New function. 1664*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double_va.c: Skip if target is arm*-*-* 1665*1fd5a2e1SPrashanth Swaminathan and compiler options include -mfloat-abi=hard. 1666*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble_va.c: Same. 1667*1fd5a2e1SPrashanth Swaminathan 1668*1fd5a2e1SPrashanth Swaminathan2010-10-01 Jakub Jelinek <[email protected]> 1669*1fd5a2e1SPrashanth Swaminathan 1670*1fd5a2e1SPrashanth Swaminathan PR libffi/45677 1671*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (ffi_prep_cif_machdep): Ensure cif->bytes is 1672*1fd5a2e1SPrashanth Swaminathan a multiple of 8. 1673*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many2.c: New test. 1674*1fd5a2e1SPrashanth Swaminathan 1675*1fd5a2e1SPrashanth Swaminathan2010-08-20 Mark Wielaard <[email protected]> 1676*1fd5a2e1SPrashanth Swaminathan 1677*1fd5a2e1SPrashanth Swaminathan * src/closures.c (open_temp_exec_file_mnt): Check if getmntent_r 1678*1fd5a2e1SPrashanth Swaminathan returns NULL. 1679*1fd5a2e1SPrashanth Swaminathan 1680*1fd5a2e1SPrashanth Swaminathan2010-08-09 Andreas Tobler <[email protected]> 1681*1fd5a2e1SPrashanth Swaminathan 1682*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add target powerpc64-*-freebsd*. 1683*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1684*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble_split.c: Pass 1685*1fd5a2e1SPrashanth Swaminathan -mlong-double-128 only to linux targets. 1686*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble_split2.c: Likewise. 1687*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble.c: Likewise. 1688*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/huge_struct.c: Likewise. 1689*1fd5a2e1SPrashanth Swaminathan 1690*1fd5a2e1SPrashanth Swaminathan2010-08-05 Dan Witte <[email protected]> 1691*1fd5a2e1SPrashanth Swaminathan 1692*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Pass FFI_DEBUG define to msvcc.sh for linking to the 1693*1fd5a2e1SPrashanth Swaminathan debug CRT when --enable-debug is given. 1694*1fd5a2e1SPrashanth Swaminathan * configure.ac: Define it. 1695*1fd5a2e1SPrashanth Swaminathan * msvcc.sh: Translate -g and -DFFI_DEBUG appropriately. 1696*1fd5a2e1SPrashanth Swaminathan 1697*1fd5a2e1SPrashanth Swaminathan2010-08-04 Dan Witte <[email protected]> 1698*1fd5a2e1SPrashanth Swaminathan 1699*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h: Add X86_ANY define for all x86/x86_64 1700*1fd5a2e1SPrashanth Swaminathan platforms. 1701*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Remove redundant ifdef checks. 1702*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c: Push stack space computation into src/x86/ffi.c 1703*1fd5a2e1SPrashanth Swaminathan for X86_ANY so return value space doesn't get added twice. 1704*1fd5a2e1SPrashanth Swaminathan 1705*1fd5a2e1SPrashanth Swaminathan2010-08-03 Neil Rashbrooke <[email protected]> 1706*1fd5a2e1SPrashanth Swaminathan 1707*1fd5a2e1SPrashanth Swaminathan * msvcc.sh: Don't pass -safeseh to ml64 because behavior is buggy. 1708*1fd5a2e1SPrashanth Swaminathan 1709*1fd5a2e1SPrashanth Swaminathan2010-07-22 Dan Witte <[email protected]> 1710*1fd5a2e1SPrashanth Swaminathan 1711*1fd5a2e1SPrashanth Swaminathan * src/*/ffitarget.h: Make FFI_LAST_ABI one past the last valid ABI. 1712*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c: Fix ABI assertion. 1713*1fd5a2e1SPrashanth Swaminathan * src/cris/ffi.c: Ditto. 1714*1fd5a2e1SPrashanth Swaminathan 1715*1fd5a2e1SPrashanth Swaminathan2010-07-10 Evan Phoenix <[email protected]> 1716*1fd5a2e1SPrashanth Swaminathan 1717*1fd5a2e1SPrashanth Swaminathan * src/closures.c (selinux_enabled_check): Fix strncmp usage bug. 1718*1fd5a2e1SPrashanth Swaminathan 1719*1fd5a2e1SPrashanth Swaminathan2010-07-07 Dan Horák <[email protected]> 1720*1fd5a2e1SPrashanth Swaminathan 1721*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Protect #define with #ifndef. 1722*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h: Ditto. 1723*1fd5a2e1SPrashanth Swaminathan * src/s390/ffitarget.h: Ditto. 1724*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffitarget.h: Ditto. 1725*1fd5a2e1SPrashanth Swaminathan 1726*1fd5a2e1SPrashanth Swaminathan2010-07-07 Neil Roberts <[email protected]> 1727*1fd5a2e1SPrashanth Swaminathan 1728*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (ffi_call_SYSV): Align the stack pointer to 1729*1fd5a2e1SPrashanth Swaminathan 16-bytes. 1730*1fd5a2e1SPrashanth Swaminathan 1731*1fd5a2e1SPrashanth Swaminathan2010-07-02 Jakub Jelinek <[email protected]> 1732*1fd5a2e1SPrashanth Swaminathan 1733*1fd5a2e1SPrashanth Swaminathan * Makefile.am (AM_MAKEFLAGS): Pass also mandir to submakes. 1734*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerated. 1735*1fd5a2e1SPrashanth Swaminathan 1736*1fd5a2e1SPrashanth Swaminathan2010-05-19 Rainer Orth <[email protected]> 1737*1fd5a2e1SPrashanth Swaminathan 1738*1fd5a2e1SPrashanth Swaminathan * configure.ac (libffi_cv_as_x86_pcrel): Check for illegal in as 1739*1fd5a2e1SPrashanth Swaminathan output, too. 1740*1fd5a2e1SPrashanth Swaminathan (libffi_cv_as_ascii_pseudo_op): Check for .ascii. 1741*1fd5a2e1SPrashanth Swaminathan (libffi_cv_as_string_pseudo_op): Check for .string. 1742*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1743*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Regenerate. 1744*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (.eh_frame): Use .ascii, .string or error. 1745*1fd5a2e1SPrashanth Swaminathan 1746*1fd5a2e1SPrashanth Swaminathan2010-05-11 Dan Witte <[email protected]> 1747*1fd5a2e1SPrashanth Swaminathan 1748*1fd5a2e1SPrashanth Swaminathan * doc/libffi.tex: Document previous change. 1749*1fd5a2e1SPrashanth Swaminathan 1750*1fd5a2e1SPrashanth Swaminathan2010-05-11 Makoto Kato <[email protected]> 1751*1fd5a2e1SPrashanth Swaminathan 1752*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_call): Don't copy structs passed by value. 1753*1fd5a2e1SPrashanth Swaminathan 1754*1fd5a2e1SPrashanth Swaminathan2010-05-05 Michael Kohler <[email protected]> 1755*1fd5a2e1SPrashanth Swaminathan 1756*1fd5a2e1SPrashanth Swaminathan * src/dlmalloc.c (dlfree): Fix spelling. 1757*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c (ffi_prep_cif_machdep): Ditto. 1758*1fd5a2e1SPrashanth Swaminathan * configure.ac: Ditto. 1759*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1760*1fd5a2e1SPrashanth Swaminathan 1761*1fd5a2e1SPrashanth Swaminathan2010-04-13 Dan Witte <[email protected]> 1762*1fd5a2e1SPrashanth Swaminathan 1763*1fd5a2e1SPrashanth Swaminathan * msvcc.sh: Build with -W3 instead of -Wall. 1764*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: Remove build warnings. 1765*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Ditto. 1766*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h: Ditto. 1767*1fd5a2e1SPrashanth Swaminathan 1768*1fd5a2e1SPrashanth Swaminathan2010-04-12 Dan Witte <[email protected]> 1769*1fd5a2e1SPrashanth Swaminathan Walter Meinl <[email protected]> 1770*1fd5a2e1SPrashanth Swaminathan 1771*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add OS/2 support. 1772*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1773*1fd5a2e1SPrashanth Swaminathan * src/closures.c: Ditto. 1774*1fd5a2e1SPrashanth Swaminathan * src/dlmalloc.c: Ditto. 1775*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S: Ditto. 1776*1fd5a2e1SPrashanth Swaminathan 1777*1fd5a2e1SPrashanth Swaminathan2010-04-07 Jakub Jelinek <[email protected]> 1778*1fd5a2e1SPrashanth Swaminathan 1779*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_abi.c: Remove unused args variable. 1780*1fd5a2e1SPrashanth Swaminathan 1781*1fd5a2e1SPrashanth Swaminathan2010-04-02 Ralf Wildenhues <[email protected]> 1782*1fd5a2e1SPrashanth Swaminathan 1783*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 1784*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate. 1785*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 1786*1fd5a2e1SPrashanth Swaminathan * man/Makefile.in: Regenerate. 1787*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerate. 1788*1fd5a2e1SPrashanth Swaminathan 1789*1fd5a2e1SPrashanth Swaminathan2010-03-30 Dan Witte <[email protected]> 1790*1fd5a2e1SPrashanth Swaminathan 1791*1fd5a2e1SPrashanth Swaminathan * msvcc.sh: Disable build warnings. 1792*1fd5a2e1SPrashanth Swaminathan * README (tested): Clarify windows build procedure. 1793*1fd5a2e1SPrashanth Swaminathan 1794*1fd5a2e1SPrashanth Swaminathan2010-03-15 Rainer Orth <[email protected]> 1795*1fd5a2e1SPrashanth Swaminathan 1796*1fd5a2e1SPrashanth Swaminathan * configure.ac (libffi_cv_as_x86_64_unwind_section_type): New test. 1797*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1798*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Regenerate. 1799*1fd5a2e1SPrashanth Swaminathan * libffi/src/x86/unix64.S (.eh_frame) 1800*1fd5a2e1SPrashanth Swaminathan [HAVE_AS_X86_64_UNWIND_SECTION_TYPE]: Use @unwind section type. 1801*1fd5a2e1SPrashanth Swaminathan 1802*1fd5a2e1SPrashanth Swaminathan2010-03-14 Matthias Klose <[email protected]> 1803*1fd5a2e1SPrashanth Swaminathan 1804*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c: Fix typo in comment. 1805*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Use /* ... */ comment style. 1806*1fd5a2e1SPrashanth Swaminathan 1807*1fd5a2e1SPrashanth Swaminathan2010-02-24 Rainer Orth <[email protected]> 1808*1fd5a2e1SPrashanth Swaminathan 1809*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi (The Closure API): Fix typo. 1810*1fd5a2e1SPrashanth Swaminathan * doc/libffi.info: Remove. 1811*1fd5a2e1SPrashanth Swaminathan 1812*1fd5a2e1SPrashanth Swaminathan2010-02-15 Matthias Klose <[email protected]> 1813*1fd5a2e1SPrashanth Swaminathan 1814*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S (__ARM_ARCH__): Define for processor 1815*1fd5a2e1SPrashanth Swaminathan __ARM_ARCH_7EM__. 1816*1fd5a2e1SPrashanth Swaminathan 1817*1fd5a2e1SPrashanth Swaminathan2010-01-15 Anthony Green <[email protected]> 1818*1fd5a2e1SPrashanth Swaminathan 1819*1fd5a2e1SPrashanth Swaminathan * README: Add notes on building with Microsoft Visual C++. 1820*1fd5a2e1SPrashanth Swaminathan 1821*1fd5a2e1SPrashanth Swaminathan2010-01-15 Daniel Witte <[email protected]> 1822*1fd5a2e1SPrashanth Swaminathan 1823*1fd5a2e1SPrashanth Swaminathan * msvcc.sh: New file. 1824*1fd5a2e1SPrashanth Swaminathan 1825*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S: Port assembly routines to MSVC and #ifdef. 1826*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Tweak function declaration and remove excess 1827*1fd5a2e1SPrashanth Swaminathan parens. 1828*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add __declspec(align(8)) to typedef struct 1829*1fd5a2e1SPrashanth Swaminathan ffi_closure. 1830*1fd5a2e1SPrashanth Swaminathan 1831*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Merge ffi_call_SYSV and ffi_call_STDCALL into new 1832*1fd5a2e1SPrashanth Swaminathan function ffi_call_win32 on X86_WIN32. 1833*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_call_SYSV): Rename to ffi_call_win32. 1834*1fd5a2e1SPrashanth Swaminathan (ffi_call_STDCALL): Remove. 1835*1fd5a2e1SPrashanth Swaminathan 1836*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif): Move stack space allocation code 1837*1fd5a2e1SPrashanth Swaminathan to ffi_prep_cif_machdep for x86. 1838*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): To here. 1839*1fd5a2e1SPrashanth Swaminathan 1840*1fd5a2e1SPrashanth Swaminathan2010-01-15 Oliver Kiddle <[email protected]> 1841*1fd5a2e1SPrashanth Swaminathan 1842*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for 1843*1fd5a2e1SPrashanth Swaminathan Sun Studio compiler compatibility. 1844*1fd5a2e1SPrashanth Swaminathan 1845*1fd5a2e1SPrashanth Swaminathan2010-01-12 Conrad Irwin <[email protected]> 1846*1fd5a2e1SPrashanth Swaminathan 1847*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi: Add closure example. 1848*1fd5a2e1SPrashanth Swaminathan 1849*1fd5a2e1SPrashanth Swaminathan2010-01-07 Rainer Orth <[email protected]> 1850*1fd5a2e1SPrashanth Swaminathan 1851*1fd5a2e1SPrashanth Swaminathan PR libffi/40701 1852*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h [__alpha__ && __osf__] (PRIdLL, 1853*1fd5a2e1SPrashanth Swaminathan PRIuLL, PRId64, PRIu64, PRIuPTR): Define. 1854*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint64.c: Add -Wno-format on 1855*1fd5a2e1SPrashanth Swaminathan alpha*-dec-osf*. 1856*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint64.c: Likewise. 1857*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulonglong.c: Likewise. 1858*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_ll1.c: Likewise. 1859*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_medium2.c: Likewise. 1860*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/ffitestcxx.h (allocate_mmap): Cast 1861*1fd5a2e1SPrashanth Swaminathan MAP_FAILED to char *. 1862*1fd5a2e1SPrashanth Swaminathan 1863*1fd5a2e1SPrashanth Swaminathan2010-01-06 Rainer Orth <[email protected]> 1864*1fd5a2e1SPrashanth Swaminathan 1865*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S: Use .abicalls and .eh_frame with __GNUC__. 1866*1fd5a2e1SPrashanth Swaminathan 1867*1fd5a2e1SPrashanth Swaminathan2009-12-31 Anthony Green <[email protected]> 1868*1fd5a2e1SPrashanth Swaminathan 1869*1fd5a2e1SPrashanth Swaminathan * README: Update for libffi 3.0.9. 1870*1fd5a2e1SPrashanth Swaminathan 1871*1fd5a2e1SPrashanth Swaminathan2009-12-27 Matthias Klose <[email protected]> 1872*1fd5a2e1SPrashanth Swaminathan 1873*1fd5a2e1SPrashanth Swaminathan * configure.ac (HAVE_LONG_DOUBLE): Define for mips when 1874*1fd5a2e1SPrashanth Swaminathan appropriate. 1875*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1876*1fd5a2e1SPrashanth Swaminathan 1877*1fd5a2e1SPrashanth Swaminathan2009-12-26 Anthony Green <[email protected]> 1878*1fd5a2e1SPrashanth Swaminathan 1879*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble_va.c: Mark as xfail for 1880*1fd5a2e1SPrashanth Swaminathan avr32*-*-*. 1881*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double_va.c: Ditto. 1882*1fd5a2e1SPrashanth Swaminathan 1883*1fd5a2e1SPrashanth Swaminathan2009-12-26 Andreas Tobler <[email protected]> 1884*1fd5a2e1SPrashanth Swaminathan 1885*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Conditionally include stdint.h 1886*1fd5a2e1SPrashanth Swaminathan and inttypes.h. 1887*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc: Ditto. 1888*1fd5a2e1SPrashanth Swaminathan 1889*1fd5a2e1SPrashanth Swaminathan2009-12-26 Andreas Tobler <[email protected]> 1890*1fd5a2e1SPrashanth Swaminathan 1891*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add amd64-*-openbsd*. 1892*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1893*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi_target_compile): Link 1894*1fd5a2e1SPrashanth Swaminathan openbsd programs with -lpthread. 1895*1fd5a2e1SPrashanth Swaminathan 1896*1fd5a2e1SPrashanth Swaminathan2009-12-26 Anthony Green <[email protected]> 1897*1fd5a2e1SPrashanth Swaminathan 1898*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double_va.c, 1899*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble.c, 1900*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble_va.c, 1901*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer.c, 1902*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer_stack.c: Remove xfail for 1903*1fd5a2e1SPrashanth Swaminathan mips*-*-* and arm*-*-*. 1904*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble_split.c, 1905*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble_split2.c, 1906*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_medium2.c, 1907*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_medium.c, 1908*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_large.c, 1909*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_large2.c: Remove xfail for arm*-*-*. 1910*1fd5a2e1SPrashanth Swaminathan 1911*1fd5a2e1SPrashanth Swaminathan2009-12-31 Kay Tietz <[email protected]> 1912*1fd5a2e1SPrashanth Swaminathan 1913*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h, 1914*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRuLL): Fix 1915*1fd5a2e1SPrashanth Swaminathan definitions. 1916*1fd5a2e1SPrashanth Swaminathan 1917*1fd5a2e1SPrashanth Swaminathan2009-12-31 Carlo Bramini <[email protected]> 1918*1fd5a2e1SPrashanth Swaminathan 1919*1fd5a2e1SPrashanth Swaminathan * configure.ac (AM_LTLDFLAGS): Define for windows hosts. 1920*1fd5a2e1SPrashanth Swaminathan * Makefile.am (libffi_la_LDFLAGS): Add AM_LTLDFLAGS. 1921*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 1922*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 1923*1fd5a2e1SPrashanth Swaminathan 1924*1fd5a2e1SPrashanth Swaminathan2009-12-31 Anthony Green <[email protected]> 1925*1fd5a2e1SPrashanth Swaminathan Blake Chaffin. 1926*1fd5a2e1SPrashanth Swaminathan 1927*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/huge_struct.c: New test case from Blake 1928*1fd5a2e1SPrashanth Swaminathan Chaffin @ Apple. 1929*1fd5a2e1SPrashanth Swaminathan 1930*1fd5a2e1SPrashanth Swaminathan2009-12-28 David Edelsohn <[email protected]> 1931*1fd5a2e1SPrashanth Swaminathan 1932*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Copy abi and nargs to 1933*1fd5a2e1SPrashanth Swaminathan local variables. 1934*1fd5a2e1SPrashanth Swaminathan (aix_adjust_aggregate_sizes): New function. 1935*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Call it. 1936*1fd5a2e1SPrashanth Swaminathan 1937*1fd5a2e1SPrashanth Swaminathan2009-12-26 Andreas Tobler <[email protected]> 1938*1fd5a2e1SPrashanth Swaminathan 1939*1fd5a2e1SPrashanth Swaminathan * configure.ac: Define FFI_MMAP_EXEC_WRIT for the given targets. 1940*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1941*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Likewise. 1942*1fd5a2e1SPrashanth Swaminathan * src/closures.c: Remove the FFI_MMAP_EXEC_WRIT definition for 1943*1fd5a2e1SPrashanth Swaminathan Solaris/x86. 1944*1fd5a2e1SPrashanth Swaminathan 1945*1fd5a2e1SPrashanth Swaminathan2009-12-26 Andreas Schwab <[email protected]> 1946*1fd5a2e1SPrashanth Swaminathan 1947*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args_SYSV): Advance intarg_count 1948*1fd5a2e1SPrashanth Swaminathan when a float arguments is passed in memory. 1949*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Mark general registers as used up when 1950*1fd5a2e1SPrashanth Swaminathan a 64bit or soft-float long double argument is passed in memory. 1951*1fd5a2e1SPrashanth Swaminathan 1952*1fd5a2e1SPrashanth Swaminathan2009-12-25 Matthias Klose <[email protected]> 1953*1fd5a2e1SPrashanth Swaminathan 1954*1fd5a2e1SPrashanth Swaminathan * man/ffi_call.3: Fix #include in examples. 1955*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi: Add dircategory. 1956*1fd5a2e1SPrashanth Swaminathan 1957*1fd5a2e1SPrashanth Swaminathan2009-12-25 Frank Everdij <[email protected]> 1958*1fd5a2e1SPrashanth Swaminathan 1959*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Placed '__GNUC__' ifdef around 1960*1fd5a2e1SPrashanth Swaminathan '__attribute__((aligned(8)))' in ffi_closure, fixes compile for 1961*1fd5a2e1SPrashanth Swaminathan IRIX MIPSPro c99. 1962*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h: Added '__sgi' define to non 1963*1fd5a2e1SPrashanth Swaminathan '__attribute__((__mode__()))' integer typedefs. 1964*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_call, ffi_closure_mips_inner_O32, 1965*1fd5a2e1SPrashanth Swaminathan ffi_closure_mips_inner_N32): Added 'defined(_MIPSEB)' to BE check. 1966*1fd5a2e1SPrashanth Swaminathan (ffi_closure_mips_inner_O32, ffi_closure_mips_inner_N32): Added 1967*1fd5a2e1SPrashanth Swaminathan FFI_LONGDOUBLE support and alignment(N32 only). 1968*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h: Corrected '#include <sgidefs.h>' for IRIX and 1969*1fd5a2e1SPrashanth Swaminathan fixed non '__attribute__((__mode__()))' integer typedefs. 1970*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S: Put '#ifdef linux' around '.abicalls' and '.eh_frame' 1971*1fd5a2e1SPrashanth Swaminathan since they are Linux/GNU Assembler specific. 1972*1fd5a2e1SPrashanth Swaminathan 1973*1fd5a2e1SPrashanth Swaminathan2009-12-25 Bradley Smith <[email protected]> 1974*1fd5a2e1SPrashanth Swaminathan 1975*1fd5a2e1SPrashanth Swaminathan * configure.ac, Makefile.am, src/avr32/ffi.c, 1976*1fd5a2e1SPrashanth Swaminathan src/avr32/ffitarget.h, 1977*1fd5a2e1SPrashanth Swaminathan src/avr32/sysv.S: Add AVR32 port. 1978*1fd5a2e1SPrashanth Swaminathan * configure, Makefile.in: Rebuilt. 1979*1fd5a2e1SPrashanth Swaminathan 1980*1fd5a2e1SPrashanth Swaminathan2009-12-21 Andreas Tobler <[email protected]> 1981*1fd5a2e1SPrashanth Swaminathan 1982*1fd5a2e1SPrashanth Swaminathan * configure.ac: Make i?86 build on FreeBSD and OpenBSD. 1983*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 1984*1fd5a2e1SPrashanth Swaminathan 1985*1fd5a2e1SPrashanth Swaminathan2009-12-15 John David Anglin <[email protected]> 1986*1fd5a2e1SPrashanth Swaminathan 1987*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Define PRIuPTR on PA HP-UX. 1988*1fd5a2e1SPrashanth Swaminathan 1989*1fd5a2e1SPrashanth Swaminathan2009-12-13 John David Anglin <[email protected]> 1990*1fd5a2e1SPrashanth Swaminathan 1991*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.c (ffi_closure_inner_pa32): Handle FFI_TYPE_LONGDOUBLE 1992*1fd5a2e1SPrashanth Swaminathan type on HP-UX. 1993*1fd5a2e1SPrashanth Swaminathan 1994*1fd5a2e1SPrashanth Swaminathan2012-02-13 Kai Tietz <[email protected]> 1995*1fd5a2e1SPrashanth Swaminathan 1996*1fd5a2e1SPrashanth Swaminathan PR libffi/52221 1997*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_raw_closure_loc): Add thiscall 1998*1fd5a2e1SPrashanth Swaminathan support for X86_WIN32. 1999*1fd5a2e1SPrashanth Swaminathan (FFI_INIT_TRAMPOLINE_THISCALL): Fix displacement. 2000*1fd5a2e1SPrashanth Swaminathan 2001*1fd5a2e1SPrashanth Swaminathan2009-12-11 Eric Botcazou <[email protected]> 2002*1fd5a2e1SPrashanth Swaminathan 2003*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_closure_sparc_inner_v9): Properly align 'long 2004*1fd5a2e1SPrashanth Swaminathan double' arguments. 2005*1fd5a2e1SPrashanth Swaminathan 2006*1fd5a2e1SPrashanth Swaminathan2009-12-11 Eric Botcazou <[email protected]> 2007*1fd5a2e1SPrashanth Swaminathan 2008*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Define PRIuPTR on Solaris < 10. 2009*1fd5a2e1SPrashanth Swaminathan 2010*1fd5a2e1SPrashanth Swaminathan2009-12-10 Rainer Orth <[email protected]> 2011*1fd5a2e1SPrashanth Swaminathan 2012*1fd5a2e1SPrashanth Swaminathan PR libffi/40700 2013*1fd5a2e1SPrashanth Swaminathan * src/closures.c [X86_64 && __sun__ && __svr4__] 2014*1fd5a2e1SPrashanth Swaminathan (FFI_MMAP_EXEC_WRIT): Define. 2015*1fd5a2e1SPrashanth Swaminathan 2016*1fd5a2e1SPrashanth Swaminathan2009-12-08 David Daney <[email protected]> 2017*1fd5a2e1SPrashanth Swaminathan 2018*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_medium.c: Remove xfail for mips*-*-* 2019*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble_split2.c: Same. 2020*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_large.c: Same. 2021*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble_split.c: Same. 2022*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_large2.c: Same. 2023*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_medium2.c: Same. 2024*1fd5a2e1SPrashanth Swaminathan 2025*1fd5a2e1SPrashanth Swaminathan2009-12-07 David Edelsohn <[email protected]> 2026*1fd5a2e1SPrashanth Swaminathan 2027*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S (libffi_closure_ASM): Fix tablejump 2028*1fd5a2e1SPrashanth Swaminathan typo. 2029*1fd5a2e1SPrashanth Swaminathan 2030*1fd5a2e1SPrashanth Swaminathan2009-12-05 David Edelsohn <[email protected]> 2031*1fd5a2e1SPrashanth Swaminathan 2032*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S: Update AIX32 code to be consistent with AIX64 2033*1fd5a2e1SPrashanth Swaminathan code. 2034*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: Same. 2035*1fd5a2e1SPrashanth Swaminathan 2036*1fd5a2e1SPrashanth Swaminathan2009-12-05 Ralf Wildenhues <[email protected]> 2037*1fd5a2e1SPrashanth Swaminathan 2038*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 2039*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2040*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 2041*1fd5a2e1SPrashanth Swaminathan * man/Makefile.in: Regenerate. 2042*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerate. 2043*1fd5a2e1SPrashanth Swaminathan 2044*1fd5a2e1SPrashanth Swaminathan2009-12-04 David Edelsohn <[email protected]> 2045*1fd5a2e1SPrashanth Swaminathan 2046*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: Reorganize 64-bit code to match 2047*1fd5a2e1SPrashanth Swaminathan linux64_closure.S. 2048*1fd5a2e1SPrashanth Swaminathan 2049*1fd5a2e1SPrashanth Swaminathan2009-12-04 Uros Bizjak <[email protected]> 2050*1fd5a2e1SPrashanth Swaminathan 2051*1fd5a2e1SPrashanth Swaminathan PR libffi/41908 2052*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (classify_argument): Update from 2053*1fd5a2e1SPrashanth Swaminathan gcc/config/i386/i386.c. 2054*1fd5a2e1SPrashanth Swaminathan (ffi_closure_unix64_inner): Do not use the address of two consecutive 2055*1fd5a2e1SPrashanth Swaminathan SSE registers directly. 2056*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_dbls_struct.c (main): Remove xfail 2057*1fd5a2e1SPrashanth Swaminathan for x86_64 linux targets. 2058*1fd5a2e1SPrashanth Swaminathan 2059*1fd5a2e1SPrashanth Swaminathan2009-12-04 David Edelsohn <[email protected]> 2060*1fd5a2e1SPrashanth Swaminathan 2061*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_closure_helper_DARWIN): Increment 2062*1fd5a2e1SPrashanth Swaminathan pfr for long double split between fpr13 and stack. 2063*1fd5a2e1SPrashanth Swaminathan 2064*1fd5a2e1SPrashanth Swaminathan2009-12-03 David Edelsohn <[email protected]> 2065*1fd5a2e1SPrashanth Swaminathan 2066*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Increment next_arg and 2067*1fd5a2e1SPrashanth Swaminathan fparg_count twice for long double. 2068*1fd5a2e1SPrashanth Swaminathan 2069*1fd5a2e1SPrashanth Swaminathan2009-12-03 David Edelsohn <[email protected]> 2070*1fd5a2e1SPrashanth Swaminathan 2071*1fd5a2e1SPrashanth Swaminathan PR libffi/42243 2072*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Remove extra parentheses. 2073*1fd5a2e1SPrashanth Swaminathan 2074*1fd5a2e1SPrashanth Swaminathan2009-12-03 Uros Bizjak <[email protected]> 2075*1fd5a2e1SPrashanth Swaminathan 2076*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string. 2077*1fd5a2e1SPrashanth Swaminathan Remove xfails for x86 linux targets. 2078*1fd5a2e1SPrashanth Swaminathan 2079*1fd5a2e1SPrashanth Swaminathan2009-12-02 David Edelsohn <[email protected]> 2080*1fd5a2e1SPrashanth Swaminathan 2081*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Fix typo in INT64 2082*1fd5a2e1SPrashanth Swaminathan case. 2083*1fd5a2e1SPrashanth Swaminathan 2084*1fd5a2e1SPrashanth Swaminathan2009-12-01 David Edelsohn <[email protected]> 2085*1fd5a2e1SPrashanth Swaminathan 2086*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S (ffi_call_AIX): Convert to more standard 2087*1fd5a2e1SPrashanth Swaminathan register usage. Call ffi_prep_args directly. Add long double 2088*1fd5a2e1SPrashanth Swaminathan return value support. 2089*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Double arg increment 2090*1fd5a2e1SPrashanth Swaminathan applies to FFI_TYPE_DOUBLE. Correct fpr_base increment typo. 2091*1fd5a2e1SPrashanth Swaminathan Separate FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases. 2092*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Only 16 byte stack alignment in 64 bit 2093*1fd5a2e1SPrashanth Swaminathan mode. 2094*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_DARWIN): Remove nf and ng counters. Move temp 2095*1fd5a2e1SPrashanth Swaminathan into case. 2096*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: Maintain 16 byte stack alignment. 2097*1fd5a2e1SPrashanth Swaminathan Allocate result area between params and FPRs. 2098*1fd5a2e1SPrashanth Swaminathan 2099*1fd5a2e1SPrashanth Swaminathan2009-11-30 David Edelsohn <[email protected]> 2100*1fd5a2e1SPrashanth Swaminathan 2101*1fd5a2e1SPrashanth Swaminathan PR target/35484 2102*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h (POWERPC64): Define for PPC64 Linux and 2103*1fd5a2e1SPrashanth Swaminathan AIX64. 2104*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S: Implement AIX64 version. 2105*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: Implement AIX64 version. 2106*1fd5a2e1SPrashanth Swaminathan (ffi_closure_ASM): Use extsb, lha and displament addresses. 2107*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Implement AIX64 2108*1fd5a2e1SPrashanth Swaminathan support. 2109*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Same. 2110*1fd5a2e1SPrashanth Swaminathan (ffi_call): Same. 2111*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_DARWIN): Same. 2112*1fd5a2e1SPrashanth Swaminathan 2113*1fd5a2e1SPrashanth Swaminathan2009-11-02 Andreas Tobler <[email protected]> 2114*1fd5a2e1SPrashanth Swaminathan 2115*1fd5a2e1SPrashanth Swaminathan PR libffi/41908 2116*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/testclosure.c: New test. 2117*1fd5a2e1SPrashanth Swaminathan 2118*1fd5a2e1SPrashanth Swaminathan2009-09-28 Kai Tietz <[email protected]> 2119*1fd5a2e1SPrashanth Swaminathan 2120*1fd5a2e1SPrashanth Swaminathan * src/x86/win64.S (_ffi_call_win64 stack): Remove for gnu 2121*1fd5a2e1SPrashanth Swaminathan assembly version use of ___chkstk. 2122*1fd5a2e1SPrashanth Swaminathan 2123*1fd5a2e1SPrashanth Swaminathan2009-09-23 Matthias Klose <[email protected]> 2124*1fd5a2e1SPrashanth Swaminathan 2125*1fd5a2e1SPrashanth Swaminathan PR libffi/40242, PR libffi/41443 2126*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S (__ARM_ARCH__): Define for processors 2127*1fd5a2e1SPrashanth Swaminathan __ARM_ARCH_6T2__, __ARM_ARCH_6M__, __ARM_ARCH_7__, 2128*1fd5a2e1SPrashanth Swaminathan __ARM_ARCH_7A__, __ARM_ARCH_7R__, __ARM_ARCH_7M__. 2129*1fd5a2e1SPrashanth Swaminathan Change the conditionals to __SOFTFP__ || __ARM_EABI__ 2130*1fd5a2e1SPrashanth Swaminathan for -mfloat-abi=softfp to work. 2131*1fd5a2e1SPrashanth Swaminathan 2132*1fd5a2e1SPrashanth Swaminathan2009-09-17 Loren J. Rittle <[email protected]> 2133*1fd5a2e1SPrashanth Swaminathan 2134*1fd5a2e1SPrashanth Swaminathan PR testsuite/32843 (strikes again) 2135*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): Add X86_FREEBSD to 2136*1fd5a2e1SPrashanth Swaminathan enable proper extension on char and short. 2137*1fd5a2e1SPrashanth Swaminathan 2138*1fd5a2e1SPrashanth Swaminathan2009-09-15 David Daney <[email protected]> 2139*1fd5a2e1SPrashanth Swaminathan 2140*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c (ffi_java_raw_to_rvalue): Remove special 2141*1fd5a2e1SPrashanth Swaminathan handling for FFI_TYPE_POINTER. 2142*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h (FFI_TYPE_STRUCT_D_SOFT, 2143*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_STRUCT_F_SOFT, FFI_TYPE_STRUCT_DD_SOFT, 2144*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_STRUCT_FF_SOFT, FFI_TYPE_STRUCT_FD_SOFT, 2145*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_STRUCT_DF_SOFT, FFI_TYPE_STRUCT_SOFT): New defines. 2146*1fd5a2e1SPrashanth Swaminathan (FFI_N32_SOFT_FLOAT, FFI_N64_SOFT_FLOAT): New ffi_abi enumerations. 2147*1fd5a2e1SPrashanth Swaminathan (enum ffi_abi): Set FFI_DEFAULT_ABI for soft-float. 2148*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S (ffi_call_N32): Add handling for soft-float 2149*1fd5a2e1SPrashanth Swaminathan structure and pointer returns. 2150*1fd5a2e1SPrashanth Swaminathan (ffi_closure_N32): Add handling for pointer returns. 2151*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_prep_args, calc_n32_struct_flags, 2152*1fd5a2e1SPrashanth Swaminathan calc_n32_return_struct_flags): Handle soft-float. 2153*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Handle soft-float, fix pointer handling. 2154*1fd5a2e1SPrashanth Swaminathan (ffi_call_N32): Declare proper argument types. 2155*1fd5a2e1SPrashanth Swaminathan (ffi_call, copy_struct_N32, ffi_closure_mips_inner_N32): Handle 2156*1fd5a2e1SPrashanth Swaminathan soft-float. 2157*1fd5a2e1SPrashanth Swaminathan 2158*1fd5a2e1SPrashanth Swaminathan2009-08-24 Ralf Wildenhues <[email protected]> 2159*1fd5a2e1SPrashanth Swaminathan 2160*1fd5a2e1SPrashanth Swaminathan * configure.ac (AC_PREREQ): Bump to 2.64. 2161*1fd5a2e1SPrashanth Swaminathan 2162*1fd5a2e1SPrashanth Swaminathan2009-08-22 Ralf Wildenhues <[email protected]> 2163*1fd5a2e1SPrashanth Swaminathan 2164*1fd5a2e1SPrashanth Swaminathan * Makefile.am (install-html, install-pdf): Remove. 2165*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 2166*1fd5a2e1SPrashanth Swaminathan 2167*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 2168*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate. 2169*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2170*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Regenerate. 2171*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 2172*1fd5a2e1SPrashanth Swaminathan * man/Makefile.in: Regenerate. 2173*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerate. 2174*1fd5a2e1SPrashanth Swaminathan 2175*1fd5a2e1SPrashanth Swaminathan2011-08-22 Jasper Lievisse Adriaanse <[email protected]> 2176*1fd5a2e1SPrashanth Swaminathan 2177*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add OpenBSD/hppa and OpenBSD/powerpc support. 2178*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 2179*1fd5a2e1SPrashanth Swaminathan 2180*1fd5a2e1SPrashanth Swaminathan2009-07-30 Ralf Wildenhues <[email protected]> 2181*1fd5a2e1SPrashanth Swaminathan 2182*1fd5a2e1SPrashanth Swaminathan * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force. 2183*1fd5a2e1SPrashanth Swaminathan 2184*1fd5a2e1SPrashanth Swaminathan2009-07-24 Dave Korn <[email protected]> 2185*1fd5a2e1SPrashanth Swaminathan 2186*1fd5a2e1SPrashanth Swaminathan PR libffi/40807 2187*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): Also use sign/zero-extending 2188*1fd5a2e1SPrashanth Swaminathan return types for X86_WIN32. 2189*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (_ffi_call_SYSV): Handle omitted return types. 2190*1fd5a2e1SPrashanth Swaminathan (_ffi_call_STDCALL, _ffi_closure_SYSV, _ffi_closure_raw_SYSV, 2191*1fd5a2e1SPrashanth Swaminathan _ffi_closure_STDCALL): Likewise. 2192*1fd5a2e1SPrashanth Swaminathan 2193*1fd5a2e1SPrashanth Swaminathan * src/closures.c (is_selinux_enabled): Define to const 0 for Cygwin. 2194*1fd5a2e1SPrashanth Swaminathan (dlmmap, dlmunmap): Also use these functions on Cygwin. 2195*1fd5a2e1SPrashanth Swaminathan 2196*1fd5a2e1SPrashanth Swaminathan2009-07-11 Richard Sandiford <[email protected]> 2197*1fd5a2e1SPrashanth Swaminathan 2198*1fd5a2e1SPrashanth Swaminathan PR testsuite/40699 2199*1fd5a2e1SPrashanth Swaminathan PR testsuite/40707 2200*1fd5a2e1SPrashanth Swaminathan PR testsuite/40709 2201*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Revert 2009-07-02, 2009-07-01 and 2202*1fd5a2e1SPrashanth Swaminathan 2009-06-30 commits. 2203*1fd5a2e1SPrashanth Swaminathan 2204*1fd5a2e1SPrashanth Swaminathan2009-07-01 Richard Sandiford <[email protected]> 2205*1fd5a2e1SPrashanth Swaminathan 2206*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi-init): Set ld_library_path 2207*1fd5a2e1SPrashanth Swaminathan to "" before adding paths. (This reinstates an assignment that 2208*1fd5a2e1SPrashanth Swaminathan was removed by my 2009-06-30 commit, but changes the initial 2209*1fd5a2e1SPrashanth Swaminathan value from "." to "".) 2210*1fd5a2e1SPrashanth Swaminathan 2211*1fd5a2e1SPrashanth Swaminathan2009-07-01 H.J. Lu <[email protected]> 2212*1fd5a2e1SPrashanth Swaminathan 2213*1fd5a2e1SPrashanth Swaminathan PR testsuite/40601 2214*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi-init): Properly set 2215*1fd5a2e1SPrashanth Swaminathan gccdir. Adjust ld_library_path for gcc only if gccdir isn't 2216*1fd5a2e1SPrashanth Swaminathan empty. 2217*1fd5a2e1SPrashanth Swaminathan 2218*1fd5a2e1SPrashanth Swaminathan2009-06-30 Richard Sandiford <[email protected]> 2219*1fd5a2e1SPrashanth Swaminathan 2220*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi-init): Don't add "." 2221*1fd5a2e1SPrashanth Swaminathan to ld_library_path. Use add_path. Add just find_libgcc_s 2222*1fd5a2e1SPrashanth Swaminathan to ld_library_path, not every libgcc multilib directory. 2223*1fd5a2e1SPrashanth Swaminathan 2224*1fd5a2e1SPrashanth Swaminathan2009-06-16 Wim Lewis <[email protected]> 2225*1fd5a2e1SPrashanth Swaminathan 2226*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Avoid clobbering cr3 and cr4, which are 2227*1fd5a2e1SPrashanth Swaminathan supposed to be callee-saved. 2228*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S (small_struct_return_value): Fix overrun of 2229*1fd5a2e1SPrashanth Swaminathan return buffer for odd-size structs. 2230*1fd5a2e1SPrashanth Swaminathan 2231*1fd5a2e1SPrashanth Swaminathan2009-06-16 Andreas Tobler <[email protected]> 2232*1fd5a2e1SPrashanth Swaminathan 2233*1fd5a2e1SPrashanth Swaminathan PR libffi/40444 2234*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi_target_compile): Add 2235*1fd5a2e1SPrashanth Swaminathan allow_stack_execute for Darwin. 2236*1fd5a2e1SPrashanth Swaminathan 2237*1fd5a2e1SPrashanth Swaminathan2009-06-16 Andrew Haley <[email protected]> 2238*1fd5a2e1SPrashanth Swaminathan 2239*1fd5a2e1SPrashanth Swaminathan * configure.ac (TARGETDIR): Add missing blank lines. 2240*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2241*1fd5a2e1SPrashanth Swaminathan 2242*1fd5a2e1SPrashanth Swaminathan2009-06-16 Andrew Haley <[email protected]> 2243*1fd5a2e1SPrashanth Swaminathan 2244*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint64.c, 2245*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint64.c, 2246*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble_va.c, 2247*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ulonglong.c, 2248*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/return_ll1.c, 2249*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_medium2.c: Fix printf format 2250*1fd5a2e1SPrashanth Swaminathan specifiers. 2251*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h, 2252*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRIuLL): Define. 2253*1fd5a2e1SPrashanth Swaminathan 2254*1fd5a2e1SPrashanth Swaminathan2009-06-15 Andrew Haley <[email protected]> 2255*1fd5a2e1SPrashanth Swaminathan 2256*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_typedef.c: xfail everywhere. 2257*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_abi.c: Likewise. 2258*1fd5a2e1SPrashanth Swaminathan 2259*1fd5a2e1SPrashanth Swaminathan2009-06-12 Andrew Haley <[email protected]> 2260*1fd5a2e1SPrashanth Swaminathan 2261*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Remove info_TEXINFOS. 2262*1fd5a2e1SPrashanth Swaminathan 2263*1fd5a2e1SPrashanth Swaminathan2009-06-12 Andrew Haley <[email protected]> 2264*1fd5a2e1SPrashanth Swaminathan 2265*1fd5a2e1SPrashanth Swaminathan * ChangeLog.libffi: testsuite/libffi.call/cls_align_sint64.c, 2266*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint64.c, 2267*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ulonglong.c, 2268*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/return_ll1.c, 2269*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_medium2.c: Fix printf format 2270*1fd5a2e1SPrashanth Swaminathan specifiers. 2271*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.special/unwindtest.cc: include stdint.h. 2272*1fd5a2e1SPrashanth Swaminathan 2273*1fd5a2e1SPrashanth Swaminathan2009-06-11 Timothy Wall <[email protected]> 2274*1fd5a2e1SPrashanth Swaminathan 2275*1fd5a2e1SPrashanth Swaminathan * Makefile.am, 2276*1fd5a2e1SPrashanth Swaminathan configure.ac, 2277*1fd5a2e1SPrashanth Swaminathan include/ffi.h.in, 2278*1fd5a2e1SPrashanth Swaminathan include/ffi_common.h, 2279*1fd5a2e1SPrashanth Swaminathan src/closures.c, 2280*1fd5a2e1SPrashanth Swaminathan src/dlmalloc.c, 2281*1fd5a2e1SPrashanth Swaminathan src/x86/ffi.c, 2282*1fd5a2e1SPrashanth Swaminathan src/x86/ffitarget.h, 2283*1fd5a2e1SPrashanth Swaminathan src/x86/win64.S (new), 2284*1fd5a2e1SPrashanth Swaminathan README: Added win64 support (mingw or MSVC) 2285*1fd5a2e1SPrashanth Swaminathan * Makefile.in, 2286*1fd5a2e1SPrashanth Swaminathan include/Makefile.in, 2287*1fd5a2e1SPrashanth Swaminathan man/Makefile.in, 2288*1fd5a2e1SPrashanth Swaminathan testsuite/Makefile.in, 2289*1fd5a2e1SPrashanth Swaminathan configure, 2290*1fd5a2e1SPrashanth Swaminathan aclocal.m4: Regenerated 2291*1fd5a2e1SPrashanth Swaminathan * ltcf-c.sh: properly escape cygwin/w32 path 2292*1fd5a2e1SPrashanth Swaminathan * man/ffi_call.3: Clarify size requirements for return value. 2293*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c: Fix filename in comment. 2294*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S: Remove unused extern. 2295*1fd5a2e1SPrashanth Swaminathan 2296*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c, 2297*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn1.c, 2298*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn2.c, 2299*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn3.c, 2300*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn4.c, 2301*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn5.c, 2302*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn6.c, 2303*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_stdcall.c, 2304*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_12byte.c, 2305*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_16byte.c, 2306*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_18byte.c, 2307*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_19byte.c, 2308*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_1_1byte.c, 2309*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_20byte.c, 2310*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_20byte1.c, 2311*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_24byte.c, 2312*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_2byte.c, 2313*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3_1byte.c, 2314*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3byte1.c, 2315*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3byte2.c, 2316*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_4_1byte.c, 2317*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_4byte.c, 2318*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_5_1_byte.c, 2319*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_5byte.c, 2320*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_64byte.c, 2321*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_6_1_byte.c, 2322*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_6byte.c, 2323*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_7_1_byte.c, 2324*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_7byte.c, 2325*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_8byte.c, 2326*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_9byte1.c, 2327*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_9byte2.c, 2328*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_double.c, 2329*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_float.c, 2330*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble.c, 2331*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble_split.c, 2332*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble_split2.c, 2333*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_pointer.c, 2334*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint16.c, 2335*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint32.c, 2336*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint64.c, 2337*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint16.c, 2338*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint32.c, 2339*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint64.c, 2340*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_dbls_struct.c, 2341*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_double.c, 2342*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_double_va.c, 2343*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_float.c, 2344*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble.c, 2345*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble_va.c, 2346*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_schar.c, 2347*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_sshort.c, 2348*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_sshortchar.c, 2349*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_uchar.c, 2350*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_ushort.c, 2351*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_ushortchar.c, 2352*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer.c, 2353*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer_stack.c, 2354*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_schar.c, 2355*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_sint.c, 2356*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_sshort.c, 2357*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_uchar.c, 2358*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_uint.c, 2359*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ulonglong.c, 2360*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ushort.c, 2361*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/err_bad_abi.c, 2362*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/err_bad_typedef.c, 2363*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/float2.c, 2364*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/huge_struct.c, 2365*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct.c, 2366*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct1.c, 2367*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct10.c, 2368*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct2.c, 2369*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct3.c, 2370*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct4.c, 2371*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct5.c, 2372*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct6.c, 2373*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct7.c, 2374*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct8.c, 2375*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct9.c, 2376*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/problem1.c, 2377*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/return_ldl.c, 2378*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/return_ll1.c, 2379*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_large.c, 2380*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_large2.c, 2381*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_medium.c, 2382*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_medium2.c, 2383*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.special/unwindtest.cc: use ffi_closure_alloc instead 2384*1fd5a2e1SPrashanth Swaminathan of checking for MMAP. Use intptr_t instead of long casts. 2385*1fd5a2e1SPrashanth Swaminathan 2386*1fd5a2e1SPrashanth Swaminathan2009-06-11 Kaz Kojima <[email protected]> 2387*1fd5a2e1SPrashanth Swaminathan 2388*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble_va.c: Add xfail sh*-*-linux-*. 2389*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_abi.c: Add xfail sh*-*-*. 2390*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_typedef.c: Likewise. 2391*1fd5a2e1SPrashanth Swaminathan 2392*1fd5a2e1SPrashanth Swaminathan2009-06-09 Andrew Haley <[email protected]> 2393*1fd5a2e1SPrashanth Swaminathan 2394*1fd5a2e1SPrashanth Swaminathan * src/x86/freebsd.S: Add missing file. 2395*1fd5a2e1SPrashanth Swaminathan 2396*1fd5a2e1SPrashanth Swaminathan2009-06-08 Andrew Haley <[email protected]> 2397*1fd5a2e1SPrashanth Swaminathan 2398*1fd5a2e1SPrashanth Swaminathan Import from libffi 3.0.8: 2399*1fd5a2e1SPrashanth Swaminathan 2400*1fd5a2e1SPrashanth Swaminathan * doc/libffi.texi: New file. 2401*1fd5a2e1SPrashanth Swaminathan * doc/libffi.info: Likewise. 2402*1fd5a2e1SPrashanth Swaminathan * doc/stamp-vti: Likewise. 2403*1fd5a2e1SPrashanth Swaminathan * man/Makefile.am: New file. 2404*1fd5a2e1SPrashanth Swaminathan * man/ffi_call.3: New file. 2405*1fd5a2e1SPrashanth Swaminathan 2406*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add src/x86/darwin64.S, 2407*1fd5a2e1SPrashanth Swaminathan src/dlmalloc.c. 2408*1fd5a2e1SPrashanth Swaminathan (nodist_libffi_la_SOURCES): Add X86_FREEBSD. 2409*1fd5a2e1SPrashanth Swaminathan 2410*1fd5a2e1SPrashanth Swaminathan * configure.ac: Bump version to 3.0.8. 2411*1fd5a2e1SPrashanth Swaminathan parisc*-*-linux*: Add. 2412*1fd5a2e1SPrashanth Swaminathan i386-*-freebsd* | i386-*-openbsd*: Add. 2413*1fd5a2e1SPrashanth Swaminathan powerpc-*-beos*: Add. 2414*1fd5a2e1SPrashanth Swaminathan AM_CONDITIONAL X86_FREEBSD: Add. 2415*1fd5a2e1SPrashanth Swaminathan AC_CONFIG_FILES: Add man/Makefile. 2416*1fd5a2e1SPrashanth Swaminathan 2417*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (FFI_FN): Change void (*)() to void (*)(void). 2418*1fd5a2e1SPrashanth Swaminathan 2419*1fd5a2e1SPrashanth Swaminathan2009-06-08 Andrew Haley <[email protected]> 2420*1fd5a2e1SPrashanth Swaminathan 2421*1fd5a2e1SPrashanth Swaminathan * README: Import from libffi 3.0.8. 2422*1fd5a2e1SPrashanth Swaminathan 2423*1fd5a2e1SPrashanth Swaminathan2009-06-08 Andrew Haley <[email protected]> 2424*1fd5a2e1SPrashanth Swaminathan 2425*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_abi.c: Add xfails. 2426*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble_va.c: Add xfails. 2427*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_dbls_struct.c: Add xfail x86_64-*-linux-*. 2428*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/err_bad_typedef.c: Add xfails. 2429*1fd5a2e1SPrashanth Swaminathan 2430*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_medium2.c: Add __UNUSED__ to args. 2431*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_medium.c: Likewise. 2432*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_large2.c: Likewise. 2433*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/stret_large.c: Likewise. 2434*1fd5a2e1SPrashanth Swaminathan 2435*1fd5a2e1SPrashanth Swaminathan2008-12-26 Timothy Wall <[email protected]> 2436*1fd5a2e1SPrashanth Swaminathan 2437*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble.c, 2438*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble_va.c, 2439*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble.c, 2440*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble_split.c, 2441*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble_split2.c: mark expected 2442*1fd5a2e1SPrashanth Swaminathan failures on x86_64 cygwin/mingw. 2443*1fd5a2e1SPrashanth Swaminathan 2444*1fd5a2e1SPrashanth Swaminathan2008-12-22 Timothy Wall <[email protected]> 2445*1fd5a2e1SPrashanth Swaminathan 2446*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c, 2447*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn1.c, 2448*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn2.c, 2449*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn3.c, 2450*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn4.c, 2451*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn5.c, 2452*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn6.c, 2453*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_loc_fn0.c, 2454*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_stdcall.c, 2455*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_pointer.c, 2456*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer.c, 2457*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer_stack.c: use portable cast from 2458*1fd5a2e1SPrashanth Swaminathan pointer to integer (intptr_t). 2459*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_longdouble.c: disable for win64. 2460*1fd5a2e1SPrashanth Swaminathan 2461*1fd5a2e1SPrashanth Swaminathan2008-07-24 Anthony Green <[email protected]> 2462*1fd5a2e1SPrashanth Swaminathan 2463*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_dbls_struct.c, 2464*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_double_va.c, 2465*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble.c, 2466*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble_va.c, 2467*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer.c, 2468*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer_stack.c, 2469*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/err_bad_abi.c: Clean up failures from 2470*1fd5a2e1SPrashanth Swaminathan compiler warnings. 2471*1fd5a2e1SPrashanth Swaminathan 2472*1fd5a2e1SPrashanth Swaminathan2008-03-04 Anthony Green <[email protected]> 2473*1fd5a2e1SPrashanth Swaminathan Blake Chaffin 2474*1fd5a2e1SPrashanth Swaminathan [email protected] 2475*1fd5a2e1SPrashanth Swaminathan 2476*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble_split2.c 2477*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble_split.c 2478*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_dbls_struct.c 2479*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_double_va.c 2480*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble.c 2481*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_longdouble_va.c 2482*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer.c 2483*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_pointer_stack.c 2484*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/err_bad_abi.c 2485*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/err_bad_typedef.c 2486*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_large2.c 2487*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_large.c 2488*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_medium2.c 2489*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/stret_medium.c: New tests from Apple. 2490*1fd5a2e1SPrashanth Swaminathan 2491*1fd5a2e1SPrashanth Swaminathan2009-06-05 Andrew Haley <[email protected]> 2492*1fd5a2e1SPrashanth Swaminathan 2493*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h, src/x86/ffi.c: Merge stdcall changes from 2494*1fd5a2e1SPrashanth Swaminathan libffi. 2495*1fd5a2e1SPrashanth Swaminathan 2496*1fd5a2e1SPrashanth Swaminathan2009-06-04 Andrew Haley <[email protected]> 2497*1fd5a2e1SPrashanth Swaminathan 2498*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h, src/x86/win32.S, src/x86/ffi.c: Back out 2499*1fd5a2e1SPrashanth Swaminathan stdcall changes. 2500*1fd5a2e1SPrashanth Swaminathan 2501*1fd5a2e1SPrashanth Swaminathan2008-02-26 Anthony Green <[email protected]> 2502*1fd5a2e1SPrashanth Swaminathan Thomas Heller <[email protected]> 2503*1fd5a2e1SPrashanth Swaminathan 2504*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_closure_SYSV_inner): Change C++ comment to C 2505*1fd5a2e1SPrashanth Swaminathan comment. 2506*1fd5a2e1SPrashanth Swaminathan 2507*1fd5a2e1SPrashanth Swaminathan2008-02-03 Timothy Wall <[email protected]> 2508*1fd5a2e1SPrashanth Swaminathan 2509*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (FFI_INIT_TRAMPOLINE_STDCALL): Calculate jump return 2510*1fd5a2e1SPrashanth Swaminathan offset based on code pointer, not data pointer. 2511*1fd5a2e1SPrashanth Swaminathan 2512*1fd5a2e1SPrashanth Swaminathan2008-01-31 Timothy Wall <[email protected]> 2513*1fd5a2e1SPrashanth Swaminathan 2514*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_stdcall.c: Add test for stdcall 2515*1fd5a2e1SPrashanth Swaminathan closures. 2516*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h: Increase size of trampoline for stdcall 2517*1fd5a2e1SPrashanth Swaminathan closures. 2518*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S: Add assembly for stdcall closure. 2519*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Initialize stdcall closure trampoline. 2520*1fd5a2e1SPrashanth Swaminathan 2521*1fd5a2e1SPrashanth Swaminathan2009-06-04 Andrew Haley <[email protected]> 2522*1fd5a2e1SPrashanth Swaminathan 2523*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Change void (*)() to void (*)(void). 2524*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Likewise. 2525*1fd5a2e1SPrashanth Swaminathan 2526*1fd5a2e1SPrashanth Swaminathan2009-06-04 Andrew Haley <[email protected]> 2527*1fd5a2e1SPrashanth Swaminathan 2528*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Insert licence header. 2529*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S: Likewise. 2530*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S: Likewise. 2531*1fd5a2e1SPrashanth Swaminathan 2532*1fd5a2e1SPrashanth Swaminathan * src/sh64/ffi.c: Change void (*)() to void (*)(void). 2533*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Likewise. 2534*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: Likewise. 2535*1fd5a2e1SPrashanth Swaminathan * src/m32r/ffi.c: Likewise. 2536*1fd5a2e1SPrashanth Swaminathan * src/sh64/ffi.c: Likewise. 2537*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c: Likewise. 2538*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c: Likewise. 2539*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S: Likewise. 2540*1fd5a2e1SPrashanth Swaminathan * src/frv/ffi.c: Likewise. 2541*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c: Likewise. 2542*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.c: Likewise. 2543*1fd5a2e1SPrashanth Swaminathan * src/pa/hpux32.S: Likewise. 2544*1fd5a2e1SPrashanth Swaminathan * src/ia64/unix.S: Likewise. 2545*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c: Likewise. 2546*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c: Likewise. 2547*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c: Likewise. 2548*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c: Likewise. 2549*1fd5a2e1SPrashanth Swaminathan 2550*1fd5a2e1SPrashanth Swaminathan2008-02-15 David Daney <[email protected]> 2551*1fd5a2e1SPrashanth Swaminathan 2552*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (USE__BUILTIN___CLEAR_CACHE): 2553*1fd5a2e1SPrashanth Swaminathan Define (conditionally), and use it to include cachectl.h. 2554*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Fix cache flushing. 2555*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h (_ABIN32, _ABI64, _ABIO32): Define. 2556*1fd5a2e1SPrashanth Swaminathan 2557*1fd5a2e1SPrashanth Swaminathan2009-06-04 Andrew Haley <[email protected]> 2558*1fd5a2e1SPrashanth Swaminathan 2559*1fd5a2e1SPrashanth Swaminathan include/ffi.h.in, 2560*1fd5a2e1SPrashanth Swaminathan src/arm/ffitarget.h, 2561*1fd5a2e1SPrashanth Swaminathan src/arm/ffi.c, 2562*1fd5a2e1SPrashanth Swaminathan src/arm/sysv.S, 2563*1fd5a2e1SPrashanth Swaminathan src/powerpc/ffitarget.h, 2564*1fd5a2e1SPrashanth Swaminathan src/closures.c, 2565*1fd5a2e1SPrashanth Swaminathan src/sh64/ffitarget.h, 2566*1fd5a2e1SPrashanth Swaminathan src/sh64/ffi.c, 2567*1fd5a2e1SPrashanth Swaminathan src/sh64/sysv.S, 2568*1fd5a2e1SPrashanth Swaminathan src/types.c, 2569*1fd5a2e1SPrashanth Swaminathan src/x86/ffi64.c, 2570*1fd5a2e1SPrashanth Swaminathan src/x86/ffitarget.h, 2571*1fd5a2e1SPrashanth Swaminathan src/x86/win32.S, 2572*1fd5a2e1SPrashanth Swaminathan src/x86/darwin.S, 2573*1fd5a2e1SPrashanth Swaminathan src/x86/ffi.c, 2574*1fd5a2e1SPrashanth Swaminathan src/x86/sysv.S, 2575*1fd5a2e1SPrashanth Swaminathan src/x86/unix64.S, 2576*1fd5a2e1SPrashanth Swaminathan src/alpha/ffitarget.h, 2577*1fd5a2e1SPrashanth Swaminathan src/alpha/ffi.c, 2578*1fd5a2e1SPrashanth Swaminathan src/alpha/osf.S, 2579*1fd5a2e1SPrashanth Swaminathan src/m68k/ffitarget.h, 2580*1fd5a2e1SPrashanth Swaminathan src/frv/ffitarget.h, 2581*1fd5a2e1SPrashanth Swaminathan src/frv/ffi.c, 2582*1fd5a2e1SPrashanth Swaminathan src/s390/ffitarget.h, 2583*1fd5a2e1SPrashanth Swaminathan src/s390/sysv.S, 2584*1fd5a2e1SPrashanth Swaminathan src/cris/ffitarget.h, 2585*1fd5a2e1SPrashanth Swaminathan src/pa/linux.S, 2586*1fd5a2e1SPrashanth Swaminathan src/pa/ffitarget.h, 2587*1fd5a2e1SPrashanth Swaminathan src/pa/ffi.c, 2588*1fd5a2e1SPrashanth Swaminathan src/raw_api.c, 2589*1fd5a2e1SPrashanth Swaminathan src/ia64/ffitarget.h, 2590*1fd5a2e1SPrashanth Swaminathan src/ia64/unix.S, 2591*1fd5a2e1SPrashanth Swaminathan src/ia64/ffi.c, 2592*1fd5a2e1SPrashanth Swaminathan src/ia64/ia64_flags.h, 2593*1fd5a2e1SPrashanth Swaminathan src/java_raw_api.c, 2594*1fd5a2e1SPrashanth Swaminathan src/debug.c, 2595*1fd5a2e1SPrashanth Swaminathan src/sparc/v9.S, 2596*1fd5a2e1SPrashanth Swaminathan src/sparc/ffitarget.h, 2597*1fd5a2e1SPrashanth Swaminathan src/sparc/ffi.c, 2598*1fd5a2e1SPrashanth Swaminathan src/sparc/v8.S, 2599*1fd5a2e1SPrashanth Swaminathan src/mips/ffitarget.h, 2600*1fd5a2e1SPrashanth Swaminathan src/mips/n32.S, 2601*1fd5a2e1SPrashanth Swaminathan src/mips/o32.S, 2602*1fd5a2e1SPrashanth Swaminathan src/mips/ffi.c, 2603*1fd5a2e1SPrashanth Swaminathan src/prep_cif.c, 2604*1fd5a2e1SPrashanth Swaminathan src/sh/ffitarget.h, 2605*1fd5a2e1SPrashanth Swaminathan src/sh/ffi.c, 2606*1fd5a2e1SPrashanth Swaminathan src/sh/sysv.S: Update license text. 2607*1fd5a2e1SPrashanth Swaminathan 2608*1fd5a2e1SPrashanth Swaminathan2009-05-22 Dave Korn <[email protected]> 2609*1fd5a2e1SPrashanth Swaminathan 2610*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (_ffi_closure_STDCALL): New function. 2611*1fd5a2e1SPrashanth Swaminathan (.eh_frame): Add FDE for it. 2612*1fd5a2e1SPrashanth Swaminathan 2613*1fd5a2e1SPrashanth Swaminathan2009-05-22 Dave Korn <[email protected]> 2614*1fd5a2e1SPrashanth Swaminathan 2615*1fd5a2e1SPrashanth Swaminathan * configure.ac: Also check if assembler supports pc-relative 2616*1fd5a2e1SPrashanth Swaminathan relocs on X86_WIN32 targets. 2617*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2618*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_prep_args): Declare extern, not global. 2619*1fd5a2e1SPrashanth Swaminathan (_ffi_call_SYSV): Add missing function type symbol .def and 2620*1fd5a2e1SPrashanth Swaminathan add EH markup labels. 2621*1fd5a2e1SPrashanth Swaminathan (_ffi_call_STDCALL): Likewise. 2622*1fd5a2e1SPrashanth Swaminathan (_ffi_closure_SYSV): Likewise. 2623*1fd5a2e1SPrashanth Swaminathan (_ffi_closure_raw_SYSV): Likewise. 2624*1fd5a2e1SPrashanth Swaminathan (.eh_frame): Add hand-crafted EH data. 2625*1fd5a2e1SPrashanth Swaminathan 2626*1fd5a2e1SPrashanth Swaminathan2009-04-09 Jakub Jelinek <[email protected]> 2627*1fd5a2e1SPrashanth Swaminathan 2628*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Change copyright header to refer to 2629*1fd5a2e1SPrashanth Swaminathan version 3 of the GNU General Public License and to point readers 2630*1fd5a2e1SPrashanth Swaminathan at the COPYING3 file and the FSF's license web page. 2631*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/call.exp: Likewise. 2632*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/special.exp: Likewise. 2633*1fd5a2e1SPrashanth Swaminathan 2634*1fd5a2e1SPrashanth Swaminathan2009-03-01 Ralf Wildenhues <[email protected]> 2635*1fd5a2e1SPrashanth Swaminathan 2636*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2637*1fd5a2e1SPrashanth Swaminathan 2638*1fd5a2e1SPrashanth Swaminathan2008-12-18 Rainer Orth <[email protected]> 2639*1fd5a2e1SPrashanth Swaminathan 2640*1fd5a2e1SPrashanth Swaminathan PR libffi/26048 2641*1fd5a2e1SPrashanth Swaminathan * configure.ac (HAVE_AS_X86_PCREL): New test. 2642*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2643*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Regenerate. 2644*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S [!FFI_NO_RAW_API]: Precalculate 2645*1fd5a2e1SPrashanth Swaminathan RAW_CLOSURE_CIF_OFFSET, RAW_CLOSURE_FUN_OFFSET, 2646*1fd5a2e1SPrashanth Swaminathan RAW_CLOSURE_USER_DATA_OFFSET for the Solaris 10/x86 assembler. 2647*1fd5a2e1SPrashanth Swaminathan (.eh_frame): Only use SYMBOL-. iff HAVE_AS_X86_PCREL. 2648*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S (.Lstore_table): Move to .text section. 2649*1fd5a2e1SPrashanth Swaminathan (.Lload_table): Likewise. 2650*1fd5a2e1SPrashanth Swaminathan (.eh_frame): Only use SYMBOL-. iff HAVE_AS_X86_PCREL. 2651*1fd5a2e1SPrashanth Swaminathan 2652*1fd5a2e1SPrashanth Swaminathan2008-12-18 Ralf Wildenhues <[email protected]> 2653*1fd5a2e1SPrashanth Swaminathan 2654*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2655*1fd5a2e1SPrashanth Swaminathan 2656*1fd5a2e1SPrashanth Swaminathan2008-11-21 Eric Botcazou <[email protected]> 2657*1fd5a2e1SPrashanth Swaminathan 2658*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_cif_machdep): Add support for 2659*1fd5a2e1SPrashanth Swaminathan signed/unsigned int8/16 return values. 2660*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S (ffi_call_v8): Likewise. 2661*1fd5a2e1SPrashanth Swaminathan (ffi_closure_v8): Likewise. 2662*1fd5a2e1SPrashanth Swaminathan 2663*1fd5a2e1SPrashanth Swaminathan2008-09-26 Peter O'Gorman <[email protected]> 2664*1fd5a2e1SPrashanth Swaminathan Steve Ellcey <[email protected]> 2665*1fd5a2e1SPrashanth Swaminathan 2666*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate for new libtool. 2667*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Ditto. 2668*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Ditto. 2669*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Ditto. 2670*1fd5a2e1SPrashanth Swaminathan 2671*1fd5a2e1SPrashanth Swaminathan2008-08-25 Andreas Tobler <[email protected]> 2672*1fd5a2e1SPrashanth Swaminathan 2673*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h (ffi_abi): Add FFI_LINUX and 2674*1fd5a2e1SPrashanth Swaminathan FFI_LINUX_SOFT_FLOAT to the POWERPC_FREEBSD enum. 2675*1fd5a2e1SPrashanth Swaminathan Add note about flag bits used for FFI_SYSV_TYPE_SMALL_STRUCT. 2676*1fd5a2e1SPrashanth Swaminathan Adjust copyright notice. 2677*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Add two new flags to indicate if we have one 2678*1fd5a2e1SPrashanth Swaminathan register or two register to use for FFI_SYSV structs. 2679*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Pass the right register flag introduced above. 2680*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Fix the return type for 2681*1fd5a2e1SPrashanth Swaminathan FFI_SYSV_TYPE_SMALL_STRUCT. Comment. 2682*1fd5a2e1SPrashanth Swaminathan Adjust copyright notice. 2683*1fd5a2e1SPrashanth Swaminathan 2684*1fd5a2e1SPrashanth Swaminathan2008-07-16 Kaz Kojima <[email protected]> 2685*1fd5a2e1SPrashanth Swaminathan 2686*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c (ffi_prep_closure_loc): Turn INSN into an unsigned 2687*1fd5a2e1SPrashanth Swaminathan int. 2688*1fd5a2e1SPrashanth Swaminathan 2689*1fd5a2e1SPrashanth Swaminathan2008-06-17 Ralf Wildenhues <[email protected]> 2690*1fd5a2e1SPrashanth Swaminathan 2691*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2692*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 2693*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerate. 2694*1fd5a2e1SPrashanth Swaminathan 2695*1fd5a2e1SPrashanth Swaminathan2008-06-07 Joseph Myers <[email protected]> 2696*1fd5a2e1SPrashanth Swaminathan 2697*1fd5a2e1SPrashanth Swaminathan * configure.ac (parisc*-*-linux*, powerpc-*-sysv*, 2698*1fd5a2e1SPrashanth Swaminathan powerpc-*-beos*): Remove. 2699*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2700*1fd5a2e1SPrashanth Swaminathan 2701*1fd5a2e1SPrashanth Swaminathan2008-05-09 Julian Brown <[email protected]> 2702*1fd5a2e1SPrashanth Swaminathan 2703*1fd5a2e1SPrashanth Swaminathan * Makefile.am (LTLDFLAGS): New. 2704*1fd5a2e1SPrashanth Swaminathan (libffi_la_LDFLAGS): Use above. 2705*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 2706*1fd5a2e1SPrashanth Swaminathan 2707*1fd5a2e1SPrashanth Swaminathan2008-04-18 Paolo Bonzini <[email protected]> 2708*1fd5a2e1SPrashanth Swaminathan 2709*1fd5a2e1SPrashanth Swaminathan PR bootstrap/35457 2710*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate. 2711*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2712*1fd5a2e1SPrashanth Swaminathan 2713*1fd5a2e1SPrashanth Swaminathan2008-03-26 Kaz Kojima <[email protected]> 2714*1fd5a2e1SPrashanth Swaminathan 2715*1fd5a2e1SPrashanth Swaminathan * src/sh/sysv.S: Add .note.GNU-stack on Linux. 2716*1fd5a2e1SPrashanth Swaminathan * src/sh64/sysv.S: Likewise. 2717*1fd5a2e1SPrashanth Swaminathan 2718*1fd5a2e1SPrashanth Swaminathan2008-03-26 Daniel Jacobowitz <[email protected]> 2719*1fd5a2e1SPrashanth Swaminathan 2720*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Fix ARM comment marker. 2721*1fd5a2e1SPrashanth Swaminathan 2722*1fd5a2e1SPrashanth Swaminathan2008-03-26 Jakub Jelinek <[email protected]> 2723*1fd5a2e1SPrashanth Swaminathan 2724*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S: Add .note.GNU-stack on Linux. 2725*1fd5a2e1SPrashanth Swaminathan * src/s390/sysv.S: Likewise. 2726*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Likewise. 2727*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Likewise. 2728*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S: Likewise. 2729*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S: Likewise. 2730*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: Likewise. 2731*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S: Likewise. 2732*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S: Likewise. 2733*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Likewise. 2734*1fd5a2e1SPrashanth Swaminathan 2735*1fd5a2e1SPrashanth Swaminathan2008-03-16 Ralf Wildenhues <[email protected]> 2736*1fd5a2e1SPrashanth Swaminathan 2737*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate. 2738*1fd5a2e1SPrashanth Swaminathan * configure: Likewise. 2739*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Likewise. 2740*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Likewise. 2741*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Likewise. 2742*1fd5a2e1SPrashanth Swaminathan 2743*1fd5a2e1SPrashanth Swaminathan2008-02-12 Bjoern Koenig <[email protected]> 2744*1fd5a2e1SPrashanth Swaminathan Andreas Tobler <[email protected]> 2745*1fd5a2e1SPrashanth Swaminathan 2746*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add amd64-*-freebsd* target. 2747*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2748*1fd5a2e1SPrashanth Swaminathan 2749*1fd5a2e1SPrashanth Swaminathan2008-01-30 H.J. Lu <[email protected]> 2750*1fd5a2e1SPrashanth Swaminathan 2751*1fd5a2e1SPrashanth Swaminathan PR libffi/34612 2752*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (ffi_closure_SYSV): Pop 4 byte from stack when 2753*1fd5a2e1SPrashanth Swaminathan returning struct. 2754*1fd5a2e1SPrashanth Swaminathan 2755*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/call.exp: Add "-O2 -fomit-frame-pointer" 2756*1fd5a2e1SPrashanth Swaminathan tests. 2757*1fd5a2e1SPrashanth Swaminathan 2758*1fd5a2e1SPrashanth Swaminathan2008-01-24 David Edelsohn <[email protected]> 2759*1fd5a2e1SPrashanth Swaminathan 2760*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 2761*1fd5a2e1SPrashanth Swaminathan 2762*1fd5a2e1SPrashanth Swaminathan2008-01-06 Andreas Tobler <[email protected]> 2763*1fd5a2e1SPrashanth Swaminathan 2764*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): Fix thinko. 2765*1fd5a2e1SPrashanth Swaminathan 2766*1fd5a2e1SPrashanth Swaminathan2008-01-05 Andreas Tobler <[email protected]> 2767*1fd5a2e1SPrashanth Swaminathan 2768*1fd5a2e1SPrashanth Swaminathan PR testsuite/32843 2769*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): Add code for 2770*1fd5a2e1SPrashanth Swaminathan signed/unsigned int8/16 for X86_DARWIN. 2771*1fd5a2e1SPrashanth Swaminathan Updated copyright info. 2772*1fd5a2e1SPrashanth Swaminathan Handle one and two byte structs with special cif->flags. 2773*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h: Add special types for one and two byte structs. 2774*1fd5a2e1SPrashanth Swaminathan Updated copyright info. 2775*1fd5a2e1SPrashanth Swaminathan * src/x86/darwin.S (ffi_call_SYSV): Rewrite to use a jump table like 2776*1fd5a2e1SPrashanth Swaminathan sysv.S 2777*1fd5a2e1SPrashanth Swaminathan Remove code to pop args from the stack after call. 2778*1fd5a2e1SPrashanth Swaminathan Special-case signed/unsigned for int8/16, one and two byte structs. 2779*1fd5a2e1SPrashanth Swaminathan (ffi_closure_raw_SYSV): Handle FFI_TYPE_UINT8, 2780*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_SINT8, FFI_TYPE_UINT16, FFI_TYPE_SINT16, FFI_TYPE_UINT32, 2781*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_SINT32. 2782*1fd5a2e1SPrashanth Swaminathan Updated copyright info. 2783*1fd5a2e1SPrashanth Swaminathan 2784*1fd5a2e1SPrashanth Swaminathan2007-12-08 David Daney <[email protected]> 2785*1fd5a2e1SPrashanth Swaminathan 2786*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S (ffi_call_N32): Replace dadd with ADDU, dsub with 2787*1fd5a2e1SPrashanth Swaminathan SUBU, add with ADDU and use smaller code sequences. 2788*1fd5a2e1SPrashanth Swaminathan 2789*1fd5a2e1SPrashanth Swaminathan2007-12-07 David Daney <[email protected]> 2790*1fd5a2e1SPrashanth Swaminathan 2791*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_prep_cif_machdep): Handle long double return 2792*1fd5a2e1SPrashanth Swaminathan type. 2793*1fd5a2e1SPrashanth Swaminathan 2794*1fd5a2e1SPrashanth Swaminathan2007-12-06 David Daney <[email protected]> 2795*1fd5a2e1SPrashanth Swaminathan 2796*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (FFI_SIZEOF_JAVA_RAW): Define if not already 2797*1fd5a2e1SPrashanth Swaminathan defined. 2798*1fd5a2e1SPrashanth Swaminathan (ffi_java_raw): New typedef. 2799*1fd5a2e1SPrashanth Swaminathan (ffi_java_raw_call, ffi_java_ptrarray_to_raw, 2800*1fd5a2e1SPrashanth Swaminathan ffi_java_raw_to_ptrarray): Change parameter types from ffi_raw to 2801*1fd5a2e1SPrashanth Swaminathan ffi_java_raw. 2802*1fd5a2e1SPrashanth Swaminathan (ffi_java_raw_closure) : Same. 2803*1fd5a2e1SPrashanth Swaminathan (ffi_prep_java_raw_closure, ffi_prep_java_raw_closure_loc): Change 2804*1fd5a2e1SPrashanth Swaminathan parameter types. 2805*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c (ffi_java_raw_size): Replace FFI_SIZEOF_ARG with 2806*1fd5a2e1SPrashanth Swaminathan FFI_SIZEOF_JAVA_RAW. 2807*1fd5a2e1SPrashanth Swaminathan (ffi_java_raw_to_ptrarray): Change type of raw to ffi_java_raw. 2808*1fd5a2e1SPrashanth Swaminathan Replace FFI_SIZEOF_ARG with FFI_SIZEOF_JAVA_RAW. Use 2809*1fd5a2e1SPrashanth Swaminathan sizeof(ffi_java_raw) for alignment calculations. 2810*1fd5a2e1SPrashanth Swaminathan (ffi_java_ptrarray_to_raw): Same. 2811*1fd5a2e1SPrashanth Swaminathan (ffi_java_rvalue_to_raw): Add special handling for FFI_TYPE_POINTER 2812*1fd5a2e1SPrashanth Swaminathan if FFI_SIZEOF_JAVA_RAW == 4. 2813*1fd5a2e1SPrashanth Swaminathan (ffi_java_raw_to_rvalue): Same. 2814*1fd5a2e1SPrashanth Swaminathan (ffi_java_raw_call): Change type of raw to ffi_java_raw. 2815*1fd5a2e1SPrashanth Swaminathan (ffi_java_translate_args): Same. 2816*1fd5a2e1SPrashanth Swaminathan (ffi_prep_java_raw_closure_loc, ffi_prep_java_raw_closure): Change 2817*1fd5a2e1SPrashanth Swaminathan parameter types. 2818*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h (FFI_SIZEOF_JAVA_RAW): Define for N32 ABI. 2819*1fd5a2e1SPrashanth Swaminathan 2820*1fd5a2e1SPrashanth Swaminathan2007-12-06 David Daney <[email protected]> 2821*1fd5a2e1SPrashanth Swaminathan 2822*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S (ffi_closure_N32): Use 64-bit add instruction on 2823*1fd5a2e1SPrashanth Swaminathan pointer values. 2824*1fd5a2e1SPrashanth Swaminathan 2825*1fd5a2e1SPrashanth Swaminathan2007-12-01 Andreas Tobler <[email protected]> 2826*1fd5a2e1SPrashanth Swaminathan 2827*1fd5a2e1SPrashanth Swaminathan PR libffi/31937 2828*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h: Introduce new ABI FFI_LINUX_SOFT_FLOAT. 2829*1fd5a2e1SPrashanth Swaminathan Add local FFI_TYPE_UINT128 to handle soft-float long-double-128. 2830*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Distinguish between __NO_FPRS__ and not and 2831*1fd5a2e1SPrashanth Swaminathan set the NUM_FPR_ARG_REGISTERS according to. 2832*1fd5a2e1SPrashanth Swaminathan Add support for potential soft-float support under hard-float 2833*1fd5a2e1SPrashanth Swaminathan architecture. 2834*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args_SYSV): Set NUM_FPR_ARG_REGISTERS to 0 in case of 2835*1fd5a2e1SPrashanth Swaminathan FFI_LINUX_SOFT_FLOAT, handle float, doubles and long-doubles according 2836*1fd5a2e1SPrashanth Swaminathan to the FFI_LINUX_SOFT_FLOAT ABI. 2837*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Likewise. 2838*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Likewise. 2839*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Make sure not to store float/double 2840*1fd5a2e1SPrashanth Swaminathan on archs where __NO_FPRS__ is true. 2841*1fd5a2e1SPrashanth Swaminathan Add FFI_TYPE_UINT128 support. 2842*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Add support for soft-float long-double-128. 2843*1fd5a2e1SPrashanth Swaminathan Adjust copyright notice. 2844*1fd5a2e1SPrashanth Swaminathan 2845*1fd5a2e1SPrashanth Swaminathan2007-11-25 Andreas Tobler <[email protected]> 2846*1fd5a2e1SPrashanth Swaminathan 2847*1fd5a2e1SPrashanth Swaminathan * src/closures.c: Move defintion of MAYBE_UNUSED from here to ... 2848*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h: ... here. 2849*1fd5a2e1SPrashanth Swaminathan Update copyright. 2850*1fd5a2e1SPrashanth Swaminathan 2851*1fd5a2e1SPrashanth Swaminathan2007-11-17 Andreas Tobler <[email protected]> 2852*1fd5a2e1SPrashanth Swaminathan 2853*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Load correct cr to compare if we have long double. 2854*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S: Likewise. 2855*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Add a comment to show which part goes into cr6. 2856*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_ldl.c: New test. 2857*1fd5a2e1SPrashanth Swaminathan 2858*1fd5a2e1SPrashanth Swaminathan2007-09-04 <[email protected]> 2859*1fd5a2e1SPrashanth Swaminathan 2860*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S (UNWIND): New. 2861*1fd5a2e1SPrashanth Swaminathan (Whole file): Conditionally compile unwinder directives. 2862*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Add unwinder directives. 2863*1fd5a2e1SPrashanth Swaminathan 2864*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_prep_args): Align structs by at least 4 bytes. 2865*1fd5a2e1SPrashanth Swaminathan Only treat r0 as a struct address if we're actually returning a 2866*1fd5a2e1SPrashanth Swaminathan struct by address. 2867*1fd5a2e1SPrashanth Swaminathan Only copy the bytes that are actually within a struct. 2868*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): A Composite Type not larger than 4 bytes 2869*1fd5a2e1SPrashanth Swaminathan is returned in r0, not passed by address. 2870*1fd5a2e1SPrashanth Swaminathan (ffi_call): Allocate a word-sized temporary for the case where 2871*1fd5a2e1SPrashanth Swaminathan a composite is returned in r0. 2872*1fd5a2e1SPrashanth Swaminathan (ffi_prep_incoming_args_SYSV): Align as necessary. 2873*1fd5a2e1SPrashanth Swaminathan 2874*1fd5a2e1SPrashanth Swaminathan2007-08-05 Steven Newbury <[email protected]> 2875*1fd5a2e1SPrashanth Swaminathan 2876*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Use __clear_cache instead of 2877*1fd5a2e1SPrashanth Swaminathan directly using the sys_cacheflush syscall. 2878*1fd5a2e1SPrashanth Swaminathan 2879*1fd5a2e1SPrashanth Swaminathan2007-07-27 Andrew Haley <[email protected]> 2880*1fd5a2e1SPrashanth Swaminathan 2881*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S (ffi_closure_SYSV): Add soft-float. 2882*1fd5a2e1SPrashanth Swaminathan 2883*1fd5a2e1SPrashanth Swaminathan2007-09-03 Maciej W. Rozycki <[email protected]> 2884*1fd5a2e1SPrashanth Swaminathan 2885*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Unify MIPS_IRIX and MIPS_LINUX into MIPS. 2886*1fd5a2e1SPrashanth Swaminathan * configure.ac: Likewise. 2887*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 2888*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Likewise. 2889*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Likewise. 2890*1fd5a2e1SPrashanth Swaminathan * configure: Likewise. 2891*1fd5a2e1SPrashanth Swaminathan 2892*1fd5a2e1SPrashanth Swaminathan2007-08-24 David Daney <[email protected]> 2893*1fd5a2e1SPrashanth Swaminathan 2894*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_sl.c: New test. 2895*1fd5a2e1SPrashanth Swaminathan 2896*1fd5a2e1SPrashanth Swaminathan2007-08-10 David Daney <[email protected]> 2897*1fd5a2e1SPrashanth Swaminathan 2898*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushort.c, 2899*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint16.c, 2900*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct1.c, 2901*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct3.c, 2902*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_7_1_byte.c, 2903*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct5.c, 2904*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_double.c, 2905*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct7.c, 2906*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_sint.c, 2907*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct9.c, 2908*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_20byte1.c, 2909*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_sshortchar.c, 2910*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint64.c, 2911*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3byte2.c, 2912*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_schar.c, 2913*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_uchar.c, 2914*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_19byte.c, 2915*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_9byte1.c, 2916*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_float.c, 2917*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn1.c, 2918*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/problem1.c, 2919*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn3.c, 2920*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_sshort.c, 2921*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn5.c, 2922*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_double.c, 2923*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct.c, 2924*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_2byte.c, 2925*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct10.c, 2926*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_4byte.c, 2927*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_6byte.c, 2928*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_8byte.c, 2929*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_sshort.c, 2930*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint16.c, 2931*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint32.c, 2932*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_20byte.c, 2933*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_float.c, 2934*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct2.c, 2935*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_5_1_byte.c, 2936*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct4.c, 2937*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_24byte.c, 2938*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct6.c, 2939*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_64byte.c, 2940*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct8.c, 2941*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_uint.c, 2942*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_ushortchar.c, 2943*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_schar.c, 2944*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_uchar.c, 2945*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint64.c, 2946*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ulonglong.c, 2947*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble.c, 2948*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_1_1byte.c, 2949*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_12byte.c, 2950*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3_1byte.c, 2951*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3byte1.c, 2952*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_4_1byte.c, 2953*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_6_1_byte.c, 2954*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_16byte.c, 2955*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_18byte.c, 2956*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn0.c, 2957*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_9byte2.c, 2958*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn2.c, 2959*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn4.c, 2960*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ushort.c, 2961*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn6.c, 2962*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_5byte.c, 2963*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_pointer.c, 2964*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_7byte.c, 2965*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint32.c, 2966*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.special/unwindtest_ffi_call.cc, 2967*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.special/unwindtest.cc: Remove xfail for mips64*-*-*. 2968*1fd5a2e1SPrashanth Swaminathan 2969*1fd5a2e1SPrashanth Swaminathan2007-08-10 David Daney <[email protected]> 2970*1fd5a2e1SPrashanth Swaminathan 2971*1fd5a2e1SPrashanth Swaminathan PR libffi/28313 2972*1fd5a2e1SPrashanth Swaminathan * configure.ac: Don't treat mips64 as a special case. 2973*1fd5a2e1SPrashanth Swaminathan * Makefile.am (nodist_libffi_la_SOURCES): Add n32.S. 2974*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate 2975*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Ditto. 2976*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Ditto. 2977*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h (REG_L, REG_S, SUBU, ADDU, SRL, LI): Indent. 2978*1fd5a2e1SPrashanth Swaminathan (LA, EH_FRAME_ALIGN, FDE_ADDR_BYTES): New preprocessor macros. 2979*1fd5a2e1SPrashanth Swaminathan (FFI_DEFAULT_ABI): Set for n64 case. 2980*1fd5a2e1SPrashanth Swaminathan (FFI_CLOSURES, FFI_TRAMPOLINE_SIZE): Define for n32 and n64 cases. 2981*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S (ffi_call_N32): Add debug macros and labels for FDE. 2982*1fd5a2e1SPrashanth Swaminathan (ffi_closure_N32): New function. 2983*1fd5a2e1SPrashanth Swaminathan (.eh_frame): New section 2984*1fd5a2e1SPrashanth Swaminathan * src/mips/o32.S: Clean up comments. 2985*1fd5a2e1SPrashanth Swaminathan (ffi_closure_O32): Pass ffi_closure parameter in $12. 2986*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c: Use FFI_MIPS_N32 instead of 2987*1fd5a2e1SPrashanth Swaminathan _MIPS_SIM == _ABIN32 throughout. 2988*1fd5a2e1SPrashanth Swaminathan (FFI_MIPS_STOP_HERE): New, use in place of 2989*1fd5a2e1SPrashanth Swaminathan ffi_stop_here. 2990*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args): Use unsigned long to hold pointer values. Rewrite 2991*1fd5a2e1SPrashanth Swaminathan to support n32/n64 ABIs. 2992*1fd5a2e1SPrashanth Swaminathan (calc_n32_struct_flags): Rewrite. 2993*1fd5a2e1SPrashanth Swaminathan (calc_n32_return_struct_flags): Remove unused variable. Reverse 2994*1fd5a2e1SPrashanth Swaminathan position of flag bits. 2995*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Rewrite n32 portion. 2996*1fd5a2e1SPrashanth Swaminathan (ffi_call): Enable for n64. Add special handling for small structure 2997*1fd5a2e1SPrashanth Swaminathan return values. 2998*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Add n32 and n64 support. 2999*1fd5a2e1SPrashanth Swaminathan (ffi_closure_mips_inner_O32): Add cast to silence warning. 3000*1fd5a2e1SPrashanth Swaminathan (copy_struct_N32, ffi_closure_mips_inner_N32): New functions. 3001*1fd5a2e1SPrashanth Swaminathan 3002*1fd5a2e1SPrashanth Swaminathan2007-08-08 David Daney <[email protected]> 3003*1fd5a2e1SPrashanth Swaminathan 3004*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h (ffi_type_mylong): Remove definition. 3005*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint16.c (main): Use correct type 3006*1fd5a2e1SPrashanth Swaminathan specifiers. 3007*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct1.c (main): Ditto. 3008*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sint.c (main): Ditto. 3009*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct9.c (main): Ditto. 3010*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte1.c (main): Ditto. 3011*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte1.c (main): Ditto. 3012*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn1.c (main): Ditto. 3013*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn3.c (main): Ditto. 3014*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_dbl2.c (main): Ditto. 3015*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sshort.c (main): Ditto. 3016*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_fl3.c (main): Ditto. 3017*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn5.c (main): Ditto. 3018*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct.c (main): Ditto. 3019*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct10.c (main): Ditto. 3020*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_ll1.c (main): Ditto. 3021*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_8byte.c (main): Ditto. 3022*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint32.c (main): Ditto. 3023*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint16.c (main): Ditto. 3024*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte.c (main): Ditto. 3025*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct2.c (main): Ditto. 3026*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_24byte.c (main): Ditto. 3027*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct6.c (main): Ditto. 3028*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c (main): Ditto. 3029*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_12byte.c (main): Ditto. 3030*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_16byte.c (main): Ditto. 3031*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c (main): Ditto. 3032*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte2.c (main): Ditto. 3033*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn2.c (main): Ditto. 3034*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_dbl1.c (main): Ditto. 3035*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn4.c (main): Ditto. 3036*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn6.c (main): Ditto. 3037*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint32.c (main): Ditto. 3038*1fd5a2e1SPrashanth Swaminathan 3039*1fd5a2e1SPrashanth Swaminathan2007-08-07 Andrew Haley <[email protected]> 3040*1fd5a2e1SPrashanth Swaminathan 3041*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (ffi_closure_raw_SYSV): Fix typo in previous 3042*1fd5a2e1SPrashanth Swaminathan checkin. 3043*1fd5a2e1SPrashanth Swaminathan 3044*1fd5a2e1SPrashanth Swaminathan2007-08-06 Andrew Haley <[email protected]> 3045*1fd5a2e1SPrashanth Swaminathan 3046*1fd5a2e1SPrashanth Swaminathan PR testsuite/32843 3047*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (ffi_closure_raw_SYSV): Handle FFI_TYPE_UINT8, 3048*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_SINT8, FFI_TYPE_UINT16, FFI_TYPE_SINT16, FFI_TYPE_UINT32, 3049*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_SINT32. 3050*1fd5a2e1SPrashanth Swaminathan 3051*1fd5a2e1SPrashanth Swaminathan2007-08-02 David Daney <[email protected]> 3052*1fd5a2e1SPrashanth Swaminathan 3053*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_ul.c (main): Define return type as 3054*1fd5a2e1SPrashanth Swaminathan ffi_arg. Use proper printf conversion specifier. 3055*1fd5a2e1SPrashanth Swaminathan 3056*1fd5a2e1SPrashanth Swaminathan2007-07-30 Andrew Haley <[email protected]> 3057*1fd5a2e1SPrashanth Swaminathan 3058*1fd5a2e1SPrashanth Swaminathan PR testsuite/32843 3059*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): in x86 case, add code for 3060*1fd5a2e1SPrashanth Swaminathan signed/unsigned int8/16. 3061*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (ffi_call_SYSV): Rewrite to: 3062*1fd5a2e1SPrashanth Swaminathan Use a jump table. 3063*1fd5a2e1SPrashanth Swaminathan Remove code to pop args from the stack after call. 3064*1fd5a2e1SPrashanth Swaminathan Special-case signed/unsigned int8/16. 3065*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_sc.c (main): Revert. 3066*1fd5a2e1SPrashanth Swaminathan 3067*1fd5a2e1SPrashanth Swaminathan2007-07-26 Richard Guenther <[email protected]> 3068*1fd5a2e1SPrashanth Swaminathan 3069*1fd5a2e1SPrashanth Swaminathan PR testsuite/32843 3070*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_sc.c (main): Verify call 3071*1fd5a2e1SPrashanth Swaminathan result as signed char, not ffi_arg. 3072*1fd5a2e1SPrashanth Swaminathan 3073*1fd5a2e1SPrashanth Swaminathan2007-07-16 Rainer Orth <[email protected]> 3074*1fd5a2e1SPrashanth Swaminathan 3075*1fd5a2e1SPrashanth Swaminathan * configure.ac (i?86-*-solaris2.1[0-9]): Set TARGET to X86_64. 3076*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3077*1fd5a2e1SPrashanth Swaminathan 3078*1fd5a2e1SPrashanth Swaminathan2007-07-11 David Daney <[email protected]> 3079*1fd5a2e1SPrashanth Swaminathan 3080*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c: Don't include sys/cachectl.h. 3081*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Use __builtin___clear_cache() instead of 3082*1fd5a2e1SPrashanth Swaminathan cacheflush(). 3083*1fd5a2e1SPrashanth Swaminathan 3084*1fd5a2e1SPrashanth Swaminathan2007-05-18 Aurelien Jarno <[email protected]> 3085*1fd5a2e1SPrashanth Swaminathan 3086*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_prep_closure_loc): Renamed and ajusted 3087*1fd5a2e1SPrashanth Swaminathan from (ffi_prep_closure): ... this. 3088*1fd5a2e1SPrashanth Swaminathan (FFI_INIT_TRAMPOLINE): Adjust. 3089*1fd5a2e1SPrashanth Swaminathan 3090*1fd5a2e1SPrashanth Swaminathan2005-12-31 Phil Blundell <[email protected]> 3091*1fd5a2e1SPrashanth Swaminathan 3092*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_prep_incoming_args_SYSV, 3093*1fd5a2e1SPrashanth Swaminathan ffi_closure_SYSV_inner, ffi_prep_closure): New, add closure support. 3094*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S(ffi_closure_SYSV): Likewise. 3095*1fd5a2e1SPrashanth Swaminathan * src/arm/ffitarget.h (FFI_TRAMPOLINE_SIZE): Likewise. 3096*1fd5a2e1SPrashanth Swaminathan (FFI_CLOSURES): Enable closure support. 3097*1fd5a2e1SPrashanth Swaminathan 3098*1fd5a2e1SPrashanth Swaminathan2007-07-03 Andrew Haley <[email protected]> 3099*1fd5a2e1SPrashanth Swaminathan 3100*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushort.c, 3101*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint16.c, 3102*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct1.c, 3103*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct3.c, 3104*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_7_1_byte.c, 3105*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_double.c, 3106*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct5.c, 3107*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct7.c, 3108*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_sint.c, 3109*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct9.c, 3110*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_20byte1.c, 3111*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_sshortchar.c, 3112*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint64.c, 3113*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3byte2.c, 3114*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_schar.c, 3115*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_uchar.c, 3116*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_19byte.c, 3117*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_9byte1.c, 3118*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_float.c, 3119*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn1.c, 3120*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/problem1.c, 3121*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn3.c, 3122*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_sshort.c, 3123*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn5.c, 3124*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_double.c, 3125*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_2byte.c, 3126*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct.c, 3127*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct10.c, 3128*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_4byte.c, 3129*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_6byte.c, 3130*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_8byte.c, 3131*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_sshort.c, 3132*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint32.c, 3133*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint16.c, 3134*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_float.c, 3135*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_20byte.c, 3136*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_5_1_byte.c, 3137*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct2.c, 3138*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_24byte.c, 3139*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct4.c, 3140*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct6.c, 3141*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_64byte.c, 3142*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/nested_struct8.c, 3143*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_uint.c, 3144*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_multi_ushortchar.c, 3145*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_schar.c, 3146*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_uchar.c, 3147*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_uint64.c, 3148*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ulonglong.c, 3149*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_longdouble.c, 3150*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_1_1byte.c, 3151*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_12byte.c, 3152*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3_1byte.c, 3153*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_3byte1.c, 3154*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_4_1byte.c, 3155*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_6_1_byte.c, 3156*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_16byte.c, 3157*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_18byte.c, 3158*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn0.c, 3159*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_9byte2.c, 3160*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn2.c, 3161*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn4.c, 3162*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_ushort.c, 3163*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/closure_fn6.c, 3164*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_5byte.c, 3165*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_pointer.c, 3166*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_7byte.c, 3167*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.call/cls_align_sint32.c, 3168*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.special/unwindtest_ffi_call.cc, 3169*1fd5a2e1SPrashanth Swaminathan testsuite/libffi.special/unwindtest.cc: Enable for ARM. 3170*1fd5a2e1SPrashanth Swaminathan 3171*1fd5a2e1SPrashanth Swaminathan2007-07-05 H.J. Lu <[email protected]> 3172*1fd5a2e1SPrashanth Swaminathan 3173*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerated. 3174*1fd5a2e1SPrashanth Swaminathan 3175*1fd5a2e1SPrashanth Swaminathan2007-06-02 Paolo Bonzini <[email protected]> 3176*1fd5a2e1SPrashanth Swaminathan 3177*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3178*1fd5a2e1SPrashanth Swaminathan 3179*1fd5a2e1SPrashanth Swaminathan2007-05-23 Steve Ellcey <[email protected]> 3180*1fd5a2e1SPrashanth Swaminathan 3181*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 3182*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3183*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate. 3184*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 3185*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerate. 3186*1fd5a2e1SPrashanth Swaminathan 3187*1fd5a2e1SPrashanth Swaminathan2007-05-10 Roman Zippel <[email protected]> 3188*1fd5a2e1SPrashanth Swaminathan 3189*1fd5a2e1SPrashanth Swaminathan * src/m68k/ffi.c (ffi_prep_incoming_args_SYSV, 3190*1fd5a2e1SPrashanth Swaminathan ffi_closure_SYSV_inner,ffi_prep_closure): New, add closure support. 3191*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S(ffi_closure_SYSV,ffi_closure_struct_SYSV): Likewise. 3192*1fd5a2e1SPrashanth Swaminathan * src/m68k/ffitarget.h (FFI_TRAMPOLINE_SIZE): Likewise. 3193*1fd5a2e1SPrashanth Swaminathan (FFI_CLOSURES): Enable closure support. 3194*1fd5a2e1SPrashanth Swaminathan 3195*1fd5a2e1SPrashanth Swaminathan2007-05-10 Roman Zippel <[email protected]> 3196*1fd5a2e1SPrashanth Swaminathan 3197*1fd5a2e1SPrashanth Swaminathan * configure.ac (HAVE_AS_CFI_PSEUDO_OP): New test. 3198*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3199*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Regenerate. 3200*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S (CFI_STARTPROC,CFI_ENDPROC, 3201*1fd5a2e1SPrashanth Swaminathan CFI_OFFSET,CFI_DEF_CFA): New macros. 3202*1fd5a2e1SPrashanth Swaminathan (ffi_call_SYSV): Add callframe annotation. 3203*1fd5a2e1SPrashanth Swaminathan 3204*1fd5a2e1SPrashanth Swaminathan2007-05-10 Roman Zippel <[email protected]> 3205*1fd5a2e1SPrashanth Swaminathan 3206*1fd5a2e1SPrashanth Swaminathan * src/m68k/ffi.c (ffi_prep_args,ffi_prep_cif_machdep): Fix 3207*1fd5a2e1SPrashanth Swaminathan numerous test suite failures. 3208*1fd5a2e1SPrashanth Swaminathan * src/m68k/sysv.S (ffi_call_SYSV): Likewise. 3209*1fd5a2e1SPrashanth Swaminathan 3210*1fd5a2e1SPrashanth Swaminathan2007-04-11 Paolo Bonzini <[email protected]> 3211*1fd5a2e1SPrashanth Swaminathan 3212*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Bring up to date. 3213*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 3214*1fd5a2e1SPrashanth Swaminathan * src/frv/eabi.S: Remove RCS keyword. 3215*1fd5a2e1SPrashanth Swaminathan 3216*1fd5a2e1SPrashanth Swaminathan2007-04-06 Richard Henderson <[email protected]> 3217*1fd5a2e1SPrashanth Swaminathan 3218*1fd5a2e1SPrashanth Swaminathan * configure.ac: Tidy target case. 3219*1fd5a2e1SPrashanth Swaminathan (HAVE_LONG_DOUBLE): Allow the target to override. 3220*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3221*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Don't define ffi_type_foo if 3222*1fd5a2e1SPrashanth Swaminathan LIBFFI_HIDE_BASIC_TYPES is defined. 3223*1fd5a2e1SPrashanth Swaminathan (ffi_type_longdouble): If not HAVE_LONG_DOUBLE, define 3224*1fd5a2e1SPrashanth Swaminathan to ffi_type_double. 3225*1fd5a2e1SPrashanth Swaminathan * types.c (LIBFFI_HIDE_BASIC_TYPES): Define. 3226*1fd5a2e1SPrashanth Swaminathan (FFI_TYPEDEF, ffi_type_void): Mark the data const. 3227*1fd5a2e1SPrashanth Swaminathan (ffi_type_longdouble): Special case for Alpha. Don't define 3228*1fd5a2e1SPrashanth Swaminathan if long double == double. 3229*1fd5a2e1SPrashanth Swaminathan 3230*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c (FFI_TYPE_LONGDOUBLE): Assert unique value. 3231*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Handle it as the 128-bit type. 3232*1fd5a2e1SPrashanth Swaminathan (ffi_call, ffi_closure_osf_inner): Likewise. 3233*1fd5a2e1SPrashanth Swaminathan (ffi_closure_osf_inner): Likewise. Mark hidden. 3234*1fd5a2e1SPrashanth Swaminathan (ffi_call_osf, ffi_closure_osf): Mark hidden. 3235*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffitarget.h (FFI_LAST_ABI): Tidy definition. 3236*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S (ffi_call_osf, ffi_closure_osf): Mark hidden. 3237*1fd5a2e1SPrashanth Swaminathan (load_table): Handle 128-bit long double. 3238*1fd5a2e1SPrashanth Swaminathan 3239*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float4.c: Add -mieee for alpha. 3240*1fd5a2e1SPrashanth Swaminathan 3241*1fd5a2e1SPrashanth Swaminathan2007-04-06 Tom Tromey <[email protected]> 3242*1fd5a2e1SPrashanth Swaminathan 3243*1fd5a2e1SPrashanth Swaminathan PR libffi/31491: 3244*1fd5a2e1SPrashanth Swaminathan * README: Fixed bug in example. 3245*1fd5a2e1SPrashanth Swaminathan 3246*1fd5a2e1SPrashanth Swaminathan2007-04-03 Jakub Jelinek <[email protected]> 3247*1fd5a2e1SPrashanth Swaminathan 3248*1fd5a2e1SPrashanth Swaminathan * src/closures.c: Include sys/statfs.h. 3249*1fd5a2e1SPrashanth Swaminathan (_GNU_SOURCE): Define on Linux. 3250*1fd5a2e1SPrashanth Swaminathan (FFI_MMAP_EXEC_SELINUX): Define. 3251*1fd5a2e1SPrashanth Swaminathan (selinux_enabled): New variable. 3252*1fd5a2e1SPrashanth Swaminathan (selinux_enabled_check): New function. 3253*1fd5a2e1SPrashanth Swaminathan (is_selinux_enabled): Define. 3254*1fd5a2e1SPrashanth Swaminathan (dlmmap): Use it. 3255*1fd5a2e1SPrashanth Swaminathan 3256*1fd5a2e1SPrashanth Swaminathan2007-03-24 Uros Bizjak <[email protected]> 3257*1fd5a2e1SPrashanth Swaminathan 3258*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_fl2.c (return_fl): Mark as static. 3259*1fd5a2e1SPrashanth Swaminathan Use 'volatile float sum' to create sum of floats to avoid false 3260*1fd5a2e1SPrashanth Swaminathan negative due to excess precision on ix86 targets. 3261*1fd5a2e1SPrashanth Swaminathan (main): Ditto. 3262*1fd5a2e1SPrashanth Swaminathan 3263*1fd5a2e1SPrashanth Swaminathan2007-03-08 Alexandre Oliva <[email protected]> 3264*1fd5a2e1SPrashanth Swaminathan 3265*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (flush_icache): Fix left-over from previous 3266*1fd5a2e1SPrashanth Swaminathan patch. 3267*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): Remove unneeded casts. Add needed ones. 3268*1fd5a2e1SPrashanth Swaminathan 3269*1fd5a2e1SPrashanth Swaminathan2007-03-07 Alexandre Oliva <[email protected]> 3270*1fd5a2e1SPrashanth Swaminathan 3271*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (ffi_closure_alloc, ffi_closure_free): New. 3272*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure_loc): New. 3273*1fd5a2e1SPrashanth Swaminathan (ffi_prep_raw_closure_loc): New. 3274*1fd5a2e1SPrashanth Swaminathan (ffi_prep_java_raw_closure_loc): New. 3275*1fd5a2e1SPrashanth Swaminathan * src/closures.c: New file. 3276*1fd5a2e1SPrashanth Swaminathan * src/dlmalloc.c [FFI_MMAP_EXEC_WRIT] (struct malloc_segment): 3277*1fd5a2e1SPrashanth Swaminathan Replace sflags with exec_offset. 3278*1fd5a2e1SPrashanth Swaminathan [FFI_MMAP_EXEC_WRIT] (mmap_exec_offset, add_segment_exec_offset, 3279*1fd5a2e1SPrashanth Swaminathan sub_segment_exec_offset): New macros. 3280*1fd5a2e1SPrashanth Swaminathan (get_segment_flags, set_segment_flags, check_segment_merge): New 3281*1fd5a2e1SPrashanth Swaminathan macros. 3282*1fd5a2e1SPrashanth Swaminathan (is_mmapped_segment, is_extern_segment): Use get_segment_flags. 3283*1fd5a2e1SPrashanth Swaminathan (add_segment, sys_alloc, create_mspace, create_mspace_with_base, 3284*1fd5a2e1SPrashanth Swaminathan destroy_mspace): Use new macros. 3285*1fd5a2e1SPrashanth Swaminathan (sys_alloc): Silence warning. 3286*1fd5a2e1SPrashanth Swaminathan * Makefile.am (libffi_la_SOURCES): Add src/closures.c. 3287*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 3288*1fd5a2e1SPrashanth Swaminathan * src/prep_cif [FFI_CLOSURES] (ffi_prep_closure): Implement in 3289*1fd5a2e1SPrashanth Swaminathan terms of ffi_prep_closure_loc. 3290*1fd5a2e1SPrashanth Swaminathan * src/raw_api.c (ffi_prep_raw_closure_loc): Renamed and adjusted 3291*1fd5a2e1SPrashanth Swaminathan from... 3292*1fd5a2e1SPrashanth Swaminathan (ffi_prep_raw_closure): ... this. Re-implement in terms of the 3293*1fd5a2e1SPrashanth Swaminathan renamed version. 3294*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api (ffi_prep_java_raw_closure_loc): Renamed and 3295*1fd5a2e1SPrashanth Swaminathan adjusted from... 3296*1fd5a2e1SPrashanth Swaminathan (ffi_prep_java_raw_closure): ... this. Re-implement in terms of 3297*1fd5a2e1SPrashanth Swaminathan the renamed version. 3298*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c (ffi_prep_closure_loc): Renamed from 3299*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): ... this. 3300*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.c: Likewise. 3301*1fd5a2e1SPrashanth Swaminathan * src/cris/ffi.c: Likewise. Adjust. 3302*1fd5a2e1SPrashanth Swaminathan * src/frv/ffi.c: Likewise. 3303*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c: Likewise. 3304*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c: Likewise. 3305*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: Likewise. 3306*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c: Likewise. 3307*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c: Likewise. 3308*1fd5a2e1SPrashanth Swaminathan * src/sh64/ffi.c: Likewise. 3309*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c: Likewise. 3310*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c: Likewise. 3311*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Likewise. 3312*1fd5a2e1SPrashanth Swaminathan (FFI_INIT_TRAMPOLINE): Adjust. 3313*1fd5a2e1SPrashanth Swaminathan (ffi_prep_raw_closure_loc): Renamed and adjusted from... 3314*1fd5a2e1SPrashanth Swaminathan (ffi_prep_raw_closure): ... this. 3315*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_closure_loc): Renamed from 3316*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): ... this. 3317*1fd5a2e1SPrashanth Swaminathan (flush_icache): Adjust. 3318*1fd5a2e1SPrashanth Swaminathan 3319*1fd5a2e1SPrashanth Swaminathan2007-03-07 Alexandre Oliva <[email protected]> 3320*1fd5a2e1SPrashanth Swaminathan 3321*1fd5a2e1SPrashanth Swaminathan * src/dlmalloc.c: New file, imported version 2.8.3 of Doug 3322*1fd5a2e1SPrashanth Swaminathan Lea's malloc. 3323*1fd5a2e1SPrashanth Swaminathan 3324*1fd5a2e1SPrashanth Swaminathan2007-03-01 Brooks Moses <[email protected]> 3325*1fd5a2e1SPrashanth Swaminathan 3326*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add dummy install-pdf target. 3327*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate 3328*1fd5a2e1SPrashanth Swaminathan 3329*1fd5a2e1SPrashanth Swaminathan2007-02-13 Andreas Krebbel <[email protected]> 3330*1fd5a2e1SPrashanth Swaminathan 3331*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c (ffi_prep_args, ffi_prep_cif_machdep, 3332*1fd5a2e1SPrashanth Swaminathan ffi_closure_helper_SYSV): Add long double handling. 3333*1fd5a2e1SPrashanth Swaminathan 3334*1fd5a2e1SPrashanth Swaminathan2007-02-02 Jakub Jelinek <[email protected]> 3335*1fd5a2e1SPrashanth Swaminathan 3336*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S (ffi_call_LINUX64): Move restore of r2 3337*1fd5a2e1SPrashanth Swaminathan immediately after bctrl instruction. 3338*1fd5a2e1SPrashanth Swaminathan 3339*1fd5a2e1SPrashanth Swaminathan2007-01-18 Alexandre Oliva <[email protected]> 3340*1fd5a2e1SPrashanth Swaminathan 3341*1fd5a2e1SPrashanth Swaminathan * Makefile.am (all-recursive, install-recursive, 3342*1fd5a2e1SPrashanth Swaminathan mostlyclean-recursive, clean-recursive, distclean-recursive, 3343*1fd5a2e1SPrashanth Swaminathan maintainer-clean-recursive): Add missing targets. 3344*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 3345*1fd5a2e1SPrashanth Swaminathan 3346*1fd5a2e1SPrashanth Swaminathan2006-12-14 Andreas Tobler <[email protected]> 3347*1fd5a2e1SPrashanth Swaminathan 3348*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add TARGET for x86_64-*-darwin*. 3349*1fd5a2e1SPrashanth Swaminathan * Makefile.am (nodist_libffi_la_SOURCES): Add rules for 64-bit sources 3350*1fd5a2e1SPrashanth Swaminathan for X86_DARWIN. 3351*1fd5a2e1SPrashanth Swaminathan * src/x86/ffitarget.h: Set trampoline size for x86_64-*-darwin*. 3352*1fd5a2e1SPrashanth Swaminathan * src/x86/darwin64.S: New file for x86_64-*-darwin* support. 3353*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3354*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 3355*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 3356*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerate. 3357*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest_ffi_call.cc: New test case for 3358*1fd5a2e1SPrashanth Swaminathan ffi_call only. 3359*1fd5a2e1SPrashanth Swaminathan 3360*1fd5a2e1SPrashanth Swaminathan2006-12-13 Andreas Tobler <[email protected]> 3361*1fd5a2e1SPrashanth Swaminathan 3362*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate with aclocal -I .. as written in the 3363*1fd5a2e1SPrashanth Swaminathan Makefile.am. 3364*1fd5a2e1SPrashanth Swaminathan 3365*1fd5a2e1SPrashanth Swaminathan2006-10-31 Geoffrey Keating <[email protected]> 3366*1fd5a2e1SPrashanth Swaminathan 3367*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (darwin_adjust_aggregate_sizes): New. 3368*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Call darwin_adjust_aggregate_sizes for 3369*1fd5a2e1SPrashanth Swaminathan Darwin. 3370*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct4.c: Remove Darwin XFAIL. 3371*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct6.c: Remove Darwin XFAIL. 3372*1fd5a2e1SPrashanth Swaminathan 3373*1fd5a2e1SPrashanth Swaminathan2006-10-10 Paolo Bonzini <[email protected]> 3374*1fd5a2e1SPrashanth Swaminathan Sandro Tolaini <[email protected]> 3375*1fd5a2e1SPrashanth Swaminathan 3376*1fd5a2e1SPrashanth Swaminathan * configure.ac [i*86-*-darwin*]: Set X86_DARWIN symbol and 3377*1fd5a2e1SPrashanth Swaminathan conditional. 3378*1fd5a2e1SPrashanth Swaminathan * configure: Regenerated. 3379*1fd5a2e1SPrashanth Swaminathan * Makefile.am (nodist_libffi_la_SOURCES) [X86_DARWIN]: New case. 3380*1fd5a2e1SPrashanth Swaminathan (EXTRA_DIST): Add src/x86/darwin.S. 3381*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerated. 3382*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerated. 3383*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerated. 3384*1fd5a2e1SPrashanth Swaminathan 3385*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep) [X86_DARWIN]: Treat like 3386*1fd5a2e1SPrashanth Swaminathan X86_WIN32, and additionally align stack to 16 bytes. 3387*1fd5a2e1SPrashanth Swaminathan * src/x86/darwin.S: New, based on sysv.S. 3388*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif) [X86_DARWIN]: Align > 8-byte structs. 3389*1fd5a2e1SPrashanth Swaminathan 3390*1fd5a2e1SPrashanth Swaminathan2006-09-12 David Daney <[email protected]> 3391*1fd5a2e1SPrashanth Swaminathan 3392*1fd5a2e1SPrashanth Swaminathan PR libffi/23935 3393*1fd5a2e1SPrashanth Swaminathan * include/Makefile.am: Install both ffi.h and ffitarget.h in 3394*1fd5a2e1SPrashanth Swaminathan $(libdir)/gcc/$(target_alias)/$(gcc_version)/include. 3395*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerated for automake 1.9.6. 3396*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerated. 3397*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerated. 3398*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerated. 3399*1fd5a2e1SPrashanth Swaminathan 3400*1fd5a2e1SPrashanth Swaminathan2006-08-17 Andreas Tobler <[email protected]> 3401*1fd5a2e1SPrashanth Swaminathan 3402*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h (struct): Revert accidental commit. 3403*1fd5a2e1SPrashanth Swaminathan 3404*1fd5a2e1SPrashanth Swaminathan2006-08-15 Andreas Tobler <[email protected]> 3405*1fd5a2e1SPrashanth Swaminathan 3406*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h: Remove lint directives. 3407*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Likewise. 3408*1fd5a2e1SPrashanth Swaminathan 3409*1fd5a2e1SPrashanth Swaminathan2006-07-25 Torsten Schoenfeld <[email protected]> 3410*1fd5a2e1SPrashanth Swaminathan 3411*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (ffi_type_ulong, ffi_type_slong): Define correctly 3412*1fd5a2e1SPrashanth Swaminathan for 32-bit architectures. 3413*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_ul.c: New test case. 3414*1fd5a2e1SPrashanth Swaminathan 3415*1fd5a2e1SPrashanth Swaminathan2006-07-19 David Daney <[email protected]> 3416*1fd5a2e1SPrashanth Swaminathan 3417*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn6.c: Remove xfail for mips, 3418*1fd5a2e1SPrashanth Swaminathan xfail remains for mips64. 3419*1fd5a2e1SPrashanth Swaminathan 3420*1fd5a2e1SPrashanth Swaminathan2006-05-23 Carlos O'Donell <[email protected]> 3421*1fd5a2e1SPrashanth Swaminathan 3422*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add install-html target. Add install-html to .PHONY 3423*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 3424*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate. 3425*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 3426*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerate. 3427*1fd5a2e1SPrashanth Swaminathan 3428*1fd5a2e1SPrashanth Swaminathan2006-05-18 John David Anglin <[email protected]> 3429*1fd5a2e1SPrashanth Swaminathan 3430*1fd5a2e1SPrashanth Swaminathan * pa/ffi.c (ffi_prep_args_pa32): Load floating point arguments from 3431*1fd5a2e1SPrashanth Swaminathan stack slot. 3432*1fd5a2e1SPrashanth Swaminathan 3433*1fd5a2e1SPrashanth Swaminathan2006-04-22 Andreas Tobler <[email protected]> 3434*1fd5a2e1SPrashanth Swaminathan 3435*1fd5a2e1SPrashanth Swaminathan * README: Remove notice about 'Crazy Comments'. 3436*1fd5a2e1SPrashanth Swaminathan * src/debug.c: Remove lint directives. Cleanup white spaces. 3437*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c: Likewise. 3438*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c: Likewise. 3439*1fd5a2e1SPrashanth Swaminathan * src/raw_api.c: Likewise. 3440*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c: Delete. No longer needed, all test cases migrated 3441*1fd5a2e1SPrashanth Swaminathan to the testsuite. 3442*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c: Remove lint directives. 3443*1fd5a2e1SPrashanth Swaminathan * src/m32r/ffi.c: Likewise. 3444*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.c: Likewise. 3445*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Likewise. 3446*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: Likewise. 3447*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c: Likewise. 3448*1fd5a2e1SPrashanth Swaminathan * src/sh64/ffi.c: Likewise. 3449*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Likewise. 3450*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float2.c: Likewise. 3451*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/promotion.c: Likewise. 3452*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct1.c: Likewise. 3453*1fd5a2e1SPrashanth Swaminathan 3454*1fd5a2e1SPrashanth Swaminathan2006-04-13 Andreas Tobler <[email protected]> 3455*1fd5a2e1SPrashanth Swaminathan 3456*1fd5a2e1SPrashanth Swaminathan * src/pa/hpux32.S: Correct unwind offset calculation for 3457*1fd5a2e1SPrashanth Swaminathan ffi_closure_pa32. 3458*1fd5a2e1SPrashanth Swaminathan * src/pa/linux.S: Likewise. 3459*1fd5a2e1SPrashanth Swaminathan 3460*1fd5a2e1SPrashanth Swaminathan2006-04-12 James E Wilson <[email protected]> 3461*1fd5a2e1SPrashanth Swaminathan 3462*1fd5a2e1SPrashanth Swaminathan PR libgcj/26483 3463*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c (stf_spill, ldf_fill): Rewrite as macros. 3464*1fd5a2e1SPrashanth Swaminathan (hfa_type_load): Call stf_spill. 3465*1fd5a2e1SPrashanth Swaminathan (hfa_type_store): Call ldf_fill. 3466*1fd5a2e1SPrashanth Swaminathan (ffi_call): Adjust calls to above routines. Add local temps for 3467*1fd5a2e1SPrashanth Swaminathan macro result. 3468*1fd5a2e1SPrashanth Swaminathan 3469*1fd5a2e1SPrashanth Swaminathan2006-04-10 Matthias Klose <[email protected]> 3470*1fd5a2e1SPrashanth Swaminathan 3471*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi-init): Recognize multilib 3472*1fd5a2e1SPrashanth Swaminathan directory names containing underscores. 3473*1fd5a2e1SPrashanth Swaminathan 3474*1fd5a2e1SPrashanth Swaminathan2006-04-07 James E Wilson <[email protected]> 3475*1fd5a2e1SPrashanth Swaminathan 3476*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float4.c: New testcase. 3477*1fd5a2e1SPrashanth Swaminathan 3478*1fd5a2e1SPrashanth Swaminathan2006-04-05 John David Anglin <[email protected]> 3479*1fd5a2e1SPrashanth Swaminathan Andreas Tobler <[email protected]> 3480*1fd5a2e1SPrashanth Swaminathan 3481*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add PA_HPUX port. 3482*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 3483*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Likewise. 3484*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Likewise. 3485*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add PA_HPUX rules. 3486*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3487*1fd5a2e1SPrashanth Swaminathan * src/pa/ffitarget.h: Rename linux target to PA_LINUX. 3488*1fd5a2e1SPrashanth Swaminathan Add PA_HPUX and PA64_HPUX. 3489*1fd5a2e1SPrashanth Swaminathan Rename FFI_LINUX ABI to FFI_PA32 ABI. 3490*1fd5a2e1SPrashanth Swaminathan (FFI_TRAMPOLINE_SIZE): Define for 32-bit HP-UX targets. 3491*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT2): Define. 3492*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT4): Likewise. 3493*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT8): Likewise. 3494*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT3): Redefine. 3495*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT5): Likewise. 3496*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT6): Likewise. 3497*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT7): Likewise. 3498*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.c (ROUND_DOWN): Delete. 3499*1fd5a2e1SPrashanth Swaminathan (fldw, fstw, fldd, fstd): Use '__asm__'. 3500*1fd5a2e1SPrashanth Swaminathan (ffi_struct_type): Add support for FFI_TYPE_SMALL_STRUCT2, 3501*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_SMALL_STRUCT4 and FFI_TYPE_SMALL_STRUCT8. 3502*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args_LINUX): Rename to ffi_prep_args_pa32. Update comment. 3503*1fd5a2e1SPrashanth Swaminathan Simplify incrementing of stack slot variable. Change type of local 3504*1fd5a2e1SPrashanth Swaminathan 'n' to unsigned int. 3505*1fd5a2e1SPrashanth Swaminathan (ffi_size_stack_LINUX): Rename to ffi_size_stack_pa32. Handle long 3506*1fd5a2e1SPrashanth Swaminathan double on PA_HPUX. 3507*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Likewise. 3508*1fd5a2e1SPrashanth Swaminathan (ffi_call): Likewise. 3509*1fd5a2e1SPrashanth Swaminathan (ffi_closure_inner_LINUX): Rename to ffi_closure_inner_pa32. Change 3510*1fd5a2e1SPrashanth Swaminathan return type to ffi_status. Simplify incrementing of stack slot 3511*1fd5a2e1SPrashanth Swaminathan variable. Only copy floating point argument registers when PA_LINUX 3512*1fd5a2e1SPrashanth Swaminathan is true. Reformat debug statement. 3513*1fd5a2e1SPrashanth Swaminathan Add support for FFI_TYPE_SMALL_STRUCT2, FFI_TYPE_SMALL_STRUCT4 and 3514*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_SMALL_STRUCT8. 3515*1fd5a2e1SPrashanth Swaminathan (ffi_closure_LINUX): Rename to ffi_closure_pa32. Add 'extern' to 3516*1fd5a2e1SPrashanth Swaminathan declaration. 3517*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Make linux trampoline conditional on PA_LINUX. 3518*1fd5a2e1SPrashanth Swaminathan Add nops to cache flush. Add trampoline for PA_HPUX. 3519*1fd5a2e1SPrashanth Swaminathan * src/pa/hpux32.S: New file. 3520*1fd5a2e1SPrashanth Swaminathan * src/pa/linux.S (ffi_call_LINUX): Rename to ffi_call_pa32. Rename 3521*1fd5a2e1SPrashanth Swaminathan ffi_prep_args_LINUX to ffi_prep_args_pa32. 3522*1fd5a2e1SPrashanth Swaminathan Localize labels. Add support for 2, 4 and 8-byte small structs. Handle 3523*1fd5a2e1SPrashanth Swaminathan unaligned destinations in 3, 5, 6 and 7-byte small structs. Order 3524*1fd5a2e1SPrashanth Swaminathan argument type checks so that common argument types appear first. 3525*1fd5a2e1SPrashanth Swaminathan (ffi_closure_LINUX): Rename to ffi_closure_pa32. Rename 3526*1fd5a2e1SPrashanth Swaminathan ffi_closure_inner_LINUX to ffi_closure_inner_pa32. 3527*1fd5a2e1SPrashanth Swaminathan 3528*1fd5a2e1SPrashanth Swaminathan2006-03-24 Alan Modra <[email protected]> 3529*1fd5a2e1SPrashanth Swaminathan 3530*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h (enum ffi_abi): Add FFI_LINUX. Default 3531*1fd5a2e1SPrashanth Swaminathan for 32-bit using IBM extended double format. Fix FFI_LAST_ABI. 3532*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args_SYSV): Handle linux variant of 3533*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_LONGDOUBLE. 3534*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args64): Assert using IBM extended double. 3535*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Don't munge FFI_TYPE_LONGDOUBLE type. 3536*1fd5a2e1SPrashanth Swaminathan Handle FFI_LINUX FFI_TYPE_LONGDOUBLE return and args. 3537*1fd5a2e1SPrashanth Swaminathan (ffi_call): Handle FFI_LINUX. 3538*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Non FFI_LINUX long double return needs 3539*1fd5a2e1SPrashanth Swaminathan gpr3 return pointer as for struct return. Handle FFI_LINUX 3540*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_LONGDOUBLE return and args. Don't increment "nf" 3541*1fd5a2e1SPrashanth Swaminathan unnecessarily. 3542*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S (ffi_closure_SYSV): Load both f1 and f2 3543*1fd5a2e1SPrashanth Swaminathan for FFI_TYPE_LONGDOUBLE. Move epilogue insns into case table. 3544*1fd5a2e1SPrashanth Swaminathan Don't use r6 as pointer to results, instead use sp offset. Don't 3545*1fd5a2e1SPrashanth Swaminathan make a special call to load lr with case table address, instead 3546*1fd5a2e1SPrashanth Swaminathan use offset from previous call. 3547*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S (ffi_call_SYSV): Save long double return. 3548*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S (ffi_call_LINUX64): Simplify long double 3549*1fd5a2e1SPrashanth Swaminathan return. 3550*1fd5a2e1SPrashanth Swaminathan 3551*1fd5a2e1SPrashanth Swaminathan2006-03-15 Kaz Kojima <[email protected]> 3552*1fd5a2e1SPrashanth Swaminathan 3553*1fd5a2e1SPrashanth Swaminathan * src/sh64/ffi.c (ffi_prep_cif_machdep): Handle float arguments 3554*1fd5a2e1SPrashanth Swaminathan passed with FP registers correctly. 3555*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Likewise. 3556*1fd5a2e1SPrashanth Swaminathan * src/sh64/sysv.S: Likewise. 3557*1fd5a2e1SPrashanth Swaminathan 3558*1fd5a2e1SPrashanth Swaminathan2006-03-01 Andreas Tobler <[email protected]> 3559*1fd5a2e1SPrashanth Swaminathan 3560*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc (closure_test_fn): Mark cif, 3561*1fd5a2e1SPrashanth Swaminathan args and userdata unused. 3562*1fd5a2e1SPrashanth Swaminathan (closure_test_fn1): Mark cif and userdata unused. 3563*1fd5a2e1SPrashanth Swaminathan (main): Remove unused res. 3564*1fd5a2e1SPrashanth Swaminathan 3565*1fd5a2e1SPrashanth Swaminathan2006-02-28 Andreas Tobler <[email protected]> 3566*1fd5a2e1SPrashanth Swaminathan 3567*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/call.exp: Adjust FSF address. Add test runs for 3568*1fd5a2e1SPrashanth Swaminathan -O2, -O3, -Os and the warning flags -W -Wall. 3569*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/special.exp: Likewise. 3570*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Add an __UNUSED__ macro to mark 3571*1fd5a2e1SPrashanth Swaminathan unused parameter unused for gcc or else do nothing. 3572*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/ffitestcxx.h: Likewise. 3573*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_12byte.c (cls_struct_12byte_gn): Mark cif 3574*1fd5a2e1SPrashanth Swaminathan and userdata unused. 3575*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_16byte.c (cls_struct_16byte_gn): Likewise. 3576*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_18byte.c (cls_struct_18byte_gn): Likewise. 3577*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_19byte.c (cls_struct_19byte_gn): Likewise. 3578*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_1_1byte.c (cls_struct_1_1byte_gn): Likewise. 3579*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte.c (cls_struct_20byte_gn): Likewise. 3580*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte1.c (cls_struct_20byte_gn): Likewise. 3581*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_24byte.c (cls_struct_24byte_gn): Likewise. 3582*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_2byte.c (cls_struct_2byte_gn): Likewise. 3583*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3_1byte.c (cls_struct_3_1byte_gn): Likewise. 3584*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte1.c (cls_struct_3byte_gn): Likewise. 3585*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte2.c (cls_struct_3byte_gn1): Likewise. 3586*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4_1byte.c (cls_struct_4_1byte_gn): Likewise. 3587*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4byte.c (cls_struct_4byte_gn): Likewise. 3588*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5_1_byte.c (cls_struct_5byte_gn): Likewise. 3589*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5byte.c (cls_struct_5byte_gn): Likewise. 3590*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_64byte.c (cls_struct_64byte_gn): Likewise. 3591*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6_1_byte.c (cls_struct_6byte_gn): Likewise. 3592*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6byte.c (cls_struct_6byte_gn): Likewise. 3593*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7_1_byte.c (cls_struct_7byte_gn): Likewise. 3594*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7byte.c (cls_struct_7byte_gn): Likewise. 3595*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_8byte.c (cls_struct_8byte_gn): Likewise. 3596*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte1.c (cls_struct_9byte_gn): Likewise. 3597*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte2.c (cls_struct_9byte_gn): Likewise. 3598*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_double.c (cls_struct_align_gn): 3599*1fd5a2e1SPrashanth Swaminathan Likewise. 3600*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_float.c (cls_struct_align_gn): 3601*1fd5a2e1SPrashanth Swaminathan Likewise. 3602*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble.c (cls_struct_align_gn): 3603*1fd5a2e1SPrashanth Swaminathan Likewise. 3604*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_pointer.c (cls_struct_align_fn): Cast 3605*1fd5a2e1SPrashanth Swaminathan void* to avoid compiler warning. 3606*1fd5a2e1SPrashanth Swaminathan (main): Likewise. 3607*1fd5a2e1SPrashanth Swaminathan (cls_struct_align_gn): Mark cif and userdata unused. 3608*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint16.c (cls_struct_align_gn): 3609*1fd5a2e1SPrashanth Swaminathan Likewise. 3610*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint32.c (cls_struct_align_gn): 3611*1fd5a2e1SPrashanth Swaminathan Likewise. 3612*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint64.c (cls_struct_align_gn): 3613*1fd5a2e1SPrashanth Swaminathan Likewise. 3614*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint16.c (cls_struct_align_gn): 3615*1fd5a2e1SPrashanth Swaminathan Likewise. 3616*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint32.c (cls_struct_align_gn): 3617*1fd5a2e1SPrashanth Swaminathan Likewise. 3618*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double.c (cls_ret_double_fn): Likewise. 3619*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_float.c (cls_ret_float_fn): Likewise. 3620*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_schar.c (test_func_gn): Mark cif and 3621*1fd5a2e1SPrashanth Swaminathan data unused. 3622*1fd5a2e1SPrashanth Swaminathan (main): Cast res_call to silence gcc. 3623*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_sshort.c (test_func_gn): Mark cif and 3624*1fd5a2e1SPrashanth Swaminathan data unused. 3625*1fd5a2e1SPrashanth Swaminathan (main): Cast res_call to silence gcc. 3626*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_sshortchar.c (test_func_gn): Mark cif 3627*1fd5a2e1SPrashanth Swaminathan and data unused. 3628*1fd5a2e1SPrashanth Swaminathan (main): Cast res_call to silence gcc. 3629*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_uchar.c (test_func_gn): Mark cif and 3630*1fd5a2e1SPrashanth Swaminathan data unused. 3631*1fd5a2e1SPrashanth Swaminathan (main): Cast res_call to silence gcc. 3632*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushort.c (test_func_gn): Mark cif and 3633*1fd5a2e1SPrashanth Swaminathan data unused. 3634*1fd5a2e1SPrashanth Swaminathan (main): Cast res_call to silence gcc. 3635*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushortchar.c (test_func_gn): Mark cif 3636*1fd5a2e1SPrashanth Swaminathan and data unused. 3637*1fd5a2e1SPrashanth Swaminathan (main): Cast res_call to silence gcc. 3638*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_schar.c (cls_ret_schar_fn): Mark cif and 3639*1fd5a2e1SPrashanth Swaminathan userdata unused. 3640*1fd5a2e1SPrashanth Swaminathan (cls_ret_schar_fn): Cast printf parameter to silence gcc. 3641*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sint.c (cls_ret_sint_fn): Mark cif and 3642*1fd5a2e1SPrashanth Swaminathan userdata unused. 3643*1fd5a2e1SPrashanth Swaminathan (cls_ret_sint_fn): Cast printf parameter to silence gcc. 3644*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sshort.c (cls_ret_sshort_fn): Mark cif and 3645*1fd5a2e1SPrashanth Swaminathan userdata unused. 3646*1fd5a2e1SPrashanth Swaminathan (cls_ret_sshort_fn): Cast printf parameter to silence gcc. 3647*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar.c (cls_ret_uchar_fn): Mark cif and 3648*1fd5a2e1SPrashanth Swaminathan userdata unused. 3649*1fd5a2e1SPrashanth Swaminathan (cls_ret_uchar_fn): Cast printf parameter to silence gcc. 3650*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c (cls_ret_uint_fn): Mark cif and 3651*1fd5a2e1SPrashanth Swaminathan userdata unused. 3652*1fd5a2e1SPrashanth Swaminathan (cls_ret_uint_fn): Cast printf parameter to silence gcc. 3653*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulonglong.c (cls_ret_ulonglong_fn): Mark cif 3654*1fd5a2e1SPrashanth Swaminathan and userdata unused. 3655*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ushort.c (cls_ret_ushort_fn): Mark cif and 3656*1fd5a2e1SPrashanth Swaminathan userdata unused. 3657*1fd5a2e1SPrashanth Swaminathan (cls_ret_ushort_fn): Cast printf parameter to silence gcc. 3658*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float.c (floating): Remove unused parameter e. 3659*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float1.c (main): Remove unused variable i. 3660*1fd5a2e1SPrashanth Swaminathan Cleanup white spaces. 3661*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/negint.c (checking): Remove unused variable i. 3662*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct.c (cls_struct_combined_gn): Mark 3663*1fd5a2e1SPrashanth Swaminathan cif and userdata unused. 3664*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct1.c (cls_struct_combined_gn): 3665*1fd5a2e1SPrashanth Swaminathan Likewise. 3666*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct10.c (B_gn): Likewise. 3667*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct2.c (B_fn): Adjust printf 3668*1fd5a2e1SPrashanth Swaminathan formatters to silence gcc. 3669*1fd5a2e1SPrashanth Swaminathan (B_gn): Mark cif and userdata unused. 3670*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct3.c (B_gn): Mark cif and userdata 3671*1fd5a2e1SPrashanth Swaminathan unused. 3672*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct4.c: Mention related PR. 3673*1fd5a2e1SPrashanth Swaminathan (B_gn): Mark cif and userdata unused. 3674*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct5.c (B_gn): Mark cif and userdata 3675*1fd5a2e1SPrashanth Swaminathan unused. 3676*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct6.c: Mention related PR. 3677*1fd5a2e1SPrashanth Swaminathan (B_gn): Mark cif and userdata unused. 3678*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct7.c (B_gn): Mark cif and userdata 3679*1fd5a2e1SPrashanth Swaminathan unused. 3680*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct8.c (B_gn): Likewise. 3681*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct9.c (B_gn): Likewise. 3682*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/problem1.c (stub): Likewise. 3683*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/pyobjc-tc.c (main): Cast the result to silence 3684*1fd5a2e1SPrashanth Swaminathan gcc. 3685*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_fl2.c (return_fl): Add the note mentioned 3686*1fd5a2e1SPrashanth Swaminathan in the last commit for this test case in the test case itself. 3687*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c (closure_test_fn0): Mark cif as 3688*1fd5a2e1SPrashanth Swaminathan unused. 3689*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn1.c (closure_test_fn1): Likewise. 3690*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn2.c (closure_test_fn2): Likewise. 3691*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn3.c (closure_test_fn3): Likewise. 3692*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn4.c (closure_test_fn0): Likewise. 3693*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn5.c (closure_test_fn5): Likewise. 3694*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn6.c (closure_test_fn0): Likewise. 3695*1fd5a2e1SPrashanth Swaminathan 3696*1fd5a2e1SPrashanth Swaminathan2006-02-22 Kaz Kojima <[email protected]> 3697*1fd5a2e1SPrashanth Swaminathan 3698*1fd5a2e1SPrashanth Swaminathan * src/sh/sysv.S: Fix register numbers in the FDE for 3699*1fd5a2e1SPrashanth Swaminathan ffi_closure_SYSV. 3700*1fd5a2e1SPrashanth Swaminathan 3701*1fd5a2e1SPrashanth Swaminathan2006-02-20 Andreas Tobler <[email protected]> 3702*1fd5a2e1SPrashanth Swaminathan 3703*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_fl2.c (return_fl): Remove static 3704*1fd5a2e1SPrashanth Swaminathan declaration to avoid a false negative on ix86. See PR323. 3705*1fd5a2e1SPrashanth Swaminathan 3706*1fd5a2e1SPrashanth Swaminathan2006-02-18 Kaz Kojima <[email protected]> 3707*1fd5a2e1SPrashanth Swaminathan 3708*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c (ffi_closure_helper_SYSV): Remove unused variable 3709*1fd5a2e1SPrashanth Swaminathan and cast integer to void * if needed. Update the pointer to 3710*1fd5a2e1SPrashanth Swaminathan the FP register saved area correctly. 3711*1fd5a2e1SPrashanth Swaminathan 3712*1fd5a2e1SPrashanth Swaminathan2006-02-17 Andreas Tobler <[email protected]> 3713*1fd5a2e1SPrashanth Swaminathan 3714*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct6.c: XFAIL this test until PR25630 3715*1fd5a2e1SPrashanth Swaminathan is fixed. 3716*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct4.c: Likewise. 3717*1fd5a2e1SPrashanth Swaminathan 3718*1fd5a2e1SPrashanth Swaminathan2006-02-16 Andreas Tobler <[email protected]> 3719*1fd5a2e1SPrashanth Swaminathan 3720*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_dbl.c: New test case. 3721*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_dbl1.c: Likewise. 3722*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_dbl2.c: Likewise. 3723*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_fl.c: Likewise. 3724*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_fl1.c: Likewise. 3725*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_fl2.c: Likewise. 3726*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_fl3.c: Likewise. 3727*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn6.c: Likewise. 3728*1fd5a2e1SPrashanth Swaminathan 3729*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct2.c: Remove ffi_type_mylong 3730*1fd5a2e1SPrashanth Swaminathan definition. 3731*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Add ffi_type_mylong definition 3732*1fd5a2e1SPrashanth Swaminathan here to be used by other test cases too. 3733*1fd5a2e1SPrashanth Swaminathan 3734*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct10.c: New test case. 3735*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct9.c: Likewise. 3736*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct8.c: Likewise. 3737*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct7.c: Likewise. 3738*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct6.c: Likewise. 3739*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct5.c: Likewise. 3740*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct4.c: Likewise. 3741*1fd5a2e1SPrashanth Swaminathan 3742*1fd5a2e1SPrashanth Swaminathan2006-01-21 Andreas Tobler <[email protected]> 3743*1fd5a2e1SPrashanth Swaminathan 3744*1fd5a2e1SPrashanth Swaminathan * configure.ac: Enable libffi for sparc64-*-freebsd*. 3745*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 3746*1fd5a2e1SPrashanth Swaminathan 3747*1fd5a2e1SPrashanth Swaminathan2006-01-18 Jakub Jelinek <[email protected]> 3748*1fd5a2e1SPrashanth Swaminathan 3749*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S (smst_two_register): Don't call __ashldi3, 3750*1fd5a2e1SPrashanth Swaminathan instead do the shifting inline. 3751*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S (ffi_closure_SYSV): Don't compute %r5 3752*1fd5a2e1SPrashanth Swaminathan shift count unconditionally. Simplify load sequences for 1, 2, 3, 4 3753*1fd5a2e1SPrashanth Swaminathan and 8 byte structs, for the remaining struct sizes don't call 3754*1fd5a2e1SPrashanth Swaminathan __lshrdi3, instead do the shifting inline. 3755*1fd5a2e1SPrashanth Swaminathan 3756*1fd5a2e1SPrashanth Swaminathan2005-12-07 Thiemo Seufer <[email protected]> 3757*1fd5a2e1SPrashanth Swaminathan 3758*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h: Remove obsolete sgidefs.h include. Add 3759*1fd5a2e1SPrashanth Swaminathan missing parentheses. 3760*1fd5a2e1SPrashanth Swaminathan * src/mips/o32.S (ffi_call_O32): Code formatting. Define 3761*1fd5a2e1SPrashanth Swaminathan and use A3_OFF, FP_OFF, RA_OFF. Micro-optimizations. 3762*1fd5a2e1SPrashanth Swaminathan (ffi_closure_O32): Likewise, but with newly defined A3_OFF2, 3763*1fd5a2e1SPrashanth Swaminathan A2_OFF2, A1_OFF2, A0_OFF2, RA_OFF2, FP_OFF2, S0_OFF2, GP_OFF2, 3764*1fd5a2e1SPrashanth Swaminathan V1_OFF2, V0_OFF2, FA_1_1_OFF2, FA_1_0_OFF2, FA_0_1_OFF2, 3765*1fd5a2e1SPrashanth Swaminathan FA_0_0_OFF2. 3766*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_prep_args): Code formatting. Fix 3767*1fd5a2e1SPrashanth Swaminathan endianness bugs. 3768*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Improve trampoline instruction scheduling. 3769*1fd5a2e1SPrashanth Swaminathan (ffi_closure_mips_inner_O32): Fix endianness bugs. 3770*1fd5a2e1SPrashanth Swaminathan 3771*1fd5a2e1SPrashanth Swaminathan2005-12-03 Alan Modra <[email protected]> 3772*1fd5a2e1SPrashanth Swaminathan 3773*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Formatting. 3774*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args_SYSV): Avoid possible aliasing problems by using unions. 3775*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args64): Likewise. 3776*1fd5a2e1SPrashanth Swaminathan 3777*1fd5a2e1SPrashanth Swaminathan2005-09-30 Geoffrey Keating <[email protected]> 3778*1fd5a2e1SPrashanth Swaminathan 3779*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi_target_compile): For 3780*1fd5a2e1SPrashanth Swaminathan darwin, use -shared-libgcc not -lgcc_s, and explain why. 3781*1fd5a2e1SPrashanth Swaminathan 3782*1fd5a2e1SPrashanth Swaminathan2005-09-26 Tom Tromey <[email protected]> 3783*1fd5a2e1SPrashanth Swaminathan 3784*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float1.c (value_type): New typedef. 3785*1fd5a2e1SPrashanth Swaminathan (CANARY): New define. 3786*1fd5a2e1SPrashanth Swaminathan (main): Check for result buffer overflow. 3787*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S: Handle linux64 long double returns. 3788*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (FLAG_RETURNS_128BITS): New constant. 3789*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Handle linux64 long double returns. 3790*1fd5a2e1SPrashanth Swaminathan 3791*1fd5a2e1SPrashanth Swaminathan2005-08-25 Alan Modra <[email protected]> 3792*1fd5a2e1SPrashanth Swaminathan 3793*1fd5a2e1SPrashanth Swaminathan PR target/23404 3794*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args_SYSV): Correct placement of stack 3795*1fd5a2e1SPrashanth Swaminathan homed fp args. 3796*1fd5a2e1SPrashanth Swaminathan (ffi_status ffi_prep_cif_machdep): Correct stack sizing for same. 3797*1fd5a2e1SPrashanth Swaminathan 3798*1fd5a2e1SPrashanth Swaminathan2005-08-11 Jakub Jelinek <[email protected]> 3799*1fd5a2e1SPrashanth Swaminathan 3800*1fd5a2e1SPrashanth Swaminathan * configure.ac (HAVE_HIDDEN_VISIBILITY_ATTRIBUTE): New test. 3801*1fd5a2e1SPrashanth Swaminathan (AH_BOTTOM): Add FFI_HIDDEN definition. 3802*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 3803*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Rebuilt. 3804*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (hidden): Remove. 3805*1fd5a2e1SPrashanth Swaminathan (ffi_closure_LINUX64, ffi_prep_args64, ffi_call_LINUX64, 3806*1fd5a2e1SPrashanth Swaminathan ffi_closure_helper_LINUX64): Use FFI_HIDDEN instead of hidden. 3807*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S (ffi_closure_LINUX64, 3808*1fd5a2e1SPrashanth Swaminathan .ffi_closure_LINUX64): Use FFI_HIDDEN instead of .hidden. 3809*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_closure_SYSV, ffi_closure_raw_SYSV): Remove, 3810*1fd5a2e1SPrashanth Swaminathan add FFI_HIDDEN to its prototype. 3811*1fd5a2e1SPrashanth Swaminathan (ffi_closure_SYSV_inner): New. 3812*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (ffi_closure_SYSV, ffi_closure_raw_SYSV): New. 3813*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (ffi_closure_SYSV, ffi_closure_raw_SYSV): New. 3814*1fd5a2e1SPrashanth Swaminathan 3815*1fd5a2e1SPrashanth Swaminathan2005-08-10 Alfred M. Szmidt <[email protected]> 3816*1fd5a2e1SPrashanth Swaminathan 3817*1fd5a2e1SPrashanth Swaminathan PR libffi/21819: 3818*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 3819*1fd5a2e1SPrashanth Swaminathan * configure.ac: Handle i*86-*-gnu*. 3820*1fd5a2e1SPrashanth Swaminathan 3821*1fd5a2e1SPrashanth Swaminathan2005-08-09 Jakub Jelinek <[email protected]> 3822*1fd5a2e1SPrashanth Swaminathan 3823*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S (ffi_closure_SYSV): Use 3824*1fd5a2e1SPrashanth Swaminathan DW_CFA_offset_extended_sf rather than 3825*1fd5a2e1SPrashanth Swaminathan DW_CFA_GNU_negative_offset_extended. 3826*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S (ffi_call_SYSV): Likewise. 3827*1fd5a2e1SPrashanth Swaminathan 3828*1fd5a2e1SPrashanth Swaminathan2005-07-22 SUGIOKA Toshinobu <[email protected]> 3829*1fd5a2e1SPrashanth Swaminathan 3830*1fd5a2e1SPrashanth Swaminathan * src/sh/sysv.S (ffi_call_SYSV): Stop argument popping correctly 3831*1fd5a2e1SPrashanth Swaminathan on sh3. 3832*1fd5a2e1SPrashanth Swaminathan (ffi_closure_SYSV): Change the stack layout for sh3 struct argument. 3833*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c (ffi_prep_args): Fix sh3 argument copy, when it is 3834*1fd5a2e1SPrashanth Swaminathan partially on register. 3835*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Likewise. 3836*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Don't set too many cif->flags. 3837*1fd5a2e1SPrashanth Swaminathan 3838*1fd5a2e1SPrashanth Swaminathan2005-07-20 Kaz Kojima <[email protected]> 3839*1fd5a2e1SPrashanth Swaminathan 3840*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c (ffi_call): Handle small structures correctly. 3841*1fd5a2e1SPrashanth Swaminathan Remove empty line. 3842*1fd5a2e1SPrashanth Swaminathan * src/sh64/ffi.c (simple_type): Remove. 3843*1fd5a2e1SPrashanth Swaminathan (return_type): Handle small structures correctly. 3844*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args): Likewise. 3845*1fd5a2e1SPrashanth Swaminathan (ffi_call): Likewise. 3846*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Likewise. 3847*1fd5a2e1SPrashanth Swaminathan * src/sh64/sysv.S (ffi_call_SYSV): Handle 1, 2 and 4-byte return. 3848*1fd5a2e1SPrashanth Swaminathan Emit position independent code if PIC and remove wrong datalabel 3849*1fd5a2e1SPrashanth Swaminathan prefixes from EH data. 3850*1fd5a2e1SPrashanth Swaminathan 3851*1fd5a2e1SPrashanth Swaminathan2005-07-19 Andreas Tobler <[email protected]> 3852*1fd5a2e1SPrashanth Swaminathan 3853*1fd5a2e1SPrashanth Swaminathan * Makefile.am (nodist_libffi_la_SOURCES): Add POWERPC_FREEBSD. 3854*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 3855*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Likewise. 3856*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Likewise. 3857*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add POWERPC_FREEBSD rules. 3858*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3859*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h: Add POWERPC_FREEBSD rules. 3860*1fd5a2e1SPrashanth Swaminathan (FFI_SYSV_TYPE_SMALL_STRUCT): Define. 3861*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Add flags to handle small structure returns 3862*1fd5a2e1SPrashanth Swaminathan in ffi_call_SYSV. 3863*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Handle small structures for SYSV 4 ABI. 3864*1fd5a2e1SPrashanth Swaminathan Aka FFI_SYSV. 3865*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Likewise. 3866*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Add return types for small structures. 3867*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Add bits to handle small structures for 3868*1fd5a2e1SPrashanth Swaminathan final SYSV 4 ABI. 3869*1fd5a2e1SPrashanth Swaminathan 3870*1fd5a2e1SPrashanth Swaminathan2005-07-10 Andreas Tobler <[email protected]> 3871*1fd5a2e1SPrashanth Swaminathan 3872*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5_1_byte.c: New test file. 3873*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6_1_byte.c: Likewise. 3874*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7_1_byte.c: Likewise. 3875*1fd5a2e1SPrashanth Swaminathan 3876*1fd5a2e1SPrashanth Swaminathan2005-07-05 Randolph Chung <[email protected]> 3877*1fd5a2e1SPrashanth Swaminathan 3878*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.c (ffi_struct_type): Rename FFI_TYPE_SMALL_STRUCT1 3879*1fd5a2e1SPrashanth Swaminathan as FFI_TYPE_SMALL_STRUCT3. Break out handling for 5-7 byte 3880*1fd5a2e1SPrashanth Swaminathan structures. Kill compilation warnings. 3881*1fd5a2e1SPrashanth Swaminathan (ffi_closure_inner_LINUX): Print return values as hex in debug 3882*1fd5a2e1SPrashanth Swaminathan message. Rename FFI_TYPE_SMALL_STRUCT1 as FFI_TYPE_SMALL_STRUCT3. 3883*1fd5a2e1SPrashanth Swaminathan Properly handle 5-7 byte structure returns. 3884*1fd5a2e1SPrashanth Swaminathan * src/pa/ffitarget.h (FFI_TYPE_SMALL_STRUCT1) 3885*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT2): Remove. 3886*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT3, FFI_TYPE_SMALL_STRUCT5) 3887*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_SMALL_STRUCT6, FFI_TYPE_SMALL_STRUCT7): Define. 3888*1fd5a2e1SPrashanth Swaminathan * src/pa/linux.S: Mark source file as using PA1.1 assembly. 3889*1fd5a2e1SPrashanth Swaminathan (checksmst1, checksmst2): Remove. 3890*1fd5a2e1SPrashanth Swaminathan (checksmst3): Optimize handling of 3-byte struct returns. 3891*1fd5a2e1SPrashanth Swaminathan (checksmst567): Properly handle 5-7 byte struct returns. 3892*1fd5a2e1SPrashanth Swaminathan 3893*1fd5a2e1SPrashanth Swaminathan2005-06-15 Rainer Orth <[email protected]> 3894*1fd5a2e1SPrashanth Swaminathan 3895*1fd5a2e1SPrashanth Swaminathan PR libgcj/21943 3896*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S: Enforce PIC code. 3897*1fd5a2e1SPrashanth Swaminathan * src/mips/o32.S: Likewise. 3898*1fd5a2e1SPrashanth Swaminathan 3899*1fd5a2e1SPrashanth Swaminathan2005-06-15 Rainer Orth <[email protected]> 3900*1fd5a2e1SPrashanth Swaminathan 3901*1fd5a2e1SPrashanth Swaminathan * configure.ac: Treat i*86-*-solaris2.10 and up as X86_64. 3902*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3903*1fd5a2e1SPrashanth Swaminathan 3904*1fd5a2e1SPrashanth Swaminathan2005-06-01 Alan Modra <[email protected]> 3905*1fd5a2e1SPrashanth Swaminathan 3906*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S (ffi_closure_SYSV): Don't use JUMPTARGET 3907*1fd5a2e1SPrashanth Swaminathan to call ffi_closure_helper_SYSV. Append @local instead. 3908*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S (ffi_call_SYSV): Likewise for ffi_prep_args_SYSV. 3909*1fd5a2e1SPrashanth Swaminathan 3910*1fd5a2e1SPrashanth Swaminathan2005-05-17 Kelley Cook <[email protected]> 3911*1fd5a2e1SPrashanth Swaminathan 3912*1fd5a2e1SPrashanth Swaminathan * configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS. 3913*1fd5a2e1SPrashanth Swaminathan Use AC_CHECK_SIZEOF instead of AC_COMPILE_CHECK_SIZEOF. 3914*1fd5a2e1SPrashanth Swaminathan * Makefile.am (ACLOCAL_AMFLAGS): Remove -I ../config. 3915*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, configure, fficonfig.h.in, Makefile.in, 3916*1fd5a2e1SPrashanth Swaminathan include/Makefile.in, testsuite/Makefile.in: Regenerate. 3917*1fd5a2e1SPrashanth Swaminathan 3918*1fd5a2e1SPrashanth Swaminathan2005-05-09 Mike Stump <[email protected]> 3919*1fd5a2e1SPrashanth Swaminathan 3920*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3921*1fd5a2e1SPrashanth Swaminathan 3922*1fd5a2e1SPrashanth Swaminathan2005-05-08 Richard Henderson <[email protected]> 3923*1fd5a2e1SPrashanth Swaminathan 3924*1fd5a2e1SPrashanth Swaminathan PR libffi/21285 3925*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S: Update unwind into to match code. 3926*1fd5a2e1SPrashanth Swaminathan 3927*1fd5a2e1SPrashanth Swaminathan2005-05-04 Andreas Degert <[email protected]> 3928*1fd5a2e1SPrashanth Swaminathan Richard Henderson <[email protected]> 3929*1fd5a2e1SPrashanth Swaminathan 3930*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (ffi_prep_cif_machdep): Save sse-used flag in 3931*1fd5a2e1SPrashanth Swaminathan bit 11 of flags. 3932*1fd5a2e1SPrashanth Swaminathan (ffi_call): Mask return type field. Pass ssecount to ffi_call_unix64. 3933*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Set carry bit if sse-used flag set. 3934*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S (ffi_call_unix64): Add ssecount argument. 3935*1fd5a2e1SPrashanth Swaminathan Only load sse registers if ssecount non-zero. 3936*1fd5a2e1SPrashanth Swaminathan (ffi_closure_unix64): Only save sse registers if carry set on entry. 3937*1fd5a2e1SPrashanth Swaminathan 3938*1fd5a2e1SPrashanth Swaminathan2005-04-29 Ralf Corsepius <[email protected]> 3939*1fd5a2e1SPrashanth Swaminathan 3940*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add i*86-*-rtems*, sparc*-*-rtems*, 3941*1fd5a2e1SPrashanth Swaminathan powerpc-*rtems*, arm*-*-rtems*, sh-*-rtems*. 3942*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3943*1fd5a2e1SPrashanth Swaminathan 3944*1fd5a2e1SPrashanth Swaminathan2005-04-20 Hans-Peter Nilsson <[email protected]> 3945*1fd5a2e1SPrashanth Swaminathan 3946*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi-dg-test-1): In regsub use, 3947*1fd5a2e1SPrashanth Swaminathan have Tcl8.3-compatible intermediate variable. 3948*1fd5a2e1SPrashanth Swaminathan 3949*1fd5a2e1SPrashanth Swaminathan2005-04-18 Simon Posnjak <[email protected]> 3950*1fd5a2e1SPrashanth Swaminathan Hans-Peter Nilsson <[email protected]> 3951*1fd5a2e1SPrashanth Swaminathan 3952*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add CRIS support. 3953*1fd5a2e1SPrashanth Swaminathan * configure.ac: Likewise. 3954*1fd5a2e1SPrashanth Swaminathan * Makefile.in, configure, testsuite/Makefile.in, 3955*1fd5a2e1SPrashanth Swaminathan include/Makefile.in: Regenerate. 3956*1fd5a2e1SPrashanth Swaminathan * src/cris: New directory. 3957*1fd5a2e1SPrashanth Swaminathan * src/cris/ffi.c, src/cris/sysv.S, src/cris/ffitarget.h: New files. 3958*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif): Wrap in #ifndef __CRIS__. 3959*1fd5a2e1SPrashanth Swaminathan 3960*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi-dg-test-1): Replace \n with 3961*1fd5a2e1SPrashanth Swaminathan \r?\n in output tests. 3962*1fd5a2e1SPrashanth Swaminathan 3963*1fd5a2e1SPrashanth Swaminathan2005-04-12 Mike Stump <[email protected]> 3964*1fd5a2e1SPrashanth Swaminathan 3965*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 3966*1fd5a2e1SPrashanth Swaminathan 3967*1fd5a2e1SPrashanth Swaminathan2005-03-30 Hans Boehm <[email protected]> 3968*1fd5a2e1SPrashanth Swaminathan 3969*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffitarget.h (ffi_arg): Use long long instead of DI. 3970*1fd5a2e1SPrashanth Swaminathan 3971*1fd5a2e1SPrashanth Swaminathan2005-03-30 Steve Ellcey <[email protected]> 3972*1fd5a2e1SPrashanth Swaminathan 3973*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffitarget.h (ffi_arg) ADD DI attribute. 3974*1fd5a2e1SPrashanth Swaminathan (ffi_sarg) Ditto. 3975*1fd5a2e1SPrashanth Swaminathan * src/ia64/unix.S (ffi_closure_unix): Extend gp 3976*1fd5a2e1SPrashanth Swaminathan to 64 bits in ILP32 mode. 3977*1fd5a2e1SPrashanth Swaminathan Load 64 bits even for short data. 3978*1fd5a2e1SPrashanth Swaminathan 3979*1fd5a2e1SPrashanth Swaminathan2005-03-23 Mike Stump <[email protected]> 3980*1fd5a2e1SPrashanth Swaminathan 3981*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Update for -m64 multilib. 3982*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Likewise. 3983*1fd5a2e1SPrashanth Swaminathan 3984*1fd5a2e1SPrashanth Swaminathan2005-03-21 Zack Weinberg <[email protected]> 3985*1fd5a2e1SPrashanth Swaminathan 3986*1fd5a2e1SPrashanth Swaminathan * configure.ac: Do not invoke TL_AC_GCC_VERSION. 3987*1fd5a2e1SPrashanth Swaminathan Do not set tool_include_dir. 3988*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, configure, Makefile.in, testsuite/Makefile.in: 3989*1fd5a2e1SPrashanth Swaminathan Regenerate. 3990*1fd5a2e1SPrashanth Swaminathan * include/Makefile.am: Set gcc_version and toollibffidir. 3991*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 3992*1fd5a2e1SPrashanth Swaminathan 3993*1fd5a2e1SPrashanth Swaminathan2005-02-22 Andrew Haley <[email protected]> 3994*1fd5a2e1SPrashanth Swaminathan 3995*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_cif_machdep): Bump alignment to 3996*1fd5a2e1SPrashanth Swaminathan odd-numbered register pairs for 64-bit integer types. 3997*1fd5a2e1SPrashanth Swaminathan 3998*1fd5a2e1SPrashanth Swaminathan2005-02-23 Andreas Tobler <[email protected]> 3999*1fd5a2e1SPrashanth Swaminathan 4000*1fd5a2e1SPrashanth Swaminathan PR libffi/20104 4001*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_ll1.c: New test case. 4002*1fd5a2e1SPrashanth Swaminathan 4003*1fd5a2e1SPrashanth Swaminathan2005-02-11 Janis Johnson <[email protected]> 4004*1fd5a2e1SPrashanth Swaminathan 4005*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble.c: Remove dg-options. 4006*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float.c: Ditto. 4007*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float2.c: Ditto. 4008*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float3.c: Ditto. 4009*1fd5a2e1SPrashanth Swaminathan 4010*1fd5a2e1SPrashanth Swaminathan2005-02-08 Andreas Tobler <[email protected]> 4011*1fd5a2e1SPrashanth Swaminathan 4012*1fd5a2e1SPrashanth Swaminathan * src/frv/ffitarget.h: Remove PPC stuff which does not belong to frv. 4013*1fd5a2e1SPrashanth Swaminathan 4014*1fd5a2e1SPrashanth Swaminathan2005-01-12 Eric Botcazou <[email protected]> 4015*1fd5a2e1SPrashanth Swaminathan 4016*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/special.exp (cxx_options): Add 4017*1fd5a2e1SPrashanth Swaminathan -shared-libgcc. 4018*1fd5a2e1SPrashanth Swaminathan 4019*1fd5a2e1SPrashanth Swaminathan2004-12-31 Richard Henderson <[email protected]> 4020*1fd5a2e1SPrashanth Swaminathan 4021*1fd5a2e1SPrashanth Swaminathan * src/types.c (FFI_AGGREGATE_TYPEDEF): Remove. 4022*1fd5a2e1SPrashanth Swaminathan (FFI_TYPEDEF): Rename from FFI_INTEGRAL_TYPEDEF. Replace size and 4023*1fd5a2e1SPrashanth Swaminathan offset parameters with a type parameter; deduce size and structure 4024*1fd5a2e1SPrashanth Swaminathan alignment. Update all users. 4025*1fd5a2e1SPrashanth Swaminathan 4026*1fd5a2e1SPrashanth Swaminathan2004-12-31 Richard Henderson <[email protected]> 4027*1fd5a2e1SPrashanth Swaminathan 4028*1fd5a2e1SPrashanth Swaminathan * src/types.c (FFI_TYPE_POINTER): Define with sizeof. 4029*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_LONGDOUBLE): Fix for ia64. 4030*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffitarget.h (struct ffi_ia64_trampoline_struct): Move 4031*1fd5a2e1SPrashanth Swaminathan into ffi_prep_closure. 4032*1fd5a2e1SPrashanth Swaminathan * src/ia64/ia64_flags.h, src/ia64/ffi.c, src/ia64/unix.S: Rewrite 4033*1fd5a2e1SPrashanth Swaminathan from scratch. 4034*1fd5a2e1SPrashanth Swaminathan 4035*1fd5a2e1SPrashanth Swaminathan2004-12-27 Richard Henderson <[email protected]> 4036*1fd5a2e1SPrashanth Swaminathan 4037*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S: Fix typo in unwind info. 4038*1fd5a2e1SPrashanth Swaminathan 4039*1fd5a2e1SPrashanth Swaminathan2004-12-25 Richard Henderson <[email protected]> 4040*1fd5a2e1SPrashanth Swaminathan 4041*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (struct register_args): Rename from stackLayout. 4042*1fd5a2e1SPrashanth Swaminathan (enum x86_64_reg_class): Add X86_64_COMPLEX_X87_CLASS. 4043*1fd5a2e1SPrashanth Swaminathan (merge_classes): Check for it. 4044*1fd5a2e1SPrashanth Swaminathan (SSE_CLASS_P): New. 4045*1fd5a2e1SPrashanth Swaminathan (classify_argument): Pass byte_offset by value; perform all updates 4046*1fd5a2e1SPrashanth Swaminathan inside struct case. 4047*1fd5a2e1SPrashanth Swaminathan (examine_argument): Add classes argument; handle 4048*1fd5a2e1SPrashanth Swaminathan X86_64_COMPLEX_X87_CLASS. 4049*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args): Merge into ... 4050*1fd5a2e1SPrashanth Swaminathan (ffi_call): ... here. Share stack frame with ffi_call_unix64. 4051*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Setup cif->flags for proper structure return. 4052*1fd5a2e1SPrashanth Swaminathan (ffi_fill_return_value): Remove. 4053*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Remove dead assert. 4054*1fd5a2e1SPrashanth Swaminathan (ffi_closure_unix64_inner): Rename from ffi_closure_UNIX64_inner. 4055*1fd5a2e1SPrashanth Swaminathan Rewrite to use struct register_args instead of va_list. Create 4056*1fd5a2e1SPrashanth Swaminathan flags for handling structure returns. 4057*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S: Remove dead strings. 4058*1fd5a2e1SPrashanth Swaminathan (ffi_call_unix64): Rename from ffi_call_UNIX64. Rewrite to share 4059*1fd5a2e1SPrashanth Swaminathan stack frame with ffi_call. Handle structure returns properly. 4060*1fd5a2e1SPrashanth Swaminathan (float2sse, floatfloat2sse, double2sse): Remove. 4061*1fd5a2e1SPrashanth Swaminathan (sse2float, sse2double, sse2floatfloat): Remove. 4062*1fd5a2e1SPrashanth Swaminathan (ffi_closure_unix64): Rename from ffi_closure_UNIX64. Rewrite 4063*1fd5a2e1SPrashanth Swaminathan to handle structure returns properly. 4064*1fd5a2e1SPrashanth Swaminathan 4065*1fd5a2e1SPrashanth Swaminathan2004-12-08 David Edelsohn <[email protected]> 4066*1fd5a2e1SPrashanth Swaminathan 4067*1fd5a2e1SPrashanth Swaminathan * Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and 4068*1fd5a2e1SPrashanth Swaminathan PICFLAG. 4069*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerated. 4070*1fd5a2e1SPrashanth Swaminathan 4071*1fd5a2e1SPrashanth Swaminathan2004-12-02 Richard Sandiford <[email protected]> 4072*1fd5a2e1SPrashanth Swaminathan 4073*1fd5a2e1SPrashanth Swaminathan * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version. 4074*1fd5a2e1SPrashanth Swaminathan * configure, aclocal.m4, Makefile.in: Regenerate. 4075*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in, testsuite/Makefile.in: Regenerate. 4076*1fd5a2e1SPrashanth Swaminathan 4077*1fd5a2e1SPrashanth Swaminathan2004-11-29 Kelley Cook <[email protected]> 4078*1fd5a2e1SPrashanth Swaminathan 4079*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate for libtool change. 4080*1fd5a2e1SPrashanth Swaminathan 4081*1fd5a2e1SPrashanth Swaminathan2004-11-25 Kelley Cook <[email protected]> 4082*1fd5a2e1SPrashanth Swaminathan 4083*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate for libtool reversion. 4084*1fd5a2e1SPrashanth Swaminathan 4085*1fd5a2e1SPrashanth Swaminathan2004-11-24 Kelley Cook <[email protected]> 4086*1fd5a2e1SPrashanth Swaminathan 4087*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate for libtool change. 4088*1fd5a2e1SPrashanth Swaminathan 4089*1fd5a2e1SPrashanth Swaminathan2004-11-23 John David Anglin <[email protected]> 4090*1fd5a2e1SPrashanth Swaminathan 4091*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Use new procs in target-libpath.exp. 4092*1fd5a2e1SPrashanth Swaminathan 4093*1fd5a2e1SPrashanth Swaminathan2004-11-23 Richard Sandiford <[email protected]> 4094*1fd5a2e1SPrashanth Swaminathan 4095*1fd5a2e1SPrashanth Swaminathan * src/mips/o32.S (ffi_call_O32, ffi_closure_O32): Use jalr instead 4096*1fd5a2e1SPrashanth Swaminathan of jal. Use an absolute encoding for the frame information. 4097*1fd5a2e1SPrashanth Swaminathan 4098*1fd5a2e1SPrashanth Swaminathan2004-11-23 Kelley Cook <[email protected]> 4099*1fd5a2e1SPrashanth Swaminathan 4100*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Remove no-dependencies. Add ACLOCAL_AMFLAGS. 4101*1fd5a2e1SPrashanth Swaminathan * acinclude.m4: Delete logic for sincludes. 4102*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, Makefile.in, configure: Regenerate. 4103*1fd5a2e1SPrashanth Swaminathan * include/Makefile: Likewise. 4104*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile: Likewise. 4105*1fd5a2e1SPrashanth Swaminathan 4106*1fd5a2e1SPrashanth Swaminathan2004-11-22 Eric Botcazou <[email protected]> 4107*1fd5a2e1SPrashanth Swaminathan 4108*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_closure): Align doubles and 64-bit integers 4109*1fd5a2e1SPrashanth Swaminathan on a 8-byte boundary. 4110*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S (ffi_closure_v8): Reserve frame space for arguments. 4111*1fd5a2e1SPrashanth Swaminathan 4112*1fd5a2e1SPrashanth Swaminathan2004-10-27 Richard Earnshaw <[email protected]> 4113*1fd5a2e1SPrashanth Swaminathan 4114*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_prep_cif_machdep): Handle functions that return 4115*1fd5a2e1SPrashanth Swaminathan long long values. Round stack allocation to a multiple of 8 bytes 4116*1fd5a2e1SPrashanth Swaminathan for ATPCS compatibility. 4117*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S (ffi_call_SYSV): Rework to avoid use of APCS register 4118*1fd5a2e1SPrashanth Swaminathan names. Handle returning long long types. Add Thumb and interworking 4119*1fd5a2e1SPrashanth Swaminathan support. Improve soft-float code. 4120*1fd5a2e1SPrashanth Swaminathan 4121*1fd5a2e1SPrashanth Swaminathan2004-10-27 Richard Earnshaw <[email protected]> 4122*1fd5a2e1SPrashanth Swaminathan 4123*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-db.exp (load_gcc_lib): New function. 4124*1fd5a2e1SPrashanth Swaminathan (libffi_exit): New function. 4125*1fd5a2e1SPrashanth Swaminathan (libffi_init): Build the testglue wrapper if needed. 4126*1fd5a2e1SPrashanth Swaminathan 4127*1fd5a2e1SPrashanth Swaminathan2004-10-25 Eric Botcazou <[email protected]> 4128*1fd5a2e1SPrashanth Swaminathan 4129*1fd5a2e1SPrashanth Swaminathan PR other/18138 4130*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Accept more than one multilib libgcc. 4131*1fd5a2e1SPrashanth Swaminathan 4132*1fd5a2e1SPrashanth Swaminathan2004-10-25 Kazuhiro Inaoka <[email protected]> 4133*1fd5a2e1SPrashanth Swaminathan 4134*1fd5a2e1SPrashanth Swaminathan * src/m32r/libffitarget.h (FFI_CLOSURES): Set to 0. 4135*1fd5a2e1SPrashanth Swaminathan 4136*1fd5a2e1SPrashanth Swaminathan2004-10-20 Kaz Kojima <[email protected]> 4137*1fd5a2e1SPrashanth Swaminathan 4138*1fd5a2e1SPrashanth Swaminathan * src/sh/sysv.S (ffi_call_SYSV): Don't align for double data. 4139*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float3.c: New test case. 4140*1fd5a2e1SPrashanth Swaminathan 4141*1fd5a2e1SPrashanth Swaminathan2004-10-18 Kaz Kojima <[email protected]> 4142*1fd5a2e1SPrashanth Swaminathan 4143*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c (ffi_prep_closure): Set T bit in trampoline for 4144*1fd5a2e1SPrashanth Swaminathan the function returning a structure pointed with R2. 4145*1fd5a2e1SPrashanth Swaminathan * src/sh/sysv.S (ffi_closure_SYSV): Use R2 as the pointer to 4146*1fd5a2e1SPrashanth Swaminathan the structure return value if T bit set. Emit position 4147*1fd5a2e1SPrashanth Swaminathan independent code and EH data if PIC. 4148*1fd5a2e1SPrashanth Swaminathan 4149*1fd5a2e1SPrashanth Swaminathan2004-10-13 Kazuhiro Inaoka <[email protected]> 4150*1fd5a2e1SPrashanth Swaminathan 4151*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add m32r support. 4152*1fd5a2e1SPrashanth Swaminathan * configure.ac: Likewise. 4153*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 4154*1fd5a2e1SPrashanth Swaminathan * confiugre: Regenerate. 4155*1fd5a2e1SPrashanth Swaminathan * src/types.c: Add m32r port to FFI_INTERNAL_TYPEDEF 4156*1fd5a2e1SPrashanth Swaminathan (uint64, sint64, double, longdouble) 4157*1fd5a2e1SPrashanth Swaminathan * src/m32r: New directory. 4158*1fd5a2e1SPrashanth Swaminathan * src/m32r/ffi.c: New file. 4159*1fd5a2e1SPrashanth Swaminathan * src/m32r/sysv.S: Likewise. 4160*1fd5a2e1SPrashanth Swaminathan * src/m32r/ffitarget.h: Likewise. 4161*1fd5a2e1SPrashanth Swaminathan 4162*1fd5a2e1SPrashanth Swaminathan2004-10-02 Kaz Kojima <[email protected]> 4163*1fd5a2e1SPrashanth Swaminathan 4164*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/negint.c: New test case. 4165*1fd5a2e1SPrashanth Swaminathan 4166*1fd5a2e1SPrashanth Swaminathan2004-09-14 H.J. Lu <[email protected]> 4167*1fd5a2e1SPrashanth Swaminathan 4168*1fd5a2e1SPrashanth Swaminathan PR libgcj/17465 4169*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Don't use global ld_library_path. 4170*1fd5a2e1SPrashanth Swaminathan Set up LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH, 4171*1fd5a2e1SPrashanth Swaminathan LD_LIBRARY64_PATH, LD_LIBRARY_PATH_32, LD_LIBRARY_PATH_64 and 4172*1fd5a2e1SPrashanth Swaminathan DYLD_LIBRARY_PATH. 4173*1fd5a2e1SPrashanth Swaminathan 4174*1fd5a2e1SPrashanth Swaminathan2004-09-05 Andreas Tobler <[email protected]> 4175*1fd5a2e1SPrashanth Swaminathan 4176*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many_win32.c: Remove whitespaces. 4177*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/promotion.c: Likewise. 4178*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_ll.c: Remove unused var. Cleanup 4179*1fd5a2e1SPrashanth Swaminathan whitespaces. 4180*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_sc.c: Likewise. 4181*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_uc.c: Likewise. 4182*1fd5a2e1SPrashanth Swaminathan 4183*1fd5a2e1SPrashanth Swaminathan2004-09-05 Andreas Tobler <[email protected]> 4184*1fd5a2e1SPrashanth Swaminathan 4185*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Fix comments and identation. 4186*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Likewise. 4187*1fd5a2e1SPrashanth Swaminathan 4188*1fd5a2e1SPrashanth Swaminathan2004-09-02 Andreas Tobler <[email protected]> 4189*1fd5a2e1SPrashanth Swaminathan 4190*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: Add flag for longdouble return values. 4191*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args): Handle longdouble arguments. 4192*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Set flags for longdouble. Calculate space for 4193*1fd5a2e1SPrashanth Swaminathan longdouble. 4194*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_DARWIN): Add closure handling for longdouble. 4195*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S (_ffi_call_DARWIN): Add handling of longdouble 4196*1fd5a2e1SPrashanth Swaminathan values. 4197*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S (_ffi_closure_ASM): Likewise. 4198*1fd5a2e1SPrashanth Swaminathan * src/types.c: Defined longdouble size and alignment for darwin. 4199*1fd5a2e1SPrashanth Swaminathan 4200*1fd5a2e1SPrashanth Swaminathan2004-09-02 Andreas Tobler <[email protected]> 4201*1fd5a2e1SPrashanth Swaminathan 4202*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S: Remove whitespaces. 4203*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: Likewise. 4204*1fd5a2e1SPrashanth Swaminathan * src/powerpc/asm.h: Likewise. 4205*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c: Likewise. 4206*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffitarget.h: Likewise. 4207*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S: Likewise. 4208*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S: Likewise. 4209*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Likewise. 4210*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Likewise. 4211*1fd5a2e1SPrashanth Swaminathan 4212*1fd5a2e1SPrashanth Swaminathan2004-08-30 Anthony Green <[email protected]> 4213*1fd5a2e1SPrashanth Swaminathan 4214*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add frv support. 4215*1fd5a2e1SPrashanth Swaminathan * Makefile.in, testsuite/Makefile.in: Rebuilt. 4216*1fd5a2e1SPrashanth Swaminathan * configure.ac: Read configure.host. 4217*1fd5a2e1SPrashanth Swaminathan * configure.in: Read configure.host. 4218*1fd5a2e1SPrashanth Swaminathan * configure.host: New file. frv-elf needs libgloss. 4219*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Force ffi_closure to have a nice big (8) 4220*1fd5a2e1SPrashanth Swaminathan alignment. This is needed to frv and shouldn't harm the others. 4221*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h (ALIGN_DOWN): New macro. 4222*1fd5a2e1SPrashanth Swaminathan * src/frv/ffi.c, src/frv/ffitarget.h, src/frv/eabi.S: New files. 4223*1fd5a2e1SPrashanth Swaminathan 4224*1fd5a2e1SPrashanth Swaminathan2004-08-24 David Daney <[email protected]> 4225*1fd5a2e1SPrashanth Swaminathan 4226*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c: Xfail mips64* instead of mips*. 4227*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn1.c: Likewise. 4228*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn2.c Likewise. 4229*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn3.c: Likewise. 4230*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn4.c: Likewise. 4231*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn5.c: Likewise. 4232*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_18byte.c: Likewise. 4233*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_19byte.c: Likewise. 4234*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_1_1byte.c: Likewise. 4235*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte.c: Likewise. 4236*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte1.c: Likewise. 4237*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_24byte.c: Likewise. 4238*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_2byte.c: Likewise. 4239*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3_1byte.c: Likewise. 4240*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte1.c: Likewise. 4241*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte2.c: Likewise. 4242*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4_1byte.c: Likewise. 4243*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4byte.c: Likewise. 4244*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_64byte.c: Likewise. 4245*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6byte.c: Likewise. 4246*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7byte.c: Likewise. 4247*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_8byte.c: Likewise. 4248*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte1.c: Likewise. 4249*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte2.c: Likewise. 4250*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_double.c: Likewise. 4251*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_float.c: Likewise. 4252*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble.c: Likewise. 4253*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_pointer.c: Likewise. 4254*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint16.c: Likewise. 4255*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint32.c: Likewise. 4256*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint64.c: Likewise. 4257*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint16.c: Likewise. 4258*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint32.c: Likewise. 4259*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint64.c: Likewise. 4260*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double.c: Likewise. 4261*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_float.c: Likewise. 4262*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_schar.c: Likewise. 4263*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_sshort.c: Likewise. 4264*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_sshortchar.c: Likewise. 4265*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_uchar.c: Likewise. 4266*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushort.c: Likewise. 4267*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushortchar.c: Likewise. 4268*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_schar.c: Likewise. 4269*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sint.c: Likewise. 4270*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sshort.c: Likewise. 4271*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar.c: Likewise. 4272*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c: Likewise. 4273*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulonglong.c: Likewise. 4274*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ushort.c: Likewise. 4275*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct.c: Likewise. 4276*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct1.c: Likewise. 4277*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct2.c: Likewise. 4278*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct3.c: Likewise. 4279*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/problem1.c: Likewise. 4280*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc: Likewise. 4281*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_12byte.c: Likewise and set return value 4282*1fd5a2e1SPrashanth Swaminathan to zero. 4283*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_16byte.c: Likewise. 4284*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5byte.c: Likewise. 4285*1fd5a2e1SPrashanth Swaminathan 4286*1fd5a2e1SPrashanth Swaminathan2004-08-23 David Daney <[email protected]> 4287*1fd5a2e1SPrashanth Swaminathan 4288*1fd5a2e1SPrashanth Swaminathan PR libgcj/13141 4289*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h (FFI_O32_SOFT_FLOAT): New ABI. 4290*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_prep_args): Fix alignment calculation. 4291*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Handle FFI_O32_SOFT_FLOAT floating point 4292*1fd5a2e1SPrashanth Swaminathan parameters and return types. 4293*1fd5a2e1SPrashanth Swaminathan (ffi_call): Handle FFI_O32_SOFT_FLOAT ABI. 4294*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Ditto. 4295*1fd5a2e1SPrashanth Swaminathan (ffi_closure_mips_inner_O32): Handle FFI_O32_SOFT_FLOAT ABI, fix 4296*1fd5a2e1SPrashanth Swaminathan alignment calculations. 4297*1fd5a2e1SPrashanth Swaminathan * src/mips/o32.S (ffi_closure_O32): Don't use floating point 4298*1fd5a2e1SPrashanth Swaminathan instructions if FFI_O32_SOFT_FLOAT, make stack frame ABI compliant. 4299*1fd5a2e1SPrashanth Swaminathan 4300*1fd5a2e1SPrashanth Swaminathan2004-08-14 Casey Marshall <[email protected]> 4301*1fd5a2e1SPrashanth Swaminathan 4302*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_pref_cif_machdep): set `cif->flags' to 4303*1fd5a2e1SPrashanth Swaminathan contain `FFI_TYPE_UINT64' as return type for any 64-bit 4304*1fd5a2e1SPrashanth Swaminathan integer (O32 ABI only). 4305*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): new function. 4306*1fd5a2e1SPrashanth Swaminathan (ffi_closure_mips_inner_O32): new function. 4307*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h: Define `FFI_CLOSURES' and 4308*1fd5a2e1SPrashanth Swaminathan `FFI_TRAMPOLINE_SIZE' appropriately if the ABI is o32. 4309*1fd5a2e1SPrashanth Swaminathan * src/mips/o32.S (ffi_call_O32): add labels for .eh_frame. Return 4310*1fd5a2e1SPrashanth Swaminathan 64 bit integers correctly. 4311*1fd5a2e1SPrashanth Swaminathan (ffi_closure_O32): new function. 4312*1fd5a2e1SPrashanth Swaminathan Added DWARF-2 unwind info for both functions. 4313*1fd5a2e1SPrashanth Swaminathan 4314*1fd5a2e1SPrashanth Swaminathan2004-08-10 Andrew Haley <[email protected]> 4315*1fd5a2e1SPrashanth Swaminathan 4316*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (ffi_prep_args ): 8-align all stack arguments. 4317*1fd5a2e1SPrashanth Swaminathan 4318*1fd5a2e1SPrashanth Swaminathan2004-08-01 Robert Millan <[email protected]> 4319*1fd5a2e1SPrashanth Swaminathan 4320*1fd5a2e1SPrashanth Swaminathan * configure.ac: Detect knetbsd-gnu and kfreebsd-gnu. 4321*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 4322*1fd5a2e1SPrashanth Swaminathan 4323*1fd5a2e1SPrashanth Swaminathan2004-07-30 Maciej W. Rozycki <[email protected]> 4324*1fd5a2e1SPrashanth Swaminathan 4325*1fd5a2e1SPrashanth Swaminathan * acinclude.m4 (AC_FUNC_MMAP_BLACKLIST): Check for <sys/mman.h> 4326*1fd5a2e1SPrashanth Swaminathan and mmap() explicitly instead of relying on preset autoconf cache 4327*1fd5a2e1SPrashanth Swaminathan variables. 4328*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate. 4329*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 4330*1fd5a2e1SPrashanth Swaminathan 4331*1fd5a2e1SPrashanth Swaminathan2004-07-11 Ulrich Weigand <[email protected]> 4332*1fd5a2e1SPrashanth Swaminathan 4333*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c (ffi_prep_args): Fix C aliasing violation. 4334*1fd5a2e1SPrashanth Swaminathan (ffi_check_float_struct): Remove unused prototype. 4335*1fd5a2e1SPrashanth Swaminathan 4336*1fd5a2e1SPrashanth Swaminathan2004-06-30 Geoffrey Keating <[email protected]> 4337*1fd5a2e1SPrashanth Swaminathan 4338*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (flush_icache): ';' is a comment 4339*1fd5a2e1SPrashanth Swaminathan character on Darwin, use '\n\t' instead. 4340*1fd5a2e1SPrashanth Swaminathan 4341*1fd5a2e1SPrashanth Swaminathan2004-06-26 Matthias Klose <[email protected]> 4342*1fd5a2e1SPrashanth Swaminathan 4343*1fd5a2e1SPrashanth Swaminathan * libtool-version: Fix typo in revision/age. 4344*1fd5a2e1SPrashanth Swaminathan 4345*1fd5a2e1SPrashanth Swaminathan2004-06-17 Matthias Klose <[email protected]> 4346*1fd5a2e1SPrashanth Swaminathan 4347*1fd5a2e1SPrashanth Swaminathan * libtool-version: New. 4348*1fd5a2e1SPrashanth Swaminathan * Makefile.am (libffi_la_LDFLAGS): Use -version-info for soname. 4349*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 4350*1fd5a2e1SPrashanth Swaminathan 4351*1fd5a2e1SPrashanth Swaminathan2004-06-15 Paolo Bonzini <[email protected]> 4352*1fd5a2e1SPrashanth Swaminathan 4353*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Remove useless multilib rules. 4354*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 4355*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Regenerate with automake 1.8.5. 4356*1fd5a2e1SPrashanth Swaminathan * configure.ac: Remove useless multilib configury. 4357*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 4358*1fd5a2e1SPrashanth Swaminathan 4359*1fd5a2e1SPrashanth Swaminathan2004-06-15 Paolo Bonzini <[email protected]> 4360*1fd5a2e1SPrashanth Swaminathan 4361*1fd5a2e1SPrashanth Swaminathan * .cvsignore: New file. 4362*1fd5a2e1SPrashanth Swaminathan 4363*1fd5a2e1SPrashanth Swaminathan2004-06-10 Jakub Jelinek <[email protected]> 4364*1fd5a2e1SPrashanth Swaminathan 4365*1fd5a2e1SPrashanth Swaminathan * src/ia64/unix.S (ffi_call_unix): Insert group barrier break 4366*1fd5a2e1SPrashanth Swaminathan fp_done. 4367*1fd5a2e1SPrashanth Swaminathan (ffi_closure_UNIX): Fix f14/f15 adjustment if FLOAT_SZ is ever 4368*1fd5a2e1SPrashanth Swaminathan changed from 8. 4369*1fd5a2e1SPrashanth Swaminathan 4370*1fd5a2e1SPrashanth Swaminathan2004-06-06 Sean McNeil <[email protected]> 4371*1fd5a2e1SPrashanth Swaminathan 4372*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add x86_64-*-freebsd* support. 4373*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 4374*1fd5a2e1SPrashanth Swaminathan 4375*1fd5a2e1SPrashanth Swaminathan2004-04-26 Joe Buck <[email protected]> 4376*1fd5a2e1SPrashanth Swaminathan 4377*1fd5a2e1SPrashanth Swaminathan Bug 15093 4378*1fd5a2e1SPrashanth Swaminathan * configure.ac: Test for existence of mmap and sys/mman.h before 4379*1fd5a2e1SPrashanth Swaminathan checking blacklist. Fix suggested by Jim Wilson. 4380*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 4381*1fd5a2e1SPrashanth Swaminathan 4382*1fd5a2e1SPrashanth Swaminathan2004-04-26 Matt Austern <[email protected]> 4383*1fd5a2e1SPrashanth Swaminathan 4384*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Go through a non-lazy pointer for initial 4385*1fd5a2e1SPrashanth Swaminathan FDE location. 4386*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Likewise. 4387*1fd5a2e1SPrashanth Swaminathan 4388*1fd5a2e1SPrashanth Swaminathan2004-04-24 Andreas Tobler <[email protected]> 4389*1fd5a2e1SPrashanth Swaminathan 4390*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_schar.c (main): Fix initialization 4391*1fd5a2e1SPrashanth Swaminathan error. Reported by Thomas Heller <[email protected]>. 4392*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_sshort.c (main): Likewise. 4393*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushort.c (main): Likewise. 4394*1fd5a2e1SPrashanth Swaminathan 4395*1fd5a2e1SPrashanth Swaminathan2004-03-20 Matthias Klose <[email protected]> 4396*1fd5a2e1SPrashanth Swaminathan 4397*1fd5a2e1SPrashanth Swaminathan * src/pa/linux.S: Fix typo. 4398*1fd5a2e1SPrashanth Swaminathan 4399*1fd5a2e1SPrashanth Swaminathan2004-03-19 Matthias Klose <[email protected]> 4400*1fd5a2e1SPrashanth Swaminathan 4401*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Update. 4402*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 4403*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.h.in: Remove. 4404*1fd5a2e1SPrashanth Swaminathan * src/pa/ffitarget.h: New file. 4405*1fd5a2e1SPrashanth Swaminathan 4406*1fd5a2e1SPrashanth Swaminathan2004-02-10 Randolph Chung <[email protected]> 4407*1fd5a2e1SPrashanth Swaminathan 4408*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add PA support. 4409*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 4410*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 4411*1fd5a2e1SPrashanth Swaminathan * configure.ac: Add PA target. 4412*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 4413*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.c: New file. 4414*1fd5a2e1SPrashanth Swaminathan * src/pa/ffi.h.in: Add PA support. 4415*1fd5a2e1SPrashanth Swaminathan * src/pa/linux.S: New file. 4416*1fd5a2e1SPrashanth Swaminathan * prep_cif.c: Add PA support. 4417*1fd5a2e1SPrashanth Swaminathan 4418*1fd5a2e1SPrashanth Swaminathan2004-03-16 Hosaka Yuji <[email protected]> 4419*1fd5a2e1SPrashanth Swaminathan 4420*1fd5a2e1SPrashanth Swaminathan * src/types.c: Fix alignment size of X86_WIN32 case int64 and 4421*1fd5a2e1SPrashanth Swaminathan double. 4422*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_args): Replace ecif->cif->rtype->type 4423*1fd5a2e1SPrashanth Swaminathan with ecif->cif->flags. 4424*1fd5a2e1SPrashanth Swaminathan (ffi_call, ffi_prep_incoming_args_SYSV): Replace cif->rtype->type 4425*1fd5a2e1SPrashanth Swaminathan with cif->flags. 4426*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Add X86_WIN32 struct case. 4427*1fd5a2e1SPrashanth Swaminathan (ffi_closure_SYSV): Add 1 or 2-bytes struct case for X86_WIN32. 4428*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S (retstruct1b, retstruct2b, sc_retstruct1b, 4429*1fd5a2e1SPrashanth Swaminathan sc_retstruct2b): Add for 1 or 2-bytes struct case. 4430*1fd5a2e1SPrashanth Swaminathan 4431*1fd5a2e1SPrashanth Swaminathan2004-03-15 Kelley Cook <[email protected]> 4432*1fd5a2e1SPrashanth Swaminathan 4433*1fd5a2e1SPrashanth Swaminathan * configure.in: Rename file to ... 4434*1fd5a2e1SPrashanth Swaminathan * configure.ac: ... this. 4435*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Regenerate. 4436*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 4437*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 4438*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Regenerate. 4439*1fd5a2e1SPrashanth Swaminathan 4440*1fd5a2e1SPrashanth Swaminathan2004-03-12 Matt Austern <[email protected]> 4441*1fd5a2e1SPrashanth Swaminathan 4442*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Fix EH information so it corresponds to 4443*1fd5a2e1SPrashanth Swaminathan changes in EH format resulting from addition of linkonce support. 4444*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Likewise. 4445*1fd5a2e1SPrashanth Swaminathan 4446*1fd5a2e1SPrashanth Swaminathan2004-03-11 Andreas Tobler <[email protected]> 4447*1fd5a2e1SPrashanth Swaminathan Paolo Bonzini <[email protected]> 4448*1fd5a2e1SPrashanth Swaminathan 4449*1fd5a2e1SPrashanth Swaminathan * Makefile.am (AUTOMAKE_OPTIONS): Set them. 4450*1fd5a2e1SPrashanth Swaminathan Remove VPATH. Remove rules for object files. Remove multilib support. 4451*1fd5a2e1SPrashanth Swaminathan (AM_CCASFLAGS): Add. 4452*1fd5a2e1SPrashanth Swaminathan * configure.in (AC_CONFIG_HEADERS): Relace AM_CONFIG_HEADER. 4453*1fd5a2e1SPrashanth Swaminathan (AC_PREREQ): Bump version to 2.59. 4454*1fd5a2e1SPrashanth Swaminathan (AC_INIT): Fill with version info and bug address. 4455*1fd5a2e1SPrashanth Swaminathan (ORIGINAL_LD_FOR_MULTILIBS): Remove. 4456*1fd5a2e1SPrashanth Swaminathan (AM_ENABLE_MULTILIB): Use this instead of AC_ARG_ENABLE. 4457*1fd5a2e1SPrashanth Swaminathan De-precious CC so that the right flags are passed down to multilibs. 4458*1fd5a2e1SPrashanth Swaminathan (AC_MSG_ERROR): Replace obsolete macro AC_ERROR. 4459*1fd5a2e1SPrashanth Swaminathan (AC_CONFIG_FILES): Replace obsolete macro AC_LINK_FILES. 4460*1fd5a2e1SPrashanth Swaminathan (AC_OUTPUT): Reorganize the output with AC_CONFIG_COMMANDS. 4461*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 4462*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Likewise. 4463*1fd5a2e1SPrashanth Swaminathan * Makefile.in, include/Makefile.in, testsuite/Makefile.in: Likewise. 4464*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Likewise. 4465*1fd5a2e1SPrashanth Swaminathan 4466*1fd5a2e1SPrashanth Swaminathan2004-03-11 Andreas Schwab <[email protected]> 4467*1fd5a2e1SPrashanth Swaminathan 4468*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c (ffi_prep_incoming_args_UNIX): Get floating point 4469*1fd5a2e1SPrashanth Swaminathan arguments from fp registers only for the first 8 parameter slots. 4470*1fd5a2e1SPrashanth Swaminathan Don't convert a float parameter when passed in memory. 4471*1fd5a2e1SPrashanth Swaminathan 4472*1fd5a2e1SPrashanth Swaminathan2004-03-09 Hans-Peter Nilsson <[email protected]> 4473*1fd5a2e1SPrashanth Swaminathan 4474*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate for config/accross.m4 correction. 4475*1fd5a2e1SPrashanth Swaminathan 4476*1fd5a2e1SPrashanth Swaminathan2004-02-25 Matt Kraai <[email protected]> 4477*1fd5a2e1SPrashanth Swaminathan 4478*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args_SYSV): Change 4479*1fd5a2e1SPrashanth Swaminathan ecif->cif->bytes to bytes. 4480*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Add braces around nested if statement. 4481*1fd5a2e1SPrashanth Swaminathan 4482*1fd5a2e1SPrashanth Swaminathan2004-02-09 Alan Modra <[email protected]> 4483*1fd5a2e1SPrashanth Swaminathan 4484*1fd5a2e1SPrashanth Swaminathan * src/types.c (pointer): POWERPC64 has 8 byte pointers. 4485*1fd5a2e1SPrashanth Swaminathan 4486*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args64): Correct long double handling. 4487*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_LINUX64): Fix typo. 4488*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble.c: Pass -mlong-double-128 4489*1fd5a2e1SPrashanth Swaminathan for powerpc64-*-*. 4490*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float.c: Likewise. 4491*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float2.c: Likewise. 4492*1fd5a2e1SPrashanth Swaminathan 4493*1fd5a2e1SPrashanth Swaminathan2004-02-08 Alan Modra <[email protected]> 4494*1fd5a2e1SPrashanth Swaminathan 4495*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_cif_machdep <FFI_LINUX64>): Correct 4496*1fd5a2e1SPrashanth Swaminathan long double function return and long double arg handling. 4497*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_LINUX64): Formatting. Delete unused "ng" var. 4498*1fd5a2e1SPrashanth Swaminathan Use "end_pfr" instead of "nf". Correct long double handling. 4499*1fd5a2e1SPrashanth Swaminathan Localise "temp". 4500*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S (ffi_call_LINUX64): Save f2 long double 4501*1fd5a2e1SPrashanth Swaminathan return value. 4502*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Allocate 4503*1fd5a2e1SPrashanth Swaminathan space for long double return value. Adjust stack frame and offsets. 4504*1fd5a2e1SPrashanth Swaminathan Load f2 long double return. 4505*1fd5a2e1SPrashanth Swaminathan 4506*1fd5a2e1SPrashanth Swaminathan2004-02-07 Alan Modra <[email protected]> 4507*1fd5a2e1SPrashanth Swaminathan 4508*1fd5a2e1SPrashanth Swaminathan * src/types.c: Use 16 byte long double for POWERPC64. 4509*1fd5a2e1SPrashanth Swaminathan 4510*1fd5a2e1SPrashanth Swaminathan2004-01-25 Eric Botcazou <[email protected]> 4511*1fd5a2e1SPrashanth Swaminathan 4512*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_args_v9): Shift the parameter array 4513*1fd5a2e1SPrashanth Swaminathan when the structure return address is passed in %o0. 4514*1fd5a2e1SPrashanth Swaminathan (ffi_V9_return_struct): Rename into ffi_v9_layout_struct. 4515*1fd5a2e1SPrashanth Swaminathan (ffi_v9_layout_struct): Align the field following a nested structure 4516*1fd5a2e1SPrashanth Swaminathan on a word boundary. Use memmove instead of memcpy. 4517*1fd5a2e1SPrashanth Swaminathan (ffi_call): Update call to ffi_V9_return_struct. 4518*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Define 'ctx' only for V8. 4519*1fd5a2e1SPrashanth Swaminathan (ffi_closure_sparc_inner): Clone into ffi_closure_sparc_inner_v8 4520*1fd5a2e1SPrashanth Swaminathan and ffi_closure_sparc_inner_v9. 4521*1fd5a2e1SPrashanth Swaminathan (ffi_closure_sparc_inner_v8): Return long doubles by reference. 4522*1fd5a2e1SPrashanth Swaminathan Always skip the structure return address. For structures and long 4523*1fd5a2e1SPrashanth Swaminathan doubles, copy the argument directly. 4524*1fd5a2e1SPrashanth Swaminathan (ffi_closure_sparc_inner_v9): Skip the structure return address only 4525*1fd5a2e1SPrashanth Swaminathan if required. Shift the maximum floating-point slot accordingly. For 4526*1fd5a2e1SPrashanth Swaminathan big structures, copy the argument directly; otherwise, left-justify the 4527*1fd5a2e1SPrashanth Swaminathan argument and call ffi_v9_layout_struct to lay out the structure on 4528*1fd5a2e1SPrashanth Swaminathan the stack. 4529*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: Undef STACKFRAME before defining it. 4530*1fd5a2e1SPrashanth Swaminathan (ffi_closure_v8): Pass the structure return address. Update call to 4531*1fd5a2e1SPrashanth Swaminathan ffi_closure_sparc_inner_v8. Short-circuit FFI_TYPE_INT handling. 4532*1fd5a2e1SPrashanth Swaminathan Skip the 'unimp' insn when returning long doubles and structures. 4533*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S: Undef STACKFRAME before defining it. 4534*1fd5a2e1SPrashanth Swaminathan (ffi_closure_v9): Increase the frame size by 2 words. Short-circuit 4535*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_INT handling. Load structures both in integers and 4536*1fd5a2e1SPrashanth Swaminathan floating-point registers on return. 4537*1fd5a2e1SPrashanth Swaminathan * README: Update status of the SPARC port. 4538*1fd5a2e1SPrashanth Swaminathan 4539*1fd5a2e1SPrashanth Swaminathan2004-01-24 Andreas Tobler <[email protected]> 4540*1fd5a2e1SPrashanth Swaminathan 4541*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/pyobjc-tc.c (main): Treat result value 4542*1fd5a2e1SPrashanth Swaminathan as of type ffi_arg. 4543*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct3.c (main): Fix CHECK. 4544*1fd5a2e1SPrashanth Swaminathan 4545*1fd5a2e1SPrashanth Swaminathan2004-01-22 Ulrich Weigand <[email protected]> 4546*1fd5a2e1SPrashanth Swaminathan 4547*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c (cls_ret_uint_fn): Treat result 4548*1fd5a2e1SPrashanth Swaminathan value as of type ffi_arg, not unsigned int. 4549*1fd5a2e1SPrashanth Swaminathan 4550*1fd5a2e1SPrashanth Swaminathan2004-01-21 Michael Ritzert <[email protected]> 4551*1fd5a2e1SPrashanth Swaminathan 4552*1fd5a2e1SPrashanth Swaminathan * ffi64.c (ffi_prep_args): Cast the RHS of an assignment instead 4553*1fd5a2e1SPrashanth Swaminathan of the LHS. 4554*1fd5a2e1SPrashanth Swaminathan 4555*1fd5a2e1SPrashanth Swaminathan2004-01-12 Andreas Tobler <[email protected]> 4556*1fd5a2e1SPrashanth Swaminathan 4557*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_32 for 4558*1fd5a2e1SPrashanth Swaminathan Solaris. 4559*1fd5a2e1SPrashanth Swaminathan 4560*1fd5a2e1SPrashanth Swaminathan2004-01-08 Rainer Orth <[email protected]> 4561*1fd5a2e1SPrashanth Swaminathan 4562*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h (allocate_mmap): Cast MAP_FAILED 4563*1fd5a2e1SPrashanth Swaminathan to void *. 4564*1fd5a2e1SPrashanth Swaminathan 4565*1fd5a2e1SPrashanth Swaminathan2003-12-10 Richard Henderson <[email protected]> 4566*1fd5a2e1SPrashanth Swaminathan 4567*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_pointer.c: Cast pointers to 4568*1fd5a2e1SPrashanth Swaminathan size_t instead of int. 4569*1fd5a2e1SPrashanth Swaminathan 4570*1fd5a2e1SPrashanth Swaminathan2003-12-04 Hosaka Yuji <[email protected]> 4571*1fd5a2e1SPrashanth Swaminathan 4572*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many_win32.c: Include <float.h>. 4573*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many_win32.c (main): Replace variable 4574*1fd5a2e1SPrashanth Swaminathan int i with unsigned long ul. 4575*1fd5a2e1SPrashanth Swaminathan 4576*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint64.c: New test case. 4577*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint64.c: Likewise. 4578*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint32.c: Likewise. 4579*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint32.c: Likewise. 4580*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_uint16.c: Likewise. 4581*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_sint16.c: Likewise. 4582*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_float.c: Likewise. 4583*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_double.c: Likewise. 4584*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_longdouble.c: Likewise. 4585*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_align_pointer.c: Likewise. 4586*1fd5a2e1SPrashanth Swaminathan 4587*1fd5a2e1SPrashanth Swaminathan2003-12-02 Hosaka Yuji <[email protected]> 4588*1fd5a2e1SPrashanth Swaminathan 4589*1fd5a2e1SPrashanth Swaminathan PR other/13221 4590*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_args, ffi_prep_incoming_args_SYSV): 4591*1fd5a2e1SPrashanth Swaminathan Align arguments to 32 bits. 4592*1fd5a2e1SPrashanth Swaminathan 4593*1fd5a2e1SPrashanth Swaminathan2003-12-01 Andreas Tobler <[email protected]> 4594*1fd5a2e1SPrashanth Swaminathan 4595*1fd5a2e1SPrashanth Swaminathan PR other/13221 4596*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_sshort.c: New test case. 4597*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_sshortchar.c: Likewise. 4598*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_uchar.c: Likewise. 4599*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_schar.c: Likewise. 4600*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushortchar.c: Likewise. 4601*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_multi_ushort.c: Likewise. 4602*1fd5a2e1SPrashanth Swaminathan 4603*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc: Cosmetics. 4604*1fd5a2e1SPrashanth Swaminathan 4605*1fd5a2e1SPrashanth Swaminathan2003-11-26 Kaveh R. Ghazi <[email protected]> 4606*1fd5a2e1SPrashanth Swaminathan 4607*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Include <fcntl.h>. 4608*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/ffitestcxx.h: Likewise. 4609*1fd5a2e1SPrashanth Swaminathan 4610*1fd5a2e1SPrashanth Swaminathan2003-11-22 Andreas Tobler <[email protected]> 4611*1fd5a2e1SPrashanth Swaminathan 4612*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 4613*1fd5a2e1SPrashanth Swaminathan * configure: Likewise. 4614*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc: Convert the mmap to 4615*1fd5a2e1SPrashanth Swaminathan the right type. 4616*1fd5a2e1SPrashanth Swaminathan 4617*1fd5a2e1SPrashanth Swaminathan2003-11-21 Andreas Jaeger <[email protected]> 4618*1fd5a2e1SPrashanth Swaminathan Andreas Tobler <[email protected]> 4619*1fd5a2e1SPrashanth Swaminathan 4620*1fd5a2e1SPrashanth Swaminathan * acinclude.m4: Add AC_FUNC_MMAP_BLACKLIST. 4621*1fd5a2e1SPrashanth Swaminathan * configure.in: Call AC_FUNC_MMAP_BLACKLIST. 4622*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 4623*1fd5a2e1SPrashanth Swaminathan * aclocal.m4: Likewise. 4624*1fd5a2e1SPrashanth Swaminathan * configure: Likewise. 4625*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Likewise. 4626*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Add include dir. 4627*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Add MMAP definitions. 4628*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/ffitestcxx.h: Likewise. 4629*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c: Use MMAP functionality 4630*1fd5a2e1SPrashanth Swaminathan for ffi_closure if available. 4631*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn1.c: Likewise. 4632*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn2.c: Likewise. 4633*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn3.c: Likewise. 4634*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn4.c: Likewise. 4635*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn5.c: Likewise. 4636*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_12byte.c: Likewise. 4637*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_16byte.c: Likewise. 4638*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_18byte.c: Likewise. 4639*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_19byte.c: Likewise. 4640*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_1_1byte.c: Likewise. 4641*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte.c: Likewise. 4642*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte1.c: Likewise. 4643*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_24byte.c: Likewise. 4644*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_2byte.c: Likewise. 4645*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3_1byte.c: Likewise. 4646*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte1.c: Likewise. 4647*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte2.c: Likewise. 4648*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4_1byte.c: Likewise. 4649*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4byte.c: Likewise. 4650*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5byte.c: Likewise. 4651*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_64byte.c: Likewise. 4652*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6byte.c: Likewise. 4653*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7byte.c: Likewise. 4654*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_8byte.c: Likewise. 4655*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte1.c: Likewise. 4656*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte2.c: Likewise. 4657*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double.c: Likewise. 4658*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_float.c: Likewise. 4659*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_schar.c: Likewise. 4660*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sint.c: Likewise. 4661*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sshort.c: Likewise. 4662*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar.c: Likewise. 4663*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c: Likewise. 4664*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulonglong.c: Likewise. 4665*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ushort.c: Likewise. 4666*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct.c: Likewise. 4667*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct1.c: Likewise. 4668*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct2.c: Likewise. 4669*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct3.c: Likewise. 4670*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/problem1.c: Likewise. 4671*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc: Likewise. 4672*1fd5a2e1SPrashanth Swaminathan 4673*1fd5a2e1SPrashanth Swaminathan2003-11-20 Andreas Tobler <[email protected]> 4674*1fd5a2e1SPrashanth Swaminathan 4675*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Make the -lgcc_s conditional. 4676*1fd5a2e1SPrashanth Swaminathan 4677*1fd5a2e1SPrashanth Swaminathan2003-11-19 Andreas Tobler <[email protected]> 4678*1fd5a2e1SPrashanth Swaminathan 4679*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Add DYLD_LIBRARY_PATH for darwin. 4680*1fd5a2e1SPrashanth Swaminathan Add -lgcc_s to additional flags. 4681*1fd5a2e1SPrashanth Swaminathan 4682*1fd5a2e1SPrashanth Swaminathan2003-11-12 Andreas Tobler <[email protected]> 4683*1fd5a2e1SPrashanth Swaminathan 4684*1fd5a2e1SPrashanth Swaminathan * configure.in, include/Makefile.am: PR libgcj/11147, install 4685*1fd5a2e1SPrashanth Swaminathan the ffitarget.h header file in a gcc versioned and target 4686*1fd5a2e1SPrashanth Swaminathan dependent place. 4687*1fd5a2e1SPrashanth Swaminathan * configure: Regenerated. 4688*1fd5a2e1SPrashanth Swaminathan * Makefile.in, include/Makefile.in: Likewise. 4689*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Likewise. 4690*1fd5a2e1SPrashanth Swaminathan 4691*1fd5a2e1SPrashanth Swaminathan2003-11-09 Andreas Tobler <[email protected]> 4692*1fd5a2e1SPrashanth Swaminathan 4693*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c: Print result and check 4694*1fd5a2e1SPrashanth Swaminathan with dg-output to make debugging easier. 4695*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn1.c: Likewise. 4696*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn2.c: Likewise. 4697*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn3.c: Likewise. 4698*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn4.c: Likewise. 4699*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn5.c: Likewise. 4700*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_12byte.c: Likewise. 4701*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_16byte.c: Likewise. 4702*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_18byte.c: Likewise. 4703*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_19byte.c: Likewise. 4704*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_1_1byte.c: Likewise. 4705*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte.c: Likewise. 4706*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte1.c: Likewise. 4707*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_24byte.c: Likewise. 4708*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_2byte.c: Likewise. 4709*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3_1byte.c: Likewise. 4710*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte1.c: Likewise. 4711*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte2.c: Likewise. 4712*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4_1byte.c: Likewise. 4713*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4byte.c: Likewise. 4714*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5byte.c: Likewise. 4715*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_64byte.c: Likewise. 4716*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6byte.c: Likewise. 4717*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7byte.c: Likewise. 4718*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_8byte.c: Likewise. 4719*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte1.c: Likewise. 4720*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte2.c: Likewise. 4721*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double.c: Likewise. 4722*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_float.c: Likewise. 4723*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_schar.c: Likewise. 4724*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sint.c: Likewise. 4725*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sshort.c: Likewise. 4726*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar.c: Likewise. 4727*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c: Likewise. 4728*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulonglong.c: Likewise. 4729*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ushort.c: Likewise. 4730*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/problem1.c: Likewise. 4731*1fd5a2e1SPrashanth Swaminathan 4732*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc: Make ffi_closure 4733*1fd5a2e1SPrashanth Swaminathan static. 4734*1fd5a2e1SPrashanth Swaminathan 4735*1fd5a2e1SPrashanth Swaminathan2003-11-08 Andreas Tobler <[email protected]> 4736*1fd5a2e1SPrashanth Swaminathan 4737*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte2.c: New test case. 4738*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_9byte1.c: Likewise. 4739*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_64byte.c: Likewise. 4740*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte1.c: Likewise. 4741*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_19byte.c: Likewise. 4742*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_18byte.c: Likewise. 4743*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn4.c: Likewise. 4744*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn5.c: Likewise. 4745*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_schar.c: Likewise. 4746*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sint.c: Likewise. 4747*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_sshort.c: Likewise. 4748*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct2.c: Likewise. 4749*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct3.c: Likewise. 4750*1fd5a2e1SPrashanth Swaminathan 4751*1fd5a2e1SPrashanth Swaminathan2003-11-08 Andreas Tobler <[email protected]> 4752*1fd5a2e1SPrashanth Swaminathan 4753*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double.c: Do a check on the result. 4754*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar.c: Likewise. 4755*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c: Likewise. 4756*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulonglong.c: Likewise. 4757*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ushort.c: Likewise. 4758*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_sc.c: Cleanup whitespaces. 4759*1fd5a2e1SPrashanth Swaminathan 4760*1fd5a2e1SPrashanth Swaminathan2003-11-06 Andreas Tobler <[email protected]> 4761*1fd5a2e1SPrashanth Swaminathan 4762*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif): Move the validity check after 4763*1fd5a2e1SPrashanth Swaminathan the initialization. 4764*1fd5a2e1SPrashanth Swaminathan 4765*1fd5a2e1SPrashanth Swaminathan2003-10-23 Andreas Tobler <[email protected]> 4766*1fd5a2e1SPrashanth Swaminathan 4767*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c (ffi_java_ptrarray_to_raw): Replace 4768*1fd5a2e1SPrashanth Swaminathan FFI_ASSERT(FALSE) with FFI_ASSERT(0). 4769*1fd5a2e1SPrashanth Swaminathan 4770*1fd5a2e1SPrashanth Swaminathan2003-10-22 David Daney <[email protected]> 4771*1fd5a2e1SPrashanth Swaminathan 4772*1fd5a2e1SPrashanth Swaminathan * src/mips/ffitarget.h: Replace undefined UINT32 and friends with 4773*1fd5a2e1SPrashanth Swaminathan __attribute__((__mode__(__SI__))) and friends. 4774*1fd5a2e1SPrashanth Swaminathan 4775*1fd5a2e1SPrashanth Swaminathan2003-10-22 Andreas Schwab <[email protected]> 4776*1fd5a2e1SPrashanth Swaminathan 4777*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c: Replace FALSE/TRUE with false/true. 4778*1fd5a2e1SPrashanth Swaminathan 4779*1fd5a2e1SPrashanth Swaminathan2003-10-21 Andreas Tobler <[email protected]> 4780*1fd5a2e1SPrashanth Swaminathan 4781*1fd5a2e1SPrashanth Swaminathan * configure.in: AC_LINK_FILES(ffitarget.h). 4782*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 4783*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Likewise. 4784*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Likewise. 4785*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Likewise. 4786*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Likewise. 4787*1fd5a2e1SPrashanth Swaminathan 4788*1fd5a2e1SPrashanth Swaminathan2003-10-21 Paolo Bonzini <[email protected]> 4789*1fd5a2e1SPrashanth Swaminathan Richard Henderson <[email protected]> 4790*1fd5a2e1SPrashanth Swaminathan 4791*1fd5a2e1SPrashanth Swaminathan Avoid that ffi.h includes fficonfig.h. 4792*1fd5a2e1SPrashanth Swaminathan 4793*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Include ffitarget.h files 4794*1fd5a2e1SPrashanth Swaminathan (TARGET_SRC_MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX. 4795*1fd5a2e1SPrashanth Swaminathan (TARGET_SRC_MIPS_SGI): Removed. 4796*1fd5a2e1SPrashanth Swaminathan (MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX. 4797*1fd5a2e1SPrashanth Swaminathan (MIPS_SGI): Removed. 4798*1fd5a2e1SPrashanth Swaminathan (CLEANFILES): Removed. 4799*1fd5a2e1SPrashanth Swaminathan (mostlyclean-am, clean-am, mostlyclean-sub, clean-sub): New 4800*1fd5a2e1SPrashanth Swaminathan targets. 4801*1fd5a2e1SPrashanth Swaminathan * acconfig.h: Removed. 4802*1fd5a2e1SPrashanth Swaminathan * configure.in: Compute sizeofs only for double and long double. 4803*1fd5a2e1SPrashanth Swaminathan Use them to define and subst HAVE_LONG_DOUBLE. Include comments 4804*1fd5a2e1SPrashanth Swaminathan into AC_DEFINE instead of using acconfig.h. Create 4805*1fd5a2e1SPrashanth Swaminathan include/ffitarget.h instead of include/fficonfig.h. Rename 4806*1fd5a2e1SPrashanth Swaminathan MIPS_GCC to MIPS_IRIX, drop MIPS_SGI since we are in gcc's tree. 4807*1fd5a2e1SPrashanth Swaminathan AC_DEFINE EH_FRAME_FLAGS. 4808*1fd5a2e1SPrashanth Swaminathan * include/Makefile.am (DISTCLEANFILES): New automake macro. 4809*1fd5a2e1SPrashanth Swaminathan (hack_DATA): Add ffitarget.h. 4810*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Remove all system specific definitions. 4811*1fd5a2e1SPrashanth Swaminathan Declare raw API even if it is not installed, why bother? 4812*1fd5a2e1SPrashanth Swaminathan Use limits.h instead of SIZEOF_* to define ffi_type_*. Do 4813*1fd5a2e1SPrashanth Swaminathan not define EH_FRAME_FLAGS, it is in fficonfig.h now. Include 4814*1fd5a2e1SPrashanth Swaminathan ffitarget.h instead of fficonfig.h. Remove ALIGN macro. 4815*1fd5a2e1SPrashanth Swaminathan (UINT_ARG, INT_ARG): Removed, use ffi_arg and ffi_sarg instead. 4816*1fd5a2e1SPrashanth Swaminathan * include/ffi_common.h (bool): Do not define. 4817*1fd5a2e1SPrashanth Swaminathan (ffi_assert): Accept failed assertion. 4818*1fd5a2e1SPrashanth Swaminathan (ffi_type_test): Return void and accept file/line. 4819*1fd5a2e1SPrashanth Swaminathan (FFI_ASSERT): Pass stringized failed assertion. 4820*1fd5a2e1SPrashanth Swaminathan (FFI_ASSERT_AT): New macro. 4821*1fd5a2e1SPrashanth Swaminathan (FFI_ASSERT_VALID_TYPE): New macro. 4822*1fd5a2e1SPrashanth Swaminathan (UINT8, SINT8, UINT16, SINT16, UINT32, SINT32, 4823*1fd5a2e1SPrashanth Swaminathan UINT64, SINT64): Define here with gcc's __attribute__ macro 4824*1fd5a2e1SPrashanth Swaminathan instead of in ffi.h 4825*1fd5a2e1SPrashanth Swaminathan (FLOAT32, ALIGN): Define here instead of in ffi.h 4826*1fd5a2e1SPrashanth Swaminathan * include/ffi-mips.h: Removed. Its content moved to 4827*1fd5a2e1SPrashanth Swaminathan src/mips/ffitarget.h after separating assembly and C sections. 4828*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c, src/alpha/ffi.c, src/java_raw_api.c 4829*1fd5a2e1SPrashanth Swaminathan src/prep_cif.c, src/raw_api.c, src/ia64/ffi.c, 4830*1fd5a2e1SPrashanth Swaminathan src/mips/ffi.c, src/mips/n32.S, src/mips/o32.S, 4831*1fd5a2e1SPrashanth Swaminathan src/mips/ffitarget.h, src/sparc/ffi.c, src/x86/ffi64.c: 4832*1fd5a2e1SPrashanth Swaminathan SIZEOF_ARG -> FFI_SIZEOF_ARG. 4833*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c: Include stdbool.h (provided by GCC 2.95+). 4834*1fd5a2e1SPrashanth Swaminathan * src/debug.c (ffi_assert): Accept stringized failed assertion. 4835*1fd5a2e1SPrashanth Swaminathan (ffi_type_test): Rewritten. 4836*1fd5a2e1SPrashanth Swaminathan * src/prep-cif.c (initialize_aggregate, ffi_prep_cif): Call 4837*1fd5a2e1SPrashanth Swaminathan FFI_ASSERT_VALID_TYPE. 4838*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffitarget.h, src/arm/ffitarget.h, 4839*1fd5a2e1SPrashanth Swaminathan src/ia64/ffitarget.h, src/m68k/ffitarget.h, 4840*1fd5a2e1SPrashanth Swaminathan src/mips/ffitarget.h, src/powerpc/ffitarget.h, 4841*1fd5a2e1SPrashanth Swaminathan src/s390/ffitarget.h, src/sh/ffitarget.h, 4842*1fd5a2e1SPrashanth Swaminathan src/sh64/ffitarget.h, src/sparc/ffitarget.h, 4843*1fd5a2e1SPrashanth Swaminathan src/x86/ffitarget.h: New files. 4844*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S, src/arm/sysv.S, src/ia64/unix.S, 4845*1fd5a2e1SPrashanth Swaminathan src/m68k/sysv.S, src/mips/n32.S, src/mips/o32.S, 4846*1fd5a2e1SPrashanth Swaminathan src/powerpc/aix.S, src/powerpc/darwin.S, 4847*1fd5a2e1SPrashanth Swaminathan src/powerpc/ffi_darwin.c, src/powerpc/linux64.S, 4848*1fd5a2e1SPrashanth Swaminathan src/powerpc/linux64_closure.S, src/powerpc/ppc_closure.S, 4849*1fd5a2e1SPrashanth Swaminathan src/powerpc/sysv.S, src/s390/sysv.S, src/sh/sysv.S, 4850*1fd5a2e1SPrashanth Swaminathan src/sh64/sysv.S, src/sparc/v8.S, src/sparc/v9.S, 4851*1fd5a2e1SPrashanth Swaminathan src/x86/sysv.S, src/x86/unix64.S, src/x86/win32.S: 4852*1fd5a2e1SPrashanth Swaminathan include fficonfig.h 4853*1fd5a2e1SPrashanth Swaminathan 4854*1fd5a2e1SPrashanth Swaminathan2003-10-20 Rainer Orth <[email protected]> 4855*1fd5a2e1SPrashanth Swaminathan 4856*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external 4857*1fd5a2e1SPrashanth Swaminathan _MIPS_SIM_NABI32, _MIPS_SIM_ABI32. 4858*1fd5a2e1SPrashanth Swaminathan 4859*1fd5a2e1SPrashanth Swaminathan2003-10-19 Andreas Tobler <[email protected]> 4860*1fd5a2e1SPrashanth Swaminathan 4861*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Declare bytes again. 4862*1fd5a2e1SPrashanth Swaminathan Used when FFI_DEBUG = 1. 4863*1fd5a2e1SPrashanth Swaminathan 4864*1fd5a2e1SPrashanth Swaminathan2003-10-14 Alan Modra <[email protected]> 4865*1fd5a2e1SPrashanth Swaminathan 4866*1fd5a2e1SPrashanth Swaminathan * src/types.c (double, longdouble): Default POWERPC64 to 8 byte size 4867*1fd5a2e1SPrashanth Swaminathan and align. 4868*1fd5a2e1SPrashanth Swaminathan 4869*1fd5a2e1SPrashanth Swaminathan2003-10-06 Rainer Orth <[email protected]> 4870*1fd5a2e1SPrashanth Swaminathan 4871*1fd5a2e1SPrashanth Swaminathan * include/ffi_mips.h: Define FFI_MIPS_N32 for N32/N64 ABIs, 4872*1fd5a2e1SPrashanth Swaminathan FFI_MIPS_O32 for O32 ABI. 4873*1fd5a2e1SPrashanth Swaminathan 4874*1fd5a2e1SPrashanth Swaminathan2003-10-01 Andreas Tobler <[email protected]> 4875*1fd5a2e1SPrashanth Swaminathan 4876*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_64 for 4877*1fd5a2e1SPrashanth Swaminathan SPARC64. Cleanup whitespaces. 4878*1fd5a2e1SPrashanth Swaminathan 4879*1fd5a2e1SPrashanth Swaminathan2003-09-19 Andreas Tobler <[email protected]> 4880*1fd5a2e1SPrashanth Swaminathan 4881*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c: Xfail mips, arm, 4882*1fd5a2e1SPrashanth Swaminathan strongarm, xscale. Cleanup whitespaces. 4883*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn1.c: Likewise. 4884*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn2.c: Likewise. 4885*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn3.c: Likewise. 4886*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_12byte.c: Likewise. 4887*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_16byte.c: Likewise. 4888*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_1_1byte.c: Likewise. 4889*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte.c: Likewise. 4890*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_24byte.c: Likewise. 4891*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_2byte.c: Likewise. 4892*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3_1byte.c: Likewise. 4893*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte1.c: Likewise. 4894*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte2.c: Likewise. 4895*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4_1byte.c: Likewise. 4896*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4byte.c: Likewise. 4897*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5byte.c: Likewise. 4898*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6byte.c: Likewise. 4899*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7byte.c: Likewise. 4900*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_8byte.c: Likewise. 4901*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double.c: Likewise. 4902*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_float.c: Likewise. 4903*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar.c: Likewise. 4904*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c: Likewise. 4905*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulonglong.c: Likewise. 4906*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ushort.c: Likewise. 4907*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct.c: Likewise. 4908*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct1.c: Likewise. 4909*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/problem1.c: Likewise. 4910*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc: Likewise. 4911*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/pyobjc-tc.c: Cleanup whitespaces. 4912*1fd5a2e1SPrashanth Swaminathan 4913*1fd5a2e1SPrashanth Swaminathan2003-09-18 David Edelsohn <[email protected]> 4914*1fd5a2e1SPrashanth Swaminathan 4915*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S: Cleanup whitespaces. 4916*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: Likewise. 4917*1fd5a2e1SPrashanth Swaminathan 4918*1fd5a2e1SPrashanth Swaminathan2003-09-18 Andreas Tobler <[email protected]> 4919*1fd5a2e1SPrashanth Swaminathan 4920*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Cleanup whitespaces, comment formatting. 4921*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Likewise. 4922*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: Likewise. 4923*1fd5a2e1SPrashanth Swaminathan 4924*1fd5a2e1SPrashanth Swaminathan2003-09-18 Andreas Tobler <[email protected]> 4925*1fd5a2e1SPrashanth Swaminathan David Edelsohn <[email protected]> 4926*1fd5a2e1SPrashanth Swaminathan 4927*1fd5a2e1SPrashanth Swaminathan * src/types.c (double): Add AIX and Darwin to the right TYPEDEF. 4928*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: Remove the pointer to the outgoing 4929*1fd5a2e1SPrashanth Swaminathan parameter stack. 4930*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Likewise. 4931*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Handle structures 4932*1fd5a2e1SPrashanth Swaminathan according to the Darwin/AIX ABI. 4933*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Likewise. 4934*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_DARWIN): Likewise. 4935*1fd5a2e1SPrashanth Swaminathan Remove the outgoing parameter stack logic. Simplify the evaluation 4936*1fd5a2e1SPrashanth Swaminathan of the different CASE types. 4937*1fd5a2e1SPrashanth Swaminathan (ffi_prep_clousure): Avoid the casts on lvalues. Change the branch 4938*1fd5a2e1SPrashanth Swaminathan statement in the trampoline code. 4939*1fd5a2e1SPrashanth Swaminathan 4940*1fd5a2e1SPrashanth Swaminathan2003-09-18 Kaz Kojima <[email protected]> 4941*1fd5a2e1SPrashanth Swaminathan 4942*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c (ffi_prep_args): Take account into the alignement 4943*1fd5a2e1SPrashanth Swaminathan for the register size. 4944*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Handle the structure return value 4945*1fd5a2e1SPrashanth Swaminathan address correctly. 4946*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Return the appropriate type when 4947*1fd5a2e1SPrashanth Swaminathan the registers are used for the structure return value. 4948*1fd5a2e1SPrashanth Swaminathan * src/sh/sysv.S (ffi_closure_SYSV): Fix the stack layout for 4949*1fd5a2e1SPrashanth Swaminathan the 64-bit return value. Update copyright years. 4950*1fd5a2e1SPrashanth Swaminathan 4951*1fd5a2e1SPrashanth Swaminathan2003-09-17 Rainer Orth <[email protected]> 4952*1fd5a2e1SPrashanth Swaminathan 4953*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp (libffi_target_compile): Search in 4954*1fd5a2e1SPrashanth Swaminathan srcdir for ffi_mips.h. 4955*1fd5a2e1SPrashanth Swaminathan 4956*1fd5a2e1SPrashanth Swaminathan2003-09-12 Alan Modra <[email protected]> 4957*1fd5a2e1SPrashanth Swaminathan 4958*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (initialize_aggregate): Include tail padding in 4959*1fd5a2e1SPrashanth Swaminathan structure size. 4960*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Correct 4961*1fd5a2e1SPrashanth Swaminathan placement of float result. 4962*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc (closure_test_fn1): Correct 4963*1fd5a2e1SPrashanth Swaminathan cast of "resp" for big-endian 64 bit machines. 4964*1fd5a2e1SPrashanth Swaminathan 4965*1fd5a2e1SPrashanth Swaminathan2003-09-11 Alan Modra <[email protected]> 4966*1fd5a2e1SPrashanth Swaminathan 4967*1fd5a2e1SPrashanth Swaminathan * src/types.c (double, longdouble): Merge identical SH and ARM 4968*1fd5a2e1SPrashanth Swaminathan typedefs, and add POWERPC64. 4969*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args64): Correct next_arg calc for 4970*1fd5a2e1SPrashanth Swaminathan struct split over gpr and rest. 4971*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Correct intarg_count for structures. 4972*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S (ffi_call_LINUX64): Fix gpr offsets. 4973*1fd5a2e1SPrashanth Swaminathan 4974*1fd5a2e1SPrashanth Swaminathan2003-09-09 Andreas Tobler <[email protected]> 4975*1fd5a2e1SPrashanth Swaminathan 4976*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_closure_helper_SYSV) Handle struct 4977*1fd5a2e1SPrashanth Swaminathan passing correctly. 4978*1fd5a2e1SPrashanth Swaminathan 4979*1fd5a2e1SPrashanth Swaminathan2003-09-09 Alan Modra <[email protected]> 4980*1fd5a2e1SPrashanth Swaminathan 4981*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 4982*1fd5a2e1SPrashanth Swaminathan 4983*1fd5a2e1SPrashanth Swaminathan2003-09-04 Andreas Tobler <[email protected]> 4984*1fd5a2e1SPrashanth Swaminathan 4985*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Remove build rules for ffitest. 4986*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 4987*1fd5a2e1SPrashanth Swaminathan 4988*1fd5a2e1SPrashanth Swaminathan2003-09-04 Andreas Tobler <[email protected]> 4989*1fd5a2e1SPrashanth Swaminathan 4990*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c: Include <stdlib.h> to fix compiler warning 4991*1fd5a2e1SPrashanth Swaminathan about implicit declaration of abort(). 4992*1fd5a2e1SPrashanth Swaminathan 4993*1fd5a2e1SPrashanth Swaminathan2003-09-04 Andreas Tobler <[email protected]> 4994*1fd5a2e1SPrashanth Swaminathan 4995*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add dejagnu test framework. Fixes PR other/11411. 4996*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 4997*1fd5a2e1SPrashanth Swaminathan * configure.in: Add dejagnu test framework. 4998*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 4999*1fd5a2e1SPrashanth Swaminathan 5000*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.am: New file. 5001*1fd5a2e1SPrashanth Swaminathan * testsuite/Makefile.in: Built 5002*1fd5a2e1SPrashanth Swaminathan * testsuite/lib/libffi-dg.exp: New file. 5003*1fd5a2e1SPrashanth Swaminathan * testsuite/config/default.exp: Likewise. 5004*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/call.exp: Likewise. 5005*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/ffitest.h: Likewise. 5006*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn0.c: Likewise. 5007*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn1.c: Likewise. 5008*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn2.c: Likewise. 5009*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/closure_fn3.c: Likewise. 5010*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_1_1byte.c: Likewise. 5011*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3_1byte.c: Likewise. 5012*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4_1byte.c: Likewise. 5013*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_2byte.c: Likewise. 5014*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte1.c: Likewise. 5015*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_3byte2.c: Likewise. 5016*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_4byte.c: Likewise. 5017*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_5byte.c: Likewise. 5018*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_6byte.c: Likewise. 5019*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_7byte.c: Likewise. 5020*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_8byte.c: Likewise. 5021*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_12byte.c: Likewise. 5022*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_16byte.c: Likewise. 5023*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_20byte.c: Likewise. 5024*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_24byte.c: Likewise. 5025*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_double.c: Likewise. 5026*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_float.c: Likewise. 5027*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uchar.c: Likewise. 5028*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_uint.c: Likewise. 5029*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ulonglong.c: Likewise. 5030*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/cls_ushort.c: Likewise. 5031*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float.c: Likewise. 5032*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float1.c: Likewise. 5033*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/float2.c: Likewise. 5034*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many.c: Likewise. 5035*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/many_win32.c: Likewise. 5036*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct.c: Likewise. 5037*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/nested_struct1.c: Likewise. 5038*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/pyobjc-tc.c: Likewise. 5039*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/problem1.c: Likewise. 5040*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/promotion.c: Likewise. 5041*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_ll.c: Likewise. 5042*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_sc.c: Likewise. 5043*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/return_uc.c: Likewise. 5044*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/strlen.c: Likewise. 5045*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/strlen_win32.c: Likewise. 5046*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct1.c: Likewise. 5047*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct2.c: Likewise. 5048*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct3.c: Likewise. 5049*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct4.c: Likewise. 5050*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct5.c: Likewise. 5051*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct6.c: Likewise. 5052*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct7.c: Likewise. 5053*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct8.c: Likewise. 5054*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.call/struct9.c: Likewise. 5055*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/special.exp: New file. 5056*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/ffitestcxx.h: Likewise. 5057*1fd5a2e1SPrashanth Swaminathan * testsuite/libffi.special/unwindtest.cc: Likewise. 5058*1fd5a2e1SPrashanth Swaminathan 5059*1fd5a2e1SPrashanth Swaminathan 5060*1fd5a2e1SPrashanth Swaminathan2003-08-13 Kaz Kojima <[email protected]> 5061*1fd5a2e1SPrashanth Swaminathan 5062*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c (OFS_INT16): Set 0 for little endian case. Update 5063*1fd5a2e1SPrashanth Swaminathan copyright years. 5064*1fd5a2e1SPrashanth Swaminathan 5065*1fd5a2e1SPrashanth Swaminathan2003-08-02 Alan Modra <[email protected]> 5066*1fd5a2e1SPrashanth Swaminathan 5067*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args64): Modify for changed gcc 5068*1fd5a2e1SPrashanth Swaminathan structure passing. 5069*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_LINUX64): Likewise. 5070*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S: Remove code writing to parm save area. 5071*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Use return 5072*1fd5a2e1SPrashanth Swaminathan address in lr from ffi_closure_helper_LINUX64 call to calculate 5073*1fd5a2e1SPrashanth Swaminathan table address. Optimize function tail. 5074*1fd5a2e1SPrashanth Swaminathan 5075*1fd5a2e1SPrashanth Swaminathan2003-07-28 Andreas Tobler <[email protected]> 5076*1fd5a2e1SPrashanth Swaminathan 5077*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c: Handle all floating point registers. 5078*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S: Likewise. Fixes second part of PR target/11410. 5079*1fd5a2e1SPrashanth Swaminathan 5080*1fd5a2e1SPrashanth Swaminathan2003-07-11 Gerald Pfeifer <[email protected]> 5081*1fd5a2e1SPrashanth Swaminathan 5082*1fd5a2e1SPrashanth Swaminathan * README: Note that libffi is not part of GCC. Update the project 5083*1fd5a2e1SPrashanth Swaminathan URL and status. 5084*1fd5a2e1SPrashanth Swaminathan 5085*1fd5a2e1SPrashanth Swaminathan2003-06-19 Franz Sirl <[email protected]> 5086*1fd5a2e1SPrashanth Swaminathan 5087*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Include ffi.h. 5088*1fd5a2e1SPrashanth Swaminathan 5089*1fd5a2e1SPrashanth Swaminathan2003-06-13 Rainer Orth <[email protected]> 5090*1fd5a2e1SPrashanth Swaminathan 5091*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S: Avoid gas-only .uleb128/.sleb128 directives. 5092*1fd5a2e1SPrashanth Swaminathan Use C style comments. 5093*1fd5a2e1SPrashanth Swaminathan 5094*1fd5a2e1SPrashanth Swaminathan2003-06-13 Kaz Kojima <[email protected]> 5095*1fd5a2e1SPrashanth Swaminathan 5096*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add SHmedia support. Fix a typo of SH support. 5097*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 5098*1fd5a2e1SPrashanth Swaminathan * configure.in (sh64-*-linux*, sh5*-*-linux*): Add target. 5099*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5100*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add SHmedia support. 5101*1fd5a2e1SPrashanth Swaminathan * src/sh64/ffi.c: New file. 5102*1fd5a2e1SPrashanth Swaminathan * src/sh64/sysv.S: New file. 5103*1fd5a2e1SPrashanth Swaminathan 5104*1fd5a2e1SPrashanth Swaminathan2003-05-16 Jakub Jelinek <[email protected]> 5105*1fd5a2e1SPrashanth Swaminathan 5106*1fd5a2e1SPrashanth Swaminathan * configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section 5107*1fd5a2e1SPrashanth Swaminathan should be read-only. 5108*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5109*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Rebuilt. 5110*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (EH_FRAME_FLAGS): Define. 5111*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S: Use EH_FRAME_FLAGS. 5112*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S: Likewise. 5113*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S: Likewise. Include ffi.h. 5114*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Use EH_FRAME_FLAGS. Use pcrel encoding 5115*1fd5a2e1SPrashanth Swaminathan if -fpic/-fPIC/-mrelocatable. 5116*1fd5a2e1SPrashanth Swaminathan * src/powerpc/powerpc_closure.S: Likewise. 5117*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: If HAVE_RO_EH_FRAME is defined, don't include 5118*1fd5a2e1SPrashanth Swaminathan #write in .eh_frame flags. 5119*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S: Likewise. 5120*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S: Use EH_FRAME_FLAGS. 5121*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S: Likewise. Use pcrel encoding if -fpic/-fPIC. 5122*1fd5a2e1SPrashanth Swaminathan * src/s390/sysv.S: Use EH_FRAME_FLAGS. Include ffi.h. 5123*1fd5a2e1SPrashanth Swaminathan 5124*1fd5a2e1SPrashanth Swaminathan2003-05-07 Jeff Sturm <[email protected]> 5125*1fd5a2e1SPrashanth Swaminathan 5126*1fd5a2e1SPrashanth Swaminathan Fixes PR bootstrap/10656 5127*1fd5a2e1SPrashanth Swaminathan * configure.in (HAVE_AS_REGISTER_PSEUDO_OP): Test assembler 5128*1fd5a2e1SPrashanth Swaminathan support for .register pseudo-op. 5129*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: Use it. 5130*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Rebuilt. 5131*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5132*1fd5a2e1SPrashanth Swaminathan 5133*1fd5a2e1SPrashanth Swaminathan2003-04-18 Jakub Jelinek <[email protected]> 5134*1fd5a2e1SPrashanth Swaminathan 5135*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (POWERPC64): Define if 64-bit. 5136*1fd5a2e1SPrashanth Swaminathan (enum ffi_abi): Add FFI_LINUX64 on POWERPC. 5137*1fd5a2e1SPrashanth Swaminathan Make it the default on POWERPC64. 5138*1fd5a2e1SPrashanth Swaminathan (FFI_TRAMPOLINE_SIZE): Define to 24 on POWERPC64. 5139*1fd5a2e1SPrashanth Swaminathan * configure.in: Change powerpc-*-linux* into powerpc*-*-linux*. 5140*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5141*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (hidden): Define. 5142*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args_SYSV): Renamed from 5143*1fd5a2e1SPrashanth Swaminathan ffi_prep_args. Cast pointers to unsigned long to shut up warnings. 5144*1fd5a2e1SPrashanth Swaminathan (NUM_GPR_ARG_REGISTERS64, NUM_FPR_ARG_REGISTERS64, 5145*1fd5a2e1SPrashanth Swaminathan ASM_NEEDS_REGISTERS64): New. 5146*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args64): New function. 5147*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Handle FFI_LINUX64 ABI. 5148*1fd5a2e1SPrashanth Swaminathan (ffi_call): Likewise. 5149*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Likewise. 5150*1fd5a2e1SPrashanth Swaminathan (flush_icache): Surround by #ifndef POWERPC64. 5151*1fd5a2e1SPrashanth Swaminathan (ffi_dblfl): New union type. 5152*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Use it to avoid aliasing problems. 5153*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_LINUX64): New function. 5154*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Surround whole file by #ifndef 5155*1fd5a2e1SPrashanth Swaminathan __powerpc64__. 5156*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Likewise. 5157*1fd5a2e1SPrashanth Swaminathan (ffi_call_SYSV): Rename ffi_prep_args to ffi_prep_args_SYSV. 5158*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64.S: New file. 5159*1fd5a2e1SPrashanth Swaminathan * src/powerpc/linux64_closure.S: New file. 5160*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add src/powerpc/linux64.S and 5161*1fd5a2e1SPrashanth Swaminathan src/powerpc/linux64_closure.S. 5162*1fd5a2e1SPrashanth Swaminathan (TARGET_SRC_POWERPC): Likewise. 5163*1fd5a2e1SPrashanth Swaminathan 5164*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (closure_test_fn, closure_test_fn1, closure_test_fn2, 5165*1fd5a2e1SPrashanth Swaminathan closure_test_fn3): Fix result printing on big-endian 64-bit 5166*1fd5a2e1SPrashanth Swaminathan machines. 5167*1fd5a2e1SPrashanth Swaminathan (main): Print tst2_arg instead of uninitialized tst2_result. 5168*1fd5a2e1SPrashanth Swaminathan 5169*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (main): Hide what closure pointer really points to 5170*1fd5a2e1SPrashanth Swaminathan from the compiler. 5171*1fd5a2e1SPrashanth Swaminathan 5172*1fd5a2e1SPrashanth Swaminathan2003-04-16 Richard Earnshaw <[email protected]> 5173*1fd5a2e1SPrashanth Swaminathan 5174*1fd5a2e1SPrashanth Swaminathan * configure.in (arm-*-netbsdelf*): Add configuration. 5175*1fd5a2e1SPrashanth Swaminathan (configure): Regenerated. 5176*1fd5a2e1SPrashanth Swaminathan 5177*1fd5a2e1SPrashanth Swaminathan2003-04-04 Loren J. Rittle <[email protected]> 5178*1fd5a2e1SPrashanth Swaminathan 5179*1fd5a2e1SPrashanth Swaminathan * include/Makefile.in: Regenerate. 5180*1fd5a2e1SPrashanth Swaminathan 5181*1fd5a2e1SPrashanth Swaminathan2003-03-21 Zdenek Dvorak <[email protected]> 5182*1fd5a2e1SPrashanth Swaminathan 5183*1fd5a2e1SPrashanth Swaminathan * libffi/include/ffi.h.in: Define X86 instead of X86_64 in 32 5184*1fd5a2e1SPrashanth Swaminathan bit mode. 5185*1fd5a2e1SPrashanth Swaminathan * libffi/src/x86/ffi.c (ffi_closure_SYSV, ffi_closure_raw_SYSV): 5186*1fd5a2e1SPrashanth Swaminathan Receive closure pointer through parameter, read args using 5187*1fd5a2e1SPrashanth Swaminathan __builtin_dwarf_cfa. 5188*1fd5a2e1SPrashanth Swaminathan (FFI_INIT_TRAMPOLINE): Send closure reference through eax. 5189*1fd5a2e1SPrashanth Swaminathan 5190*1fd5a2e1SPrashanth Swaminathan2003-03-12 Andreas Schwab <[email protected]> 5191*1fd5a2e1SPrashanth Swaminathan 5192*1fd5a2e1SPrashanth Swaminathan * configure.in: Avoid trailing /. in toolexeclibdir. 5193*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5194*1fd5a2e1SPrashanth Swaminathan 5195*1fd5a2e1SPrashanth Swaminathan2003-03-03 Andreas Tobler <[email protected]> 5196*1fd5a2e1SPrashanth Swaminathan 5197*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Recode to fit dynamic libraries. 5198*1fd5a2e1SPrashanth Swaminathan 5199*1fd5a2e1SPrashanth Swaminathan2003-02-06 Andreas Tobler <[email protected]> 5200*1fd5a2e1SPrashanth Swaminathan 5201*1fd5a2e1SPrashanth Swaminathan * libffi/src/powerpc/darwin_closure.S: 5202*1fd5a2e1SPrashanth Swaminathan Fix alignement bug, allocate 8 bytes for the result. 5203*1fd5a2e1SPrashanth Swaminathan * libffi/src/powerpc/aix_closure.S: 5204*1fd5a2e1SPrashanth Swaminathan Likewise. 5205*1fd5a2e1SPrashanth Swaminathan * libffi/src/powerpc/ffi_darwin.c: 5206*1fd5a2e1SPrashanth Swaminathan Update stackframe description for aix/darwin_closure.S. 5207*1fd5a2e1SPrashanth Swaminathan 5208*1fd5a2e1SPrashanth Swaminathan2003-02-06 Jakub Jelinek <[email protected]> 5209*1fd5a2e1SPrashanth Swaminathan 5210*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c (ffi_closure_helper_SYSV): Add hidden visibility 5211*1fd5a2e1SPrashanth Swaminathan attribute. 5212*1fd5a2e1SPrashanth Swaminathan 5213*1fd5a2e1SPrashanth Swaminathan2003-01-31 Christian Cornelssen <[email protected]>, 5214*1fd5a2e1SPrashanth Swaminathan Andreas Schwab <[email protected]> 5215*1fd5a2e1SPrashanth Swaminathan 5216*1fd5a2e1SPrashanth Swaminathan * configure.in: Adjust command to source config-ml.in to account 5217*1fd5a2e1SPrashanth Swaminathan for changes to the libffi_basedir definition. 5218*1fd5a2e1SPrashanth Swaminathan (libffi_basedir): Remove ${srcdir} from value and include trailing 5219*1fd5a2e1SPrashanth Swaminathan slash if nonempty. 5220*1fd5a2e1SPrashanth Swaminathan 5221*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5222*1fd5a2e1SPrashanth Swaminathan 5223*1fd5a2e1SPrashanth Swaminathan2003-01-29 Franz Sirl <[email protected]> 5224*1fd5a2e1SPrashanth Swaminathan 5225*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Recode to fit shared libs. 5226*1fd5a2e1SPrashanth Swaminathan 5227*1fd5a2e1SPrashanth Swaminathan2003-01-28 Andrew Haley <[email protected]> 5228*1fd5a2e1SPrashanth Swaminathan 5229*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Enable FFI_CLOSURES for x86_64. 5230*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (ffi_prep_closure): New. 5231*1fd5a2e1SPrashanth Swaminathan (ffi_closure_UNIX64_inner): New. 5232*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S (ffi_closure_UNIX64): New. 5233*1fd5a2e1SPrashanth Swaminathan 5234*1fd5a2e1SPrashanth Swaminathan2003-01-27 Alexandre Oliva <[email protected]> 5235*1fd5a2e1SPrashanth Swaminathan 5236*1fd5a2e1SPrashanth Swaminathan * configure.in (toolexecdir, toolexeclibdir): Set and AC_SUBST. 5237*1fd5a2e1SPrashanth Swaminathan Remove USE_LIBDIR conditional. 5238*1fd5a2e1SPrashanth Swaminathan * Makefile.am (toolexecdir, toolexeclibdir): Don't override. 5239*1fd5a2e1SPrashanth Swaminathan * Makefile.in, configure: Rebuilt. 5240*1fd5a2e1SPrashanth Swaminathan 5241*1fd5a2e1SPrashanth Swaminathan2003-01027 David Edelsohn <[email protected]> 5242*1fd5a2e1SPrashanth Swaminathan 5243*1fd5a2e1SPrashanth Swaminathan * Makefile.am (TARGET_SRC_POWERPC_AIX): Fix typo. 5244*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 5245*1fd5a2e1SPrashanth Swaminathan 5246*1fd5a2e1SPrashanth Swaminathan2003-01-22 Andrew Haley <[email protected]> 5247*1fd5a2e1SPrashanth Swaminathan 5248*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S (_ffi_call_AIX): Add Augmentation size to 5249*1fd5a2e1SPrashanth Swaminathan unwind info. 5250*1fd5a2e1SPrashanth Swaminathan 5251*1fd5a2e1SPrashanth Swaminathan2003-01-21 Andreas Tobler <[email protected]> 5252*1fd5a2e1SPrashanth Swaminathan 5253*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Add unwind info. 5254*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: Likewise. 5255*1fd5a2e1SPrashanth Swaminathan 5256*1fd5a2e1SPrashanth Swaminathan2003-01-14 Andrew Haley <[email protected]> 5257*1fd5a2e1SPrashanth Swaminathan 5258*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (ffi_prep_args): Check for void retval. 5259*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Likewise. 5260*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S: Add unwind info. 5261*1fd5a2e1SPrashanth Swaminathan 5262*1fd5a2e1SPrashanth Swaminathan2003-01-14 Andreas Jaeger <[email protected]> 5263*1fd5a2e1SPrashanth Swaminathan 5264*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (main): Only use ffi_closures if those are 5265*1fd5a2e1SPrashanth Swaminathan supported. 5266*1fd5a2e1SPrashanth Swaminathan 5267*1fd5a2e1SPrashanth Swaminathan2003-01-13 Andreas Tobler <[email protected]> 5268*1fd5a2e1SPrashanth Swaminathan 5269*1fd5a2e1SPrashanth Swaminathan * libffi/src/ffitest.c 5270*1fd5a2e1SPrashanth Swaminathan add closure testcases 5271*1fd5a2e1SPrashanth Swaminathan 5272*1fd5a2e1SPrashanth Swaminathan2003-01-13 Kevin B. Hendricks <[email protected]> 5273*1fd5a2e1SPrashanth Swaminathan 5274*1fd5a2e1SPrashanth Swaminathan * libffi/src/powerpc/ffi.c 5275*1fd5a2e1SPrashanth Swaminathan fix alignment bug for float (4 byte aligned iso 8 byte) 5276*1fd5a2e1SPrashanth Swaminathan 5277*1fd5a2e1SPrashanth Swaminathan2003-01-09 Geoffrey Keating <[email protected]> 5278*1fd5a2e1SPrashanth Swaminathan 5279*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: Remove RCS version string. 5280*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: Remove RCS version string. 5281*1fd5a2e1SPrashanth Swaminathan 5282*1fd5a2e1SPrashanth Swaminathan2003-01-03 Jeff Sturm <[email protected]> 5283*1fd5a2e1SPrashanth Swaminathan 5284*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add closure defines for SPARC, SPARC64. 5285*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (main): Use static storage for closure. 5286*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_closure, ffi_closure_sparc_inner): New. 5287*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S (ffi_closure_v8): New. 5288*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S (ffi_closure_v9): New. 5289*1fd5a2e1SPrashanth Swaminathan 5290*1fd5a2e1SPrashanth Swaminathan2002-11-10 Ranjit Mathew <[email protected]> 5291*1fd5a2e1SPrashanth Swaminathan 5292*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Added FFI_STDCALL ffi_type 5293*1fd5a2e1SPrashanth Swaminathan enumeration for X86_WIN32. 5294*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S: Added ffi_call_STDCALL function 5295*1fd5a2e1SPrashanth Swaminathan definition. 5296*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_call/ffi_raw_call): Added 5297*1fd5a2e1SPrashanth Swaminathan switch cases for recognising FFI_STDCALL and 5298*1fd5a2e1SPrashanth Swaminathan calling ffi_call_STDCALL if target is X86_WIN32. 5299*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (my_stdcall_strlen/stdcall_many): 5300*1fd5a2e1SPrashanth Swaminathan stdcall versions of the "my_strlen" and "many" 5301*1fd5a2e1SPrashanth Swaminathan test functions (for X86_WIN32). 5302*1fd5a2e1SPrashanth Swaminathan Added test cases to test stdcall invocation using 5303*1fd5a2e1SPrashanth Swaminathan these functions. 5304*1fd5a2e1SPrashanth Swaminathan 5305*1fd5a2e1SPrashanth Swaminathan2002-12-02 Kaz Kojima <[email protected]> 5306*1fd5a2e1SPrashanth Swaminathan 5307*1fd5a2e1SPrashanth Swaminathan * src/sh/sysv.S: Add DWARF2 unwind info. 5308*1fd5a2e1SPrashanth Swaminathan 5309*1fd5a2e1SPrashanth Swaminathan2002-11-27 Ulrich Weigand <[email protected]> 5310*1fd5a2e1SPrashanth Swaminathan 5311*1fd5a2e1SPrashanth Swaminathan * src/s390/sysv.S (.eh_frame section): Make section read-only. 5312*1fd5a2e1SPrashanth Swaminathan 5313*1fd5a2e1SPrashanth Swaminathan2002-11-26 Jim Wilson <[email protected]> 5314*1fd5a2e1SPrashanth Swaminathan 5315*1fd5a2e1SPrashanth Swaminathan * src/types.c (FFI_TYPE_POINTER): Has size 8 on IA64. 5316*1fd5a2e1SPrashanth Swaminathan 5317*1fd5a2e1SPrashanth Swaminathan2002-11-23 H.J. Lu <[email protected]> 5318*1fd5a2e1SPrashanth Swaminathan 5319*1fd5a2e1SPrashanth Swaminathan * acinclude.m4: Add dummy AM_PROG_LIBTOOL. 5320*1fd5a2e1SPrashanth Swaminathan Include ../config/accross.m4. 5321*1fd5a2e1SPrashanth Swaminathan * aclocal.m4; Rebuild. 5322*1fd5a2e1SPrashanth Swaminathan * configure: Likewise. 5323*1fd5a2e1SPrashanth Swaminathan 5324*1fd5a2e1SPrashanth Swaminathan2002-11-15 Ulrich Weigand <[email protected]> 5325*1fd5a2e1SPrashanth Swaminathan 5326*1fd5a2e1SPrashanth Swaminathan * src/s390/sysv.S (.eh_frame section): Adapt to pcrel FDE encoding. 5327*1fd5a2e1SPrashanth Swaminathan 5328*1fd5a2e1SPrashanth Swaminathan2002-11-11 DJ Delorie <[email protected]> 5329*1fd5a2e1SPrashanth Swaminathan 5330*1fd5a2e1SPrashanth Swaminathan * configure.in: Look for common files in the right place. 5331*1fd5a2e1SPrashanth Swaminathan 5332*1fd5a2e1SPrashanth Swaminathan2002-10-08 Ulrich Weigand <[email protected]> 5333*1fd5a2e1SPrashanth Swaminathan 5334*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c (ffi_java_raw_to_ptrarray): Interpret 5335*1fd5a2e1SPrashanth Swaminathan raw data as _Jv_word values, not ffi_raw. 5336*1fd5a2e1SPrashanth Swaminathan (ffi_java_ptrarray_to_raw): Likewise. 5337*1fd5a2e1SPrashanth Swaminathan (ffi_java_rvalue_to_raw): New function. 5338*1fd5a2e1SPrashanth Swaminathan (ffi_java_raw_call): Call it. 5339*1fd5a2e1SPrashanth Swaminathan (ffi_java_raw_to_rvalue): New function. 5340*1fd5a2e1SPrashanth Swaminathan (ffi_java_translate_args): Call it. 5341*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (closure_test_fn): Interpret return value 5342*1fd5a2e1SPrashanth Swaminathan as ffi_arg, not int. 5343*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c (ffi_prep_cif_machdep): Add missing 5344*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_POINTER case. 5345*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Likewise. Also, assume return 5346*1fd5a2e1SPrashanth Swaminathan values extended to word size. 5347*1fd5a2e1SPrashanth Swaminathan 5348*1fd5a2e1SPrashanth Swaminathan2002-10-02 Andreas Jaeger <[email protected]> 5349*1fd5a2e1SPrashanth Swaminathan 5350*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c (ffi_prep_cif_machdep): Remove debug output. 5351*1fd5a2e1SPrashanth Swaminathan 5352*1fd5a2e1SPrashanth Swaminathan2002-10-01 Bo Thorsen <[email protected]> 5353*1fd5a2e1SPrashanth Swaminathan 5354*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Fix i386 win32 compilation. 5355*1fd5a2e1SPrashanth Swaminathan 5356*1fd5a2e1SPrashanth Swaminathan2002-09-30 Ulrich Weigand <[email protected]> 5357*1fd5a2e1SPrashanth Swaminathan 5358*1fd5a2e1SPrashanth Swaminathan * configure.in: Add s390x-*-linux-* target. 5359*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5360*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Define S390X for s390x targets. 5361*1fd5a2e1SPrashanth Swaminathan (FFI_CLOSURES): Define for s390/s390x. 5362*1fd5a2e1SPrashanth Swaminathan (FFI_TRAMPOLINE_SIZE): Likewise. 5363*1fd5a2e1SPrashanth Swaminathan (FFI_NATIVE_RAW_API): Likewise. 5364*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif): Do not compute stack space for s390. 5365*1fd5a2e1SPrashanth Swaminathan * src/types.c (FFI_TYPE_POINTER): Use 8-byte pointers on s390x. 5366*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c: Major rework of existing code. Add support for 5367*1fd5a2e1SPrashanth Swaminathan s390x targets. Add closure support. 5368*1fd5a2e1SPrashanth Swaminathan * src/s390/sysv.S: Likewise. 5369*1fd5a2e1SPrashanth Swaminathan 5370*1fd5a2e1SPrashanth Swaminathan2002-09-29 Richard Earnshaw <[email protected]> 5371*1fd5a2e1SPrashanth Swaminathan 5372*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Fix typo. 5373*1fd5a2e1SPrashanth Swaminathan 5374*1fd5a2e1SPrashanth Swaminathan2002-09-28 Richard Earnshaw <[email protected]> 5375*1fd5a2e1SPrashanth Swaminathan 5376*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: If we don't have machine/asm.h and the pre-processor 5377*1fd5a2e1SPrashanth Swaminathan has defined __USER_LABEL_PREFIX__, then use it in CNAME. 5378*1fd5a2e1SPrashanth Swaminathan (ffi_call_SYSV): Handle soft-float. 5379*1fd5a2e1SPrashanth Swaminathan 5380*1fd5a2e1SPrashanth Swaminathan2002-09-27 Bo Thorsen <[email protected]> 5381*1fd5a2e1SPrashanth Swaminathan 5382*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Fix multilib x86-64 support. 5383*1fd5a2e1SPrashanth Swaminathan 5384*1fd5a2e1SPrashanth Swaminathan2002-09-22 Kaveh R. Ghazi <[email protected]> 5385*1fd5a2e1SPrashanth Swaminathan 5386*1fd5a2e1SPrashanth Swaminathan * Makefile.am (all-multi): Fix multilib parallel build. 5387*1fd5a2e1SPrashanth Swaminathan 5388*1fd5a2e1SPrashanth Swaminathan2002-07-19 Kaz Kojima <[email protected]> 5389*1fd5a2e1SPrashanth Swaminathan 5390*1fd5a2e1SPrashanth Swaminathan * configure.in (sh[34]*-*-linux*): Add brackets. 5391*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5392*1fd5a2e1SPrashanth Swaminathan 5393*1fd5a2e1SPrashanth Swaminathan2002-07-18 Kaz Kojima <[email protected]> 5394*1fd5a2e1SPrashanth Swaminathan 5395*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add SH support. 5396*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 5397*1fd5a2e1SPrashanth Swaminathan * configure.in (sh-*-linux*, sh[34]*-*-linux*): Add target. 5398*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5399*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add SH support. 5400*1fd5a2e1SPrashanth Swaminathan * src/sh/ffi.c: New file. 5401*1fd5a2e1SPrashanth Swaminathan * src/sh/sysv.S: New file. 5402*1fd5a2e1SPrashanth Swaminathan * src/types.c: Add SH support. 5403*1fd5a2e1SPrashanth Swaminathan 5404*1fd5a2e1SPrashanth Swaminathan2002-07-16 Bo Thorsen <[email protected]> 5405*1fd5a2e1SPrashanth Swaminathan 5406*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi64.c: New file that adds x86-64 support. 5407*1fd5a2e1SPrashanth Swaminathan * src/x86/unix64.S: New file that handles argument setup for 5408*1fd5a2e1SPrashanth Swaminathan x86-64. 5409*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S: Don't use this on x86-64. 5410*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Don't use this on x86-64. 5411*1fd5a2e1SPrashanth Swaminathan Remove unused vars. 5412*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif): Don't do stack size calculation 5413*1fd5a2e1SPrashanth Swaminathan for x86-64. 5414*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (struct6): New test that tests a special case in 5415*1fd5a2e1SPrashanth Swaminathan the x86-64 ABI. 5416*1fd5a2e1SPrashanth Swaminathan (struct7): Likewise. 5417*1fd5a2e1SPrashanth Swaminathan (struct8): Likewise. 5418*1fd5a2e1SPrashanth Swaminathan (struct9): Likewise. 5419*1fd5a2e1SPrashanth Swaminathan (closure_test_fn): Silence warning about this when it's not used. 5420*1fd5a2e1SPrashanth Swaminathan (main): Add the new tests. 5421*1fd5a2e1SPrashanth Swaminathan (main): Fix a couple of wrong casts and silence some compiler warnings. 5422*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add x86-64 ABI definition. 5423*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Regenerate. 5424*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add x86-64 support. 5425*1fd5a2e1SPrashanth Swaminathan * configure.in: Likewise. 5426*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 5427*1fd5a2e1SPrashanth Swaminathan * configure: Likewise. 5428*1fd5a2e1SPrashanth Swaminathan 5429*1fd5a2e1SPrashanth Swaminathan2002-06-24 Bo Thorsen <[email protected]> 5430*1fd5a2e1SPrashanth Swaminathan 5431*1fd5a2e1SPrashanth Swaminathan * src/types.c: Merge settings for similar architectures. 5432*1fd5a2e1SPrashanth Swaminathan Add x86-64 sizes and alignments. 5433*1fd5a2e1SPrashanth Swaminathan 5434*1fd5a2e1SPrashanth Swaminathan2002-06-23 Bo Thorsen <[email protected]> 5435*1fd5a2e1SPrashanth Swaminathan 5436*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c (ffi_prep_args): Remove unused vars. 5437*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_args_v8): Likewise. 5438*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c (ffi_prep_args): Likewise. 5439*1fd5a2e1SPrashanth Swaminathan * src/m68k/ffi.c (ffi_prep_args): Likewise. 5440*1fd5a2e1SPrashanth Swaminathan 5441*1fd5a2e1SPrashanth Swaminathan2002-07-18 H.J. Lu ([email protected]) 5442*1fd5a2e1SPrashanth Swaminathan 5443*1fd5a2e1SPrashanth Swaminathan * Makefile.am (TARGET_SRC_MIPS_LINUX): New. 5444*1fd5a2e1SPrashanth Swaminathan (libffi_la_SOURCES): Support MIPS_LINUX. 5445*1fd5a2e1SPrashanth Swaminathan (libffi_convenience_la_SOURCES): Likewise. 5446*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerated. 5447*1fd5a2e1SPrashanth Swaminathan 5448*1fd5a2e1SPrashanth Swaminathan * configure.in (mips64*-*): Skip. 5449*1fd5a2e1SPrashanth Swaminathan (mips*-*-linux*): New. 5450*1fd5a2e1SPrashanth Swaminathan * configure: Regenerated. 5451*1fd5a2e1SPrashanth Swaminathan 5452*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c: Include <sgidefs.h>. 5453*1fd5a2e1SPrashanth Swaminathan 5454*1fd5a2e1SPrashanth Swaminathan2002-06-06 Ulrich Weigand <[email protected]> 5455*1fd5a2e1SPrashanth Swaminathan 5456*1fd5a2e1SPrashanth Swaminathan * src/s390/sysv.S: Save/restore %r6. Add DWARF-2 unwind info. 5457*1fd5a2e1SPrashanth Swaminathan 5458*1fd5a2e1SPrashanth Swaminathan2002-05-27 Roger Sayle <[email protected]> 5459*1fd5a2e1SPrashanth Swaminathan 5460*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_args): Remove reference to avn. 5461*1fd5a2e1SPrashanth Swaminathan 5462*1fd5a2e1SPrashanth Swaminathan2002-05-27 Bo Thorsen <[email protected]> 5463*1fd5a2e1SPrashanth Swaminathan 5464*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_args): Remove unused variable and 5465*1fd5a2e1SPrashanth Swaminathan fix formatting. 5466*1fd5a2e1SPrashanth Swaminathan 5467*1fd5a2e1SPrashanth Swaminathan2002-05-13 Andreas Tobler <[email protected]> 5468*1fd5a2e1SPrashanth Swaminathan 5469*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_closure): Declare fd at 5470*1fd5a2e1SPrashanth Swaminathan beginning of function (for older apple cc). 5471*1fd5a2e1SPrashanth Swaminathan 5472*1fd5a2e1SPrashanth Swaminathan2002-05-08 Alexandre Oliva <[email protected]> 5473*1fd5a2e1SPrashanth Swaminathan 5474*1fd5a2e1SPrashanth Swaminathan * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at 5475*1fd5a2e1SPrashanth Swaminathan script entry, and set LD to it when configuring multilibs. 5476*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5477*1fd5a2e1SPrashanth Swaminathan 5478*1fd5a2e1SPrashanth Swaminathan2002-05-05 Jason Thorpe <[email protected]> 5479*1fd5a2e1SPrashanth Swaminathan 5480*1fd5a2e1SPrashanth Swaminathan * configure.in (sparc64-*-netbsd*): Add target. 5481*1fd5a2e1SPrashanth Swaminathan (sparc-*-netbsdelf*): Likewise. 5482*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5483*1fd5a2e1SPrashanth Swaminathan 5484*1fd5a2e1SPrashanth Swaminathan2002-04-28 David S. Miller <[email protected]> 5485*1fd5a2e1SPrashanth Swaminathan 5486*1fd5a2e1SPrashanth Swaminathan * configure.in, configure: Fix SPARC test in previous change. 5487*1fd5a2e1SPrashanth Swaminathan 5488*1fd5a2e1SPrashanth Swaminathan2002-04-29 Gerhard Tonn <[email protected]> 5489*1fd5a2e1SPrashanth Swaminathan 5490*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add Linux for S/390 support. 5491*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 5492*1fd5a2e1SPrashanth Swaminathan * configure.in: Add Linux for S/390 support. 5493*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5494*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add Linux for S/390 support. 5495*1fd5a2e1SPrashanth Swaminathan * src/s390/ffi.c: New file from libffi CVS tree. 5496*1fd5a2e1SPrashanth Swaminathan * src/s390/sysv.S: New file from libffi CVS tree. 5497*1fd5a2e1SPrashanth Swaminathan 5498*1fd5a2e1SPrashanth Swaminathan2002-04-28 Jakub Jelinek <[email protected]> 5499*1fd5a2e1SPrashanth Swaminathan 5500*1fd5a2e1SPrashanth Swaminathan * configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working 5501*1fd5a2e1SPrashanth Swaminathan %r_disp32(). 5502*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: Use it. 5503*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S: Likewise. 5504*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Rebuilt. 5505*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5506*1fd5a2e1SPrashanth Swaminathan 5507*1fd5a2e1SPrashanth Swaminathan2002-04-08 Hans Boehm <[email protected]> 5508*1fd5a2e1SPrashanth Swaminathan 5509*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE 5510*1fd5a2e1SPrashanth Swaminathan correctly. 5511*1fd5a2e1SPrashanth Swaminathan * src/ia64/unix.S: Add unwind information. Fix comments. 5512*1fd5a2e1SPrashanth Swaminathan Save sp in a way that's compatible with unwind info. 5513*1fd5a2e1SPrashanth Swaminathan (ffi_call_unix): Correctly restore sp in all cases. 5514*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c: Add, fix comments. 5515*1fd5a2e1SPrashanth Swaminathan 5516*1fd5a2e1SPrashanth Swaminathan2002-04-08 Jakub Jelinek <[email protected]> 5517*1fd5a2e1SPrashanth Swaminathan 5518*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: Make .eh_frame dependent on target word size. 5519*1fd5a2e1SPrashanth Swaminathan 5520*1fd5a2e1SPrashanth Swaminathan2002-04-06 Jason Thorpe <[email protected]> 5521*1fd5a2e1SPrashanth Swaminathan 5522*1fd5a2e1SPrashanth Swaminathan * configure.in (alpha*-*-netbsd*): Add target. 5523*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5524*1fd5a2e1SPrashanth Swaminathan 5525*1fd5a2e1SPrashanth Swaminathan2002-04-04 Jeff Sturm <[email protected]> 5526*1fd5a2e1SPrashanth Swaminathan 5527*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: Add unwind info. 5528*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S: Likewise. 5529*1fd5a2e1SPrashanth Swaminathan 5530*1fd5a2e1SPrashanth Swaminathan2002-03-30 Krister Walfridsson <[email protected]> 5531*1fd5a2e1SPrashanth Swaminathan 5532*1fd5a2e1SPrashanth Swaminathan * configure.in: Enable i*86-*-netbsdelf*. 5533*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5534*1fd5a2e1SPrashanth Swaminathan 5535*1fd5a2e1SPrashanth Swaminathan2002-03-29 David Billinghurst <[email protected]> 5536*1fd5a2e1SPrashanth Swaminathan 5537*1fd5a2e1SPrashanth Swaminathan PR other/2620 5538*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.s: Delete 5539*1fd5a2e1SPrashanth Swaminathan * src/mips/o32.s: Delete 5540*1fd5a2e1SPrashanth Swaminathan 5541*1fd5a2e1SPrashanth Swaminathan2002-03-21 Loren J. Rittle <[email protected]> 5542*1fd5a2e1SPrashanth Swaminathan 5543*1fd5a2e1SPrashanth Swaminathan * configure.in: Enable alpha*-*-freebsd*. 5544*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5545*1fd5a2e1SPrashanth Swaminathan 5546*1fd5a2e1SPrashanth Swaminathan2002-03-17 Bryce McKinlay <[email protected]> 5547*1fd5a2e1SPrashanth Swaminathan 5548*1fd5a2e1SPrashanth Swaminathan * Makefile.am: libfficonvenience -> libffi_convenience. 5549*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5550*1fd5a2e1SPrashanth Swaminathan 5551*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Define ffitest_OBJECTS. 5552*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5553*1fd5a2e1SPrashanth Swaminathan 5554*1fd5a2e1SPrashanth Swaminathan2002-03-07 Andreas Tobler <[email protected]> 5555*1fd5a2e1SPrashanth Swaminathan David Edelsohn <[email protected]> 5556*1fd5a2e1SPrashanth Swaminathan 5557*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add Darwin and AIX closure files. 5558*1fd5a2e1SPrashanth Swaminathan (TARGET_SRC_POWERPC_AIX): Add aix_closure.S. 5559*1fd5a2e1SPrashanth Swaminathan (TARGET_SRC_POWERPC_DARWIN): Add darwin_closure.S. 5560*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 5561*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add AIX and Darwin closure definitions. 5562*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_closure): New function. 5563*1fd5a2e1SPrashanth Swaminathan (flush_icache, flush_range): New functions. 5564*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_DARWIN): New function. 5565*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix_closure.S: New file. 5566*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin_closure.S: New file. 5567*1fd5a2e1SPrashanth Swaminathan 5568*1fd5a2e1SPrashanth Swaminathan2002-02-24 Jeff Sturm <[email protected]> 5569*1fd5a2e1SPrashanth Swaminathan 5570*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add typedef for ffi_arg. 5571*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (main): Declare rint with ffi_arg. 5572*1fd5a2e1SPrashanth Swaminathan 5573*1fd5a2e1SPrashanth Swaminathan2002-02-21 Andreas Tobler <[email protected]> 5574*1fd5a2e1SPrashanth Swaminathan 5575*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate 5576*1fd5a2e1SPrashanth Swaminathan number of GPRs for floating-point arguments. 5577*1fd5a2e1SPrashanth Swaminathan 5578*1fd5a2e1SPrashanth Swaminathan2002-01-31 Anthony Green <[email protected]> 5579*1fd5a2e1SPrashanth Swaminathan 5580*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5581*1fd5a2e1SPrashanth Swaminathan * configure.in: Replace CHECK_SIZEOF and endian tests with 5582*1fd5a2e1SPrashanth Swaminathan cross-compiler friendly macros. 5583*1fd5a2e1SPrashanth Swaminathan * aclocal.m4 (AC_COMPILE_CHECK_SIZEOF, AC_C_BIGENDIAN_CROSS): New 5584*1fd5a2e1SPrashanth Swaminathan macros. 5585*1fd5a2e1SPrashanth Swaminathan 5586*1fd5a2e1SPrashanth Swaminathan2002-01-18 David Edelsohn <[email protected]> 5587*1fd5a2e1SPrashanth Swaminathan 5588*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S (_ffi_call_AIX): New. 5589*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S (ffi_call_DARWIN): New. 5590*1fd5a2e1SPrashanth Swaminathan 5591*1fd5a2e1SPrashanth Swaminathan2002-01-17 David Edelsohn <[email protected]> 5592*1fd5a2e1SPrashanth Swaminathan 5593*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Add Darwin and AIX files. 5594*1fd5a2e1SPrashanth Swaminathan (TARGET_SRC_POWERPC_AIX): New. 5595*1fd5a2e1SPrashanth Swaminathan (POWERPC_AIX): New stanza. 5596*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Regenerate. 5597*1fd5a2e1SPrashanth Swaminathan * configure.in: Add AIX case. 5598*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5599*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (ffi_abi): Add FFI_AIX. 5600*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c (ffi_status): Use "long" to scale frame 5601*1fd5a2e1SPrashanth Swaminathan size. Fix "long double" support. 5602*1fd5a2e1SPrashanth Swaminathan (ffi_call): Add FFI_AIX case. 5603*1fd5a2e1SPrashanth Swaminathan * src/powerpc/aix.S: New. 5604*1fd5a2e1SPrashanth Swaminathan 5605*1fd5a2e1SPrashanth Swaminathan2001-10-09 John Hornkvist <[email protected]> 5606*1fd5a2e1SPrashanth Swaminathan 5607*1fd5a2e1SPrashanth Swaminathan Implement Darwin PowerPC ABI. 5608*1fd5a2e1SPrashanth Swaminathan * configure.in: Handle powerpc-*-darwin*. 5609*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Set source files for POWERPC_DARWIN. 5610*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5611*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5612*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for 5613*1fd5a2e1SPrashanth Swaminathan POWERPC_DARWIN. 5614*1fd5a2e1SPrashanth Swaminathan * src/powerpc/darwin.S: New file. 5615*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi_darwin.c: New file. 5616*1fd5a2e1SPrashanth Swaminathan 5617*1fd5a2e1SPrashanth Swaminathan2001-10-07 Joseph S. Myers <[email protected]> 5618*1fd5a2e1SPrashanth Swaminathan 5619*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Fix spelling error of "separate" as "seperate". 5620*1fd5a2e1SPrashanth Swaminathan 5621*1fd5a2e1SPrashanth Swaminathan2001-07-16 Rainer Orth <[email protected]> 5622*1fd5a2e1SPrashanth Swaminathan 5623*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S: Avoid gas-only .balign directive. 5624*1fd5a2e1SPrashanth Swaminathan Use C style comments. 5625*1fd5a2e1SPrashanth Swaminathan 5626*1fd5a2e1SPrashanth Swaminathan2001-07-16 Rainer Orth <[email protected]> 5627*1fd5a2e1SPrashanth Swaminathan 5628*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic. 5629*1fd5a2e1SPrashanth Swaminathan Fixes PR bootstrap/3563. 5630*1fd5a2e1SPrashanth Swaminathan 5631*1fd5a2e1SPrashanth Swaminathan2001-06-26 Rainer Orth <[email protected]> 5632*1fd5a2e1SPrashanth Swaminathan 5633*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S (ffi_closure_osf): Use .rdata for ECOFF. 5634*1fd5a2e1SPrashanth Swaminathan 5635*1fd5a2e1SPrashanth Swaminathan2001-06-25 Rainer Orth <[email protected]> 5636*1fd5a2e1SPrashanth Swaminathan 5637*1fd5a2e1SPrashanth Swaminathan * configure.in: Recognize sparc*-sun-* host. 5638*1fd5a2e1SPrashanth Swaminathan * configure: Regenerate. 5639*1fd5a2e1SPrashanth Swaminathan 5640*1fd5a2e1SPrashanth Swaminathan2001-06-06 Andrew Haley <[email protected]> 5641*1fd5a2e1SPrashanth Swaminathan 5642*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S (__FRAME_BEGIN__): Conditionalize for ELF. 5643*1fd5a2e1SPrashanth Swaminathan 5644*1fd5a2e1SPrashanth Swaminathan2001-06-03 Andrew Haley <[email protected]> 5645*1fd5a2e1SPrashanth Swaminathan 5646*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S: Add unwind info. 5647*1fd5a2e1SPrashanth Swaminathan * src/powerpc/sysv.S: Add unwind info. 5648*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: Likewise. 5649*1fd5a2e1SPrashanth Swaminathan 5650*1fd5a2e1SPrashanth Swaminathan2000-05-31 Jeff Sturm <[email protected]> 5651*1fd5a2e1SPrashanth Swaminathan 5652*1fd5a2e1SPrashanth Swaminathan * configure.in: Fix AC_ARG_ENABLE usage. 5653*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5654*1fd5a2e1SPrashanth Swaminathan 5655*1fd5a2e1SPrashanth Swaminathan2001-05-06 Bryce McKinlay <[email protected]> 5656*1fd5a2e1SPrashanth Swaminathan 5657*1fd5a2e1SPrashanth Swaminathan * configure.in: Remove warning about beta code. 5658*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5659*1fd5a2e1SPrashanth Swaminathan 5660*1fd5a2e1SPrashanth Swaminathan2001-04-25 Hans Boehm <[email protected]> 5661*1fd5a2e1SPrashanth Swaminathan 5662*1fd5a2e1SPrashanth Swaminathan * src/ia64/unix.S: Restore stack pointer when returning from 5663*1fd5a2e1SPrashanth Swaminathan ffi_closure_UNIX. 5664*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c: Fix typo in comment. 5665*1fd5a2e1SPrashanth Swaminathan 5666*1fd5a2e1SPrashanth Swaminathan2001-04-18 Jim Wilson <[email protected]> 5667*1fd5a2e1SPrashanth Swaminathan 5668*1fd5a2e1SPrashanth Swaminathan * src/ia64/unix.S: Delete unnecessary increment and decrement of loc2 5669*1fd5a2e1SPrashanth Swaminathan to eliminate RAW DV. 5670*1fd5a2e1SPrashanth Swaminathan 5671*1fd5a2e1SPrashanth Swaminathan2001-04-12 Bryce McKinlay <[email protected]> 5672*1fd5a2e1SPrashanth Swaminathan 5673*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Make a libtool convenience library. 5674*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5675*1fd5a2e1SPrashanth Swaminathan 5676*1fd5a2e1SPrashanth Swaminathan2001-03-29 Bryce McKinlay <[email protected]> 5677*1fd5a2e1SPrashanth Swaminathan 5678*1fd5a2e1SPrashanth Swaminathan * configure.in: Use different syntax for subdirectory creation. 5679*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5680*1fd5a2e1SPrashanth Swaminathan 5681*1fd5a2e1SPrashanth Swaminathan2001-03-27 Jon Beniston <[email protected]> 5682*1fd5a2e1SPrashanth Swaminathan 5683*1fd5a2e1SPrashanth Swaminathan * configure.in: Added X86_WIN32 target (Win32, CygWin, MingW). 5684*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5685*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Added X86_WIN32 target support. 5686*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5687*1fd5a2e1SPrashanth Swaminathan 5688*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Added X86_WIN32 target support. 5689*1fd5a2e1SPrashanth Swaminathan 5690*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c: Doesn't run structure tests for X86_WIN32 targets. 5691*1fd5a2e1SPrashanth Swaminathan * src/types.c: Added X86_WIN32 target support. 5692*1fd5a2e1SPrashanth Swaminathan 5693*1fd5a2e1SPrashanth Swaminathan * src/x86/win32.S: New file. Based on sysv.S, but with EH 5694*1fd5a2e1SPrashanth Swaminathan stuff removed and made to work with CygWin's gas. 5695*1fd5a2e1SPrashanth Swaminathan 5696*1fd5a2e1SPrashanth Swaminathan2001-03-26 Bryce McKinlay <[email protected]> 5697*1fd5a2e1SPrashanth Swaminathan 5698*1fd5a2e1SPrashanth Swaminathan * configure.in: Make target subdirectory in build dir. 5699*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Override suffix based rules to specify correct output 5700*1fd5a2e1SPrashanth Swaminathan subdirectory. 5701*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5702*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5703*1fd5a2e1SPrashanth Swaminathan 5704*1fd5a2e1SPrashanth Swaminathan2001-03-23 Kevin B Hendricks <[email protected]> 5705*1fd5a2e1SPrashanth Swaminathan 5706*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ppc_closure.S: New file. 5707*1fd5a2e1SPrashanth Swaminathan * src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug 5708*1fd5a2e1SPrashanth Swaminathan involving long long and register pairs. 5709*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): New function. 5710*1fd5a2e1SPrashanth Swaminathan (flush_icache): Likewise. 5711*1fd5a2e1SPrashanth Swaminathan (ffi_closure_helper_SYSV): Likewise. 5712*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (FFI_CLOSURES): Define on PPC. 5713*1fd5a2e1SPrashanth Swaminathan (FFI_TRAMPOLINE_SIZE): Likewise. 5714*1fd5a2e1SPrashanth Swaminathan (FFI_NATIVE_RAW_API): Likewise. 5715*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5716*1fd5a2e1SPrashanth Swaminathan * Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S. 5717*1fd5a2e1SPrashanth Swaminathan (TARGET_SRC_POWERPC): Likewise. 5718*1fd5a2e1SPrashanth Swaminathan 5719*1fd5a2e1SPrashanth Swaminathan2001-03-19 Tom Tromey <[email protected]> 5720*1fd5a2e1SPrashanth Swaminathan 5721*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5722*1fd5a2e1SPrashanth Swaminathan * Makefile.am (ffitest_LDFLAGS): New macro. 5723*1fd5a2e1SPrashanth Swaminathan 5724*1fd5a2e1SPrashanth Swaminathan2001-03-02 Nick Clifton <[email protected]> 5725*1fd5a2e1SPrashanth Swaminathan 5726*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Remove RCS ident string. 5727*1fd5a2e1SPrashanth Swaminathan * include/ffi_mips.h: Remove RCS ident string. 5728*1fd5a2e1SPrashanth Swaminathan * src/debug.c: Remove RCS ident string. 5729*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c: Remove RCS ident string. 5730*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c: Remove RCS ident string. 5731*1fd5a2e1SPrashanth Swaminathan * src/types.c: Remove RCS ident string. 5732*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c: Remove RCS ident string. 5733*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S: Remove RCS ident string. 5734*1fd5a2e1SPrashanth Swaminathan * src/arm/ffi.c: Remove RCS ident string. 5735*1fd5a2e1SPrashanth Swaminathan * src/arm/sysv.S: Remove RCS ident string. 5736*1fd5a2e1SPrashanth Swaminathan * src/mips/ffi.c: Remove RCS ident string. 5737*1fd5a2e1SPrashanth Swaminathan * src/mips/n32.S: Remove RCS ident string. 5738*1fd5a2e1SPrashanth Swaminathan * src/mips/o32.S: Remove RCS ident string. 5739*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c: Remove RCS ident string. 5740*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: Remove RCS ident string. 5741*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S: Remove RCS ident string. 5742*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c: Remove RCS ident string. 5743*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S: Remove RCS ident string. 5744*1fd5a2e1SPrashanth Swaminathan 5745*1fd5a2e1SPrashanth Swaminathan2001-02-08 Joseph S. Myers <[email protected]> 5746*1fd5a2e1SPrashanth Swaminathan 5747*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Change sourceware.cygnus.com references to 5748*1fd5a2e1SPrashanth Swaminathan gcc.gnu.org. 5749*1fd5a2e1SPrashanth Swaminathan 5750*1fd5a2e1SPrashanth Swaminathan2000-12-09 Richard Henderson <[email protected]> 5751*1fd5a2e1SPrashanth Swaminathan 5752*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c (ffi_call): Simplify struct return test. 5753*1fd5a2e1SPrashanth Swaminathan (ffi_closure_osf_inner): Index rather than increment avalue 5754*1fd5a2e1SPrashanth Swaminathan and arg_types. Give ffi_closure_osf the raw return value type. 5755*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S (ffi_closure_osf): Handle return value type 5756*1fd5a2e1SPrashanth Swaminathan promotion. 5757*1fd5a2e1SPrashanth Swaminathan 5758*1fd5a2e1SPrashanth Swaminathan2000-12-07 Richard Henderson <[email protected]> 5759*1fd5a2e1SPrashanth Swaminathan 5760*1fd5a2e1SPrashanth Swaminathan * src/raw_api.c (ffi_translate_args): Fix typo. 5761*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Likewise. 5762*1fd5a2e1SPrashanth Swaminathan 5763*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and 5764*1fd5a2e1SPrashanth Swaminathan FFI_TRAMPOLINE_SIZE. 5765*1fd5a2e1SPrashanth Swaminathan * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal 5766*1fd5a2e1SPrashanth Swaminathan cif->bytes for new ffi_call_osf implementation. 5767*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args): Absorb into ... 5768*1fd5a2e1SPrashanth Swaminathan (ffi_call): ... here. Do all stack allocation here and 5769*1fd5a2e1SPrashanth Swaminathan avoid a callback function. 5770*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure, ffi_closure_osf_inner): New. 5771*1fd5a2e1SPrashanth Swaminathan * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback. 5772*1fd5a2e1SPrashanth Swaminathan (ffi_closure_osf): New. 5773*1fd5a2e1SPrashanth Swaminathan 5774*1fd5a2e1SPrashanth Swaminathan2000-09-10 Alexandre Oliva <[email protected]> 5775*1fd5a2e1SPrashanth Swaminathan 5776*1fd5a2e1SPrashanth Swaminathan * config.guess, config.sub, install-sh: Removed. 5777*1fd5a2e1SPrashanth Swaminathan * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise. 5778*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5779*1fd5a2e1SPrashanth Swaminathan 5780*1fd5a2e1SPrashanth Swaminathan * acinclude.m4: Include libtool macros from the top level. 5781*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, configure: Rebuilt. 5782*1fd5a2e1SPrashanth Swaminathan 5783*1fd5a2e1SPrashanth Swaminathan2000-08-22 Alexandre Oliva <[email protected]> 5784*1fd5a2e1SPrashanth Swaminathan 5785*1fd5a2e1SPrashanth Swaminathan * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set. 5786*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5787*1fd5a2e1SPrashanth Swaminathan 5788*1fd5a2e1SPrashanth Swaminathan2000-05-11 Scott Bambrough <[email protected]> 5789*1fd5a2e1SPrashanth Swaminathan 5790*1fd5a2e1SPrashanth Swaminathan * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to 5791*1fd5a2e1SPrashanth Swaminathan memory correctly. Use conditional instructions, not branches where 5792*1fd5a2e1SPrashanth Swaminathan possible. 5793*1fd5a2e1SPrashanth Swaminathan 5794*1fd5a2e1SPrashanth Swaminathan2000-05-04 Tom Tromey <[email protected]> 5795*1fd5a2e1SPrashanth Swaminathan 5796*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5797*1fd5a2e1SPrashanth Swaminathan * configure.in: Match `arm*-*-linux-*'. 5798*1fd5a2e1SPrashanth Swaminathan From Chris Dornan <[email protected]>. 5799*1fd5a2e1SPrashanth Swaminathan 5800*1fd5a2e1SPrashanth Swaminathan2000-04-28 Jakub Jelinek <[email protected]> 5801*1fd5a2e1SPrashanth Swaminathan 5802*1fd5a2e1SPrashanth Swaminathan * Makefile.am (SUBDIRS): Define. 5803*1fd5a2e1SPrashanth Swaminathan (AM_MAKEFLAGS): Likewise. 5804*1fd5a2e1SPrashanth Swaminathan (Multilib support.): Add section. 5805*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5806*1fd5a2e1SPrashanth Swaminathan * ltconfig (extra_compiler_flags, extra_compiler_flags_value): 5807*1fd5a2e1SPrashanth Swaminathan New variables. Set for gcc using -print-multi-lib. Export them 5808*1fd5a2e1SPrashanth Swaminathan to libtool. 5809*1fd5a2e1SPrashanth Swaminathan (sparc64-*-linux-gnu*): Use libsuff 64 for search paths. 5810*1fd5a2e1SPrashanth Swaminathan * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options 5811*1fd5a2e1SPrashanth Swaminathan for -shared links. 5812*1fd5a2e1SPrashanth Swaminathan (extra_compiler_flags_value, extra_compiler_flags): Check these 5813*1fd5a2e1SPrashanth Swaminathan for extra compiler options which need to be passed down in 5814*1fd5a2e1SPrashanth Swaminathan compiler_flags. 5815*1fd5a2e1SPrashanth Swaminathan 5816*1fd5a2e1SPrashanth Swaminathan2000-04-16 Anthony Green <[email protected]> 5817*1fd5a2e1SPrashanth Swaminathan 5818*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5819*1fd5a2e1SPrashanth Swaminathan * configure.in: Change i*86-pc-linux* to i*86-*-linux*. 5820*1fd5a2e1SPrashanth Swaminathan 5821*1fd5a2e1SPrashanth Swaminathan2000-04-14 Jakub Jelinek <[email protected]> 5822*1fd5a2e1SPrashanth Swaminathan 5823*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds. 5824*1fd5a2e1SPrashanth Swaminathan Set SPARC FFI_DEFAULT_ABI based on SPARC64 define. 5825*1fd5a2e1SPrashanth Swaminathan * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args. 5826*1fd5a2e1SPrashanth Swaminathan Replace all void * sizeofs with sizeof(int). 5827*1fd5a2e1SPrashanth Swaminathan Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is 5828*1fd5a2e1SPrashanth Swaminathan different than DOUBLE. 5829*1fd5a2e1SPrashanth Swaminathan Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere). 5830*1fd5a2e1SPrashanth Swaminathan (ffi_prep_args_v9): New function. 5831*1fd5a2e1SPrashanth Swaminathan (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8. 5832*1fd5a2e1SPrashanth Swaminathan (ffi_V9_return_struct): New function. 5833*1fd5a2e1SPrashanth Swaminathan (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from 5834*1fd5a2e1SPrashanth Swaminathan 32bit code (not yet cross-arch calls). 5835*1fd5a2e1SPrashanth Swaminathan * src/sparc/v8.S: Add struct return delay nop. 5836*1fd5a2e1SPrashanth Swaminathan Handle long long. 5837*1fd5a2e1SPrashanth Swaminathan * src/sparc/v9.S: New file. 5838*1fd5a2e1SPrashanth Swaminathan * src/prep_cif.c (ffi_prep_cif): Return structure pointer 5839*1fd5a2e1SPrashanth Swaminathan is used on sparc64 only for structures larger than 32 bytes. 5840*1fd5a2e1SPrashanth Swaminathan Pass by reference for structures is done for structure arguments 5841*1fd5a2e1SPrashanth Swaminathan larger than 16 bytes. 5842*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (main): Use 64bit rint on sparc64. 5843*1fd5a2e1SPrashanth Swaminathan Run long long tests on sparc. 5844*1fd5a2e1SPrashanth Swaminathan * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and 5845*1fd5a2e1SPrashanth Swaminathan sparc64. 5846*1fd5a2e1SPrashanth Swaminathan (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits 5847*1fd5a2e1SPrashanth Swaminathan on sparc64. 5848*1fd5a2e1SPrashanth Swaminathan * configure.in (sparc-*-linux*): New supported target. 5849*1fd5a2e1SPrashanth Swaminathan (sparc64-*-linux*): Likewise. 5850*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5851*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Add v9.S to SPARC files. 5852*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Likewise. 5853*1fd5a2e1SPrashanth Swaminathan (LINK): Surround $(CCLD) into double quotes, so that multilib 5854*1fd5a2e1SPrashanth Swaminathan compiles work correctly. 5855*1fd5a2e1SPrashanth Swaminathan 5856*1fd5a2e1SPrashanth Swaminathan2000-04-04 Alexandre Petit-Bianco <[email protected]> 5857*1fd5a2e1SPrashanth Swaminathan 5858*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5859*1fd5a2e1SPrashanth Swaminathan * configure.in: (i*86-*-solaris*): New libffi target. Patch 5860*1fd5a2e1SPrashanth Swaminathan proposed by Bryce McKinlay. 5861*1fd5a2e1SPrashanth Swaminathan 5862*1fd5a2e1SPrashanth Swaminathan2000-03-20 Tom Tromey <[email protected]> 5863*1fd5a2e1SPrashanth Swaminathan 5864*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Hand edit for java_raw_api.lo. 5865*1fd5a2e1SPrashanth Swaminathan 5866*1fd5a2e1SPrashanth Swaminathan2000-03-08 Bryce McKinlay <[email protected]> 5867*1fd5a2e1SPrashanth Swaminathan 5868*1fd5a2e1SPrashanth Swaminathan * config.guess, config.sub: Update from the gcc tree. 5869*1fd5a2e1SPrashanth Swaminathan Fix for PR libgcj/168. 5870*1fd5a2e1SPrashanth Swaminathan 5871*1fd5a2e1SPrashanth Swaminathan2000-03-03 Tom Tromey <[email protected]> 5872*1fd5a2e1SPrashanth Swaminathan 5873*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Fixed ia64 by hand. 5874*1fd5a2e1SPrashanth Swaminathan 5875*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5876*1fd5a2e1SPrashanth Swaminathan * configure.in (--enable-multilib): New option. 5877*1fd5a2e1SPrashanth Swaminathan (libffi_basedir): New subst. 5878*1fd5a2e1SPrashanth Swaminathan (AC_OUTPUT): Added multilib code. 5879*1fd5a2e1SPrashanth Swaminathan 5880*1fd5a2e1SPrashanth Swaminathan2000-03-02 Tom Tromey <[email protected]> 5881*1fd5a2e1SPrashanth Swaminathan 5882*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5883*1fd5a2e1SPrashanth Swaminathan * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as 5884*1fd5a2e1SPrashanth Swaminathan directory name. 5885*1fd5a2e1SPrashanth Swaminathan 5886*1fd5a2e1SPrashanth Swaminathan2000-02-25 Hans Boehm <[email protected]> 5887*1fd5a2e1SPrashanth Swaminathan 5888*1fd5a2e1SPrashanth Swaminathan * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New 5889*1fd5a2e1SPrashanth Swaminathan files. 5890*1fd5a2e1SPrashanth Swaminathan * src/raw_api.c (ffi_translate_args): Fixed typo in argument 5891*1fd5a2e1SPrashanth Swaminathan list. 5892*1fd5a2e1SPrashanth Swaminathan (ffi_prep_raw_closure): Use ffi_translate_args, not 5893*1fd5a2e1SPrashanth Swaminathan ffi_closure_translate. 5894*1fd5a2e1SPrashanth Swaminathan * src/java_raw_api.c: New file. 5895*1fd5a2e1SPrashanth Swaminathan * src/ffitest.c (closure_test_fn): New function. 5896*1fd5a2e1SPrashanth Swaminathan (main): Define `rint' as long long on IA64. Added new test when 5897*1fd5a2e1SPrashanth Swaminathan FFI_CLOSURES is defined. 5898*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (ALIGN): Use size_t, not unsigned. 5899*1fd5a2e1SPrashanth Swaminathan (ffi_abi): Recognize IA64. 5900*1fd5a2e1SPrashanth Swaminathan (ffi_raw): Added `flt' field. 5901*1fd5a2e1SPrashanth Swaminathan Added "Java raw API" code. 5902*1fd5a2e1SPrashanth Swaminathan * configure.in: Recognize ia64. 5903*1fd5a2e1SPrashanth Swaminathan * Makefile.am (TARGET_SRC_IA64): New macro. 5904*1fd5a2e1SPrashanth Swaminathan (libffi_la_common_SOURCES): Added java_raw_api.c. 5905*1fd5a2e1SPrashanth Swaminathan (libffi_la_SOURCES): Define in IA64 case. 5906*1fd5a2e1SPrashanth Swaminathan 5907*1fd5a2e1SPrashanth Swaminathan2000-01-04 Tom Tromey <[email protected]> 5908*1fd5a2e1SPrashanth Swaminathan 5909*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt with newer automake. 5910*1fd5a2e1SPrashanth Swaminathan 5911*1fd5a2e1SPrashanth Swaminathan1999-12-31 Tom Tromey <[email protected]> 5912*1fd5a2e1SPrashanth Swaminathan 5913*1fd5a2e1SPrashanth Swaminathan * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src. 5914*1fd5a2e1SPrashanth Swaminathan 5915*1fd5a2e1SPrashanth Swaminathan1999-09-01 Tom Tromey <[email protected]> 5916*1fd5a2e1SPrashanth Swaminathan 5917*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Removed PACKAGE and VERSION defines and 5918*1fd5a2e1SPrashanth Swaminathan undefs. 5919*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Rebuilt. 5920*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5921*1fd5a2e1SPrashanth Swaminathan * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE. 5922*1fd5a2e1SPrashanth Swaminathan Use AM_PROG_LIBTOOL (automake 1.4 compatibility). 5923*1fd5a2e1SPrashanth Swaminathan * acconfig.h: Don't #undef PACKAGE or VERSION. 5924*1fd5a2e1SPrashanth Swaminathan 5925*1fd5a2e1SPrashanth Swaminathan1999-08-09 Anthony Green <[email protected]> 5926*1fd5a2e1SPrashanth Swaminathan 5927*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Try to work around messy header problem 5928*1fd5a2e1SPrashanth Swaminathan with PACKAGE and VERSION. 5929*1fd5a2e1SPrashanth Swaminathan 5930*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5931*1fd5a2e1SPrashanth Swaminathan * configure.in: Change version to 2.00-beta. 5932*1fd5a2e1SPrashanth Swaminathan 5933*1fd5a2e1SPrashanth Swaminathan * fficonfig.h.in: Rebuilt. 5934*1fd5a2e1SPrashanth Swaminathan * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define. 5935*1fd5a2e1SPrashanth Swaminathan 5936*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_raw_call): Rename. 5937*1fd5a2e1SPrashanth Swaminathan 5938*1fd5a2e1SPrashanth Swaminathan1999-08-02 Kresten Krab Thorup <[email protected]> 5939*1fd5a2e1SPrashanth Swaminathan 5940*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_closure_SYSV): New function. 5941*1fd5a2e1SPrashanth Swaminathan (ffi_prep_incoming_args_SYSV): Ditto. 5942*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure): Ditto. 5943*1fd5a2e1SPrashanth Swaminathan (ffi_closure_raw_SYSV): Ditto. 5944*1fd5a2e1SPrashanth Swaminathan (ffi_prep_raw_closure): More ditto. 5945*1fd5a2e1SPrashanth Swaminathan (ffi_call_raw): Final ditto. 5946*1fd5a2e1SPrashanth Swaminathan 5947*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in: Add definitions for closure and raw API. 5948*1fd5a2e1SPrashanth Swaminathan 5949*1fd5a2e1SPrashanth Swaminathan * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for 5950*1fd5a2e1SPrashanth Swaminathan FFI_TYPE_UINT64. 5951*1fd5a2e1SPrashanth Swaminathan 5952*1fd5a2e1SPrashanth Swaminathan * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c 5953*1fd5a2e1SPrashanth Swaminathan 5954*1fd5a2e1SPrashanth Swaminathan * src/raw_api.c: New file. 5955*1fd5a2e1SPrashanth Swaminathan 5956*1fd5a2e1SPrashanth Swaminathan * include/ffi.h.in (ffi_raw): New type. 5957*1fd5a2e1SPrashanth Swaminathan (UINT_ARG, SINT_ARG): New defines. 5958*1fd5a2e1SPrashanth Swaminathan (ffi_closure, ffi_raw_closure): New types. 5959*1fd5a2e1SPrashanth Swaminathan (ffi_prep_closure, ffi_prep_raw_closure): New declarations. 5960*1fd5a2e1SPrashanth Swaminathan 5961*1fd5a2e1SPrashanth Swaminathan * configure.in: Add check for endianness and sizeof void*. 5962*1fd5a2e1SPrashanth Swaminathan 5963*1fd5a2e1SPrashanth Swaminathan * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument, 5964*1fd5a2e1SPrashanth Swaminathan instead of directly. 5965*1fd5a2e1SPrashanth Swaminathan 5966*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5967*1fd5a2e1SPrashanth Swaminathan 5968*1fd5a2e1SPrashanth SwaminathanThu Jul 8 14:28:42 1999 Anthony Green <[email protected]> 5969*1fd5a2e1SPrashanth Swaminathan 5970*1fd5a2e1SPrashanth Swaminathan * configure.in: Add x86 and powerpc BeOS configurations. 5971*1fd5a2e1SPrashanth Swaminathan From Makoto Kato <[email protected]>. 5972*1fd5a2e1SPrashanth Swaminathan 5973*1fd5a2e1SPrashanth Swaminathan1999-05-09 Anthony Green <[email protected]> 5974*1fd5a2e1SPrashanth Swaminathan 5975*1fd5a2e1SPrashanth Swaminathan * configure.in: Add warning about this being beta code. 5976*1fd5a2e1SPrashanth Swaminathan Remove src/Makefile.am from the picture. 5977*1fd5a2e1SPrashanth Swaminathan * configure: Rebuilt. 5978*1fd5a2e1SPrashanth Swaminathan 5979*1fd5a2e1SPrashanth Swaminathan * Makefile.am: Move logic from src/Makefile.am. Add changes 5980*1fd5a2e1SPrashanth Swaminathan to support libffi as a target library. 5981*1fd5a2e1SPrashanth Swaminathan * Makefile.in: Rebuilt. 5982*1fd5a2e1SPrashanth Swaminathan 5983*1fd5a2e1SPrashanth Swaminathan * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh: 5984*1fd5a2e1SPrashanth Swaminathan Upgraded to new autoconf, automake, libtool. 5985*1fd5a2e1SPrashanth Swaminathan 5986*1fd5a2e1SPrashanth Swaminathan * README: Tweaks. 5987*1fd5a2e1SPrashanth Swaminathan 5988*1fd5a2e1SPrashanth Swaminathan * LICENSE: Update copyright date. 5989*1fd5a2e1SPrashanth Swaminathan 5990*1fd5a2e1SPrashanth Swaminathan * src/Makefile.am, src/Makefile.in: Removed. 5991*1fd5a2e1SPrashanth Swaminathan 5992*1fd5a2e1SPrashanth Swaminathan1998-11-29 Anthony Green <[email protected]> 5993*1fd5a2e1SPrashanth Swaminathan 5994*1fd5a2e1SPrashanth Swaminathan * include/ChangeLog: Removed. 5995*1fd5a2e1SPrashanth Swaminathan * src/ChangeLog: Removed. 5996*1fd5a2e1SPrashanth Swaminathan * src/mips/ChangeLog: Removed. 5997*1fd5a2e1SPrashanth Swaminathan * src/sparc/ChangeLog: Remboved. 5998*1fd5a2e1SPrashanth Swaminathan * src/x86/ChangeLog: Removed. 5999*1fd5a2e1SPrashanth Swaminathan 6000*1fd5a2e1SPrashanth Swaminathan * ChangeLog.v1: Created. 6001