aboutsummaryrefslogtreecommitdiff
path: root/libffi
AgeCommit message (Collapse)AuthorFilesLines
2003-05-08Solaris 7 .register fix.Jeff Sturm5-21/+88
From-SVN: r66617
2003-04-18configure.in (powerpc64*-*-linux*): Remove.Jakub Jelinek12-118/+992
* configure.in (powerpc64*-*-linux*): Remove. * configure: Rebuilt. libffi/ * include/ffi.h.in (POWERPC64): Define if 64-bit. (enum ffi_abi): Add FFI_LINUX64 on POWERPC. Make it the default on POWERPC64. (FFI_TRAMPOLINE_SIZE): Define to 24 on POWERPC64. * configure.in: Change powerpc-*-linux* into powerpc*-*-linux*. * configure: Rebuilt. * src/powerpc/ffi.c (hidden): Define. (ffi_prep_args_SYSV): Renamed from ffi_prep_args. Cast pointers to unsigned long to shut up warnings. (NUM_GPR_ARG_REGISTERS64, NUM_FPR_ARG_REGISTERS64, ASM_NEEDS_REGISTERS64): New. (ffi_prep_args64): New function. (ffi_prep_cif_machdep): Handle FFI_LINUX64 ABI. (ffi_call): Likewise. (ffi_prep_closure): Likewise. (flush_icache): Surround by #ifndef POWERPC64. (ffi_dblfl): New union type. (ffi_closure_helper_SYSV): Use it to avoid aliasing problems. (ffi_closure_helper_LINUX64): New function. * src/powerpc/ppc_closure.S: Surround whole file by #ifndef __powerpc64__. * src/powerpc/sysv.S: Likewise. (ffi_call_SYSV): Rename ffi_prep_args to ffi_prep_args_SYSV. * src/powerpc/linux64.S: New file. * src/powerpc/linux64_closure.S: New file. * Makefile.am (EXTRA_DIST): Add src/powerpc/linux64.S and src/powerpc/linux64_closure.S. (TARGET_SRC_POWERPC): Likewise. * src/ffitest.c (closure_test_fn, closure_test_fn1, closure_test_fn2, closure_test_fn3): Fix result printing on big-endian 64-bit machines. (main): Print tst2_arg instead of uninitialized tst2_result. * src/ffitest.c (main): Hide what closure pointer really points to from the compiler. From-SVN: r65781
2003-04-16configure.in (arm-*-netbsdelf*): Add configuration.Richard Earnshaw3-0/+7
* configure.in (arm-*-netbsdelf*): Add configuration. (configure): Regenerated. From-SVN: r65691
2003-04-11libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on mips*.Alexandre Oliva1-1/+1
* libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on mips*. * */configure: Rebuilt. From-SVN: r65459
2003-04-05* include/Makefile.in: Regenerate.Loren J. Rittle2-3/+9
From-SVN: r65264
2003-03-24configure.in: Avoid trailing /.Andreas Schwab1-0/+5
2003-03-10 Andreas Schwab <schwab@suse.de> boehm-gc: * configure.in: Avoid trailing /. in toolexeclibdir. * configure: Rebuilt. libf2c: * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in glibcpp_toolexeclibdir. * configure: Rebuilt. libffi: * configure.in: Avoid trailing /. in toolexeclibdir. * configure: Rebuilt. libjava: * configure.in: Avoid trailing /. in toolexeclibdir. * configure: Rebuilt. libobjc: * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in glibcpp_toolexeclibdir. * configure: Rebuilt. libstdc++-v3: * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in glibcpp_toolexeclibdir. * aclocal.m4, configure: Rebuilt. zlib: * configure.in: Avoid trailing /. in toolexeclibdir. * configure: Rebuilt. From-SVN: r64805
2003-03-21ffi.h.in: Define X86 instead of X86_64 in 32 bit mode.Zdenek Dvorak3-29/+32
* libffi/include/ffi.h.in: Define X86 instead of X86_64 in 32 bit mode. * libffi/src/x86/ffi.c (ffi_closure_SYSV, ffi_closure_raw_SYSV): Receive closure pointer through parameter, read args using __builtin_dwarf_cfa. (FFI_INIT_TRAMPOLINE): Send closure reference through eax. From-SVN: r64663
2003-03-12configure.in: Avoid trailing /.Andreas Schwab2-2/+10
2003-03-10 Andreas Schwab <schwab@suse.de> boehm-gc: * configure.in: Avoid trailing /. in toolexeclibdir. * configure: Rebuilt. libf2c: * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in glibcpp_toolexeclibdir. * configure: Rebuilt. libffi: * configure.in: Avoid trailing /. in toolexeclibdir. * configure: Rebuilt. libjava: * configure.in: Avoid trailing /. in toolexeclibdir. * configure: Rebuilt. libobjc: * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in glibcpp_toolexeclibdir. * configure: Rebuilt. libstdc++-v3: * acinclude.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in glibcpp_toolexeclibdir. * aclocal.m4, configure: Rebuilt. zlib: * configure.in: Avoid trailing /. in toolexeclibdir. * configure: Rebuilt. From-SVN: r64267
2003-03-10Andreas Tobler <a.tobler@schweiz.ch>Andreas Tobler2-91/+162
* src/powerpc/darwin_closure.S: Recode to fit dynamic libraries. From-SVN: r64106
2003-02-20configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to config.status.Alexandre Oliva3-92/+114
* configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to config.status. * configure: Rebuilt. From-SVN: r63159
2003-02-07darwin_closure.S: Fix alignement bug, allocate 8 bytes for the result.Andreas Tobler4-64/+77
2003-02-06 Andreas Tobler <a.tobler@schweiz.ch> * libffi/src/powerpc/darwin_closure.S: Fix alignement bug, allocate 8 bytes for the result. * libffi/src/powerpc/aix_closure.S: Likewise. * libffi/src/powerpc/ffi_darwin.c: Update stackframe description for aix/darwin_closure.S. From-SVN: r62514
2003-02-06ffi.c (ffi_closure_helper_SYSV): Add hidden visibility attribute.Jakub Jelinek2-3/+12
* src/s390/ffi.c (ffi_closure_helper_SYSV): Add hidden visibility attribute. From-SVN: r62454
2003-02-01Fix wrongly applied last patch.Andreas Jaeger2-4/+4
From-SVN: r62239
2003-01-31configure.in: Adjust command to source config-ml.in to account for changes ↵Christian Cornelssen3-11/+21
to the... 2003-01-31 Christian Cornelssen <ccorn@cs.tu-berlin.de>, Andreas Schwab <schwab@suse.de> * configure.in: Adjust command to source config-ml.in to account for changes to the libffi_basedir definition. (libffi_basedir): Remove ${srcdir} from value and include trailing slash if nonempty. * configure: Regenerate. Co-Authored-By: Andreas Schwab <schwab@suse.de> From-SVN: r62193
2003-01-29ppc_closure.S: Recode to fit shared libs.Franz Sirl2-73/+125
2003-01-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * src/powerpc/ppc_closure.S: Recode to fit shared libs. From-SVN: r62112
2003-01-28configure.in (toolexecdir, [...]): Set and AC_SUBST.Alexandre Oliva2-177/+220
* configure.in (toolexecdir, toolexeclibdir): Set and AC_SUBST. Remove USE_LIBDIR conditional. * Makefile.am (toolexecdir, toolexeclibdir): Don't override. * Makefile.in, configure: Rebuilt. From-SVN: r62040
2003-01-28ffi.h.in: Enable FFI_CLOSURES for x86_64.Andrew Haley4-1/+240
2003-01-28 Andrew Haley <aph@redhat.com> * include/ffi.h.in: Enable FFI_CLOSURES for x86_64. * src/x86/ffi64.c (ffi_prep_closure): New. (ffi_closure_UNIX64_inner): New. * src/x86/unix64.S (ffi_closure_UNIX64): New. From-SVN: r61978
2003-01-28configure.in (toolexecdir, [...]): Set and AC_SUBST.Alexandre Oliva4-10/+25
* configure.in (toolexecdir, toolexeclibdir): Set and AC_SUBST. Remove USE_LIBDIR conditional. * Makefile.am (toolexecdir, toolexeclibdir): Don't override. * Makefile.in, configure: Rebuilt. [[Split portion of a mixed commit.]] From-SVN: r61935.2
2003-01-27Makefile.am (TARGET_SRC_POWERPC_AIX): Fix typo.David Edelsohn3-6/+11
* Makefile.am (TARGET_SRC_POWERPC_AIX): Fix typo. * Makefile.in: Regenerate. From-SVN: r61899
2003-01-22darwin.S (_ffi_call_AIX): Add Augmentation size to unwind info.Andrew Haley2-0/+6
2003-01-22 Andrew Haley <aph@redhat.com> * src/powerpc/darwin.S (_ffi_call_AIX): Add Augmentation size to unwind info. From-SVN: r61608
2003-01-21darwin.S: Add unwind info.Andreas Tobler3-25/+136
2003-01-21 Andreas Tobler <a.tobler@schweiz.ch> * src/powerpc/darwin.S: Add unwind info. * src/powerpc/darwin_closure.S: Likewise. From-SVN: r61568
2003-01-14ffi64.c (ffi_prep_args): Check for void retval.Andrew Haley3-3/+52
2003-01-14 Andrew Haley <aph@redhat.com> * src/x86/ffi64.c (ffi_prep_args): Check for void retval. (ffi_prep_cif_machdep): Likewise. * src/x86/unix64.S: Add unwind info. From-SVN: r61291
2003-01-14ffitest.c (main): Only use ffi_closures if those are supported.Andreas Jaeger2-1/+8
* src/ffitest.c (main): Only use ffi_closures if those are supported. From-SVN: r61273
2003-01-14[multiple changes]Tom Tromey3-30/+275
2003-01-13 Andreas Tobler <a.tobler@schweiz.ch> * libffi/src/ffitest.c add closure testcases 2003-01-13 Kevin B. Hendricks <khendricks@ivey.uwo.ca> * libffi/src/powerpc/ffi.c fix alignment bug for float (4 byte aligned iso 8 byte) From-SVN: r61263
2003-01-10ffi_darwin.c: Remove RCS version string.Geoffrey Keating3-4/+5
* src/powerpc/ffi_darwin.c: Remove RCS version string. * src/powerpc/darwin.S: Remove RCS version string. From-SVN: r61135
2003-01-03ffi.h.in: Add closure defines for SPARC, SPARC64.Jeff Sturm6-8/+327
* include/ffi.h.in: Add closure defines for SPARC, SPARC64. * src/ffitest.c (main): Use static storage for closure. * src/sparc/ffi.c (ffi_prep_closure, ffi_closure_sparc_inner): New. * src/sparc/v8.S (ffi_closure_v8): New. * src/sparc/v9.S (ffi_closure_v9): New. From-SVN: r60857
2002-12-16Merge basic-improvements-branch to trunkZack Weinberg5-274/+287
From-SVN: r60174
2002-12-06ffi.h.in: Added FFI_STDCALL ffi_type enumeration for X86_WIN32.Ranjit Mathew5-5/+250
2002-11-10 Ranjit Mathew <rmathew@hotmail.com> * include/ffi.h.in: Added FFI_STDCALL ffi_type enumeration for X86_WIN32. * src/x86/win32.S: Added ffi_call_STDCALL function definition. * src/x86/ffi.c (ffi_call/ffi_raw_call): Added switch cases for recognising FFI_STDCALL and calling ffi_call_STDCALL if target is X86_WIN32. * src/ffitest.c (my_stdcall_strlen/stdcall_many): stdcall versions of the "my_strlen" and "many" test functions (for X86_WIN32). Added test cases to test stdcall invocation using these functions. From-SVN: r59878
2002-11-27* src/s390/sysv.S (.eh_frame section): Make section read-only.Ulrich Weigand2-2/+6
From-SVN: r59574
2002-11-26Fix Portable .NET bug with IA-64 pointer size.Jim Wilson2-1/+6
* src/types.c (FFI_TYPE_POINTER): Has size 8 on IA64. From-SVN: r59541
2002-11-15s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.Ulrich Weigand2-8/+20
gcc/ChangeLog: * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define. libffi/ChangeLog: * src/s390/sysv.S (.eh_frame section): Adapt to pcrel FDE encoding. From-SVN: r59134
2002-11-11* configure.in: Look for common files in the right place.DJ Delorie3-3/+8
From-SVN: r59039
2002-10-08java_raw_api.c (ffi_java_raw_to_ptrarray): Interpret raw data as _Jv_word ↵Ulrich Weigand4-29/+102
values, not ffi_raw. * src/java_raw_api.c (ffi_java_raw_to_ptrarray): Interpret raw data as _Jv_word values, not ffi_raw. (ffi_java_ptrarray_to_raw): Likewise. (ffi_java_rvalue_to_raw): New function. (ffi_java_raw_call): Call it. (ffi_java_raw_to_rvalue): New function. (ffi_java_translate_args): Call it. * src/ffitest.c (closure_test_fn): Interpret return value as ffi_arg, not int. * src/s390/ffi.c (ffi_prep_cif_machdep): Add missing FFI_TYPE_POINTER case. (ffi_closure_helper_SYSV): Likewise. Also, assume return values extended to word size. From-SVN: r57926
2002-10-02* src/x86/ffi64.c (ffi_prep_cif_machdep): Remove debug output.Andreas Jaeger2-2/+4
From-SVN: r57726
2002-10-01* include/ffi.h.in: Fix i386 win32 compilation.Bo Thorsen2-1/+5
From-SVN: r57691
2002-09-30configure.in: Add s390x-*-linux-* target.Ulrich Weigand8-636/+1030
* configure.in: Add s390x-*-linux-* target. * configure: Regenerate. * include/ffi.h.in: Define S390X for s390x targets. (FFI_CLOSURES): Define for s390/s390x. (FFI_TRAMPOLINE_SIZE): Likewise. (FFI_NATIVE_RAW_API): Likewise. * src/prep_cif.c (ffi_prep_cif): Do not compute stack space for s390. * src/types.c (FFI_TYPE_POINTER): Use 8-byte pointers on s390x. * src/s390/ffi.c: Major rework of existing code. Add support for s390x targets. Add closure support. * src/s390/sysv.S: Likewise. From-SVN: r57646
2002-09-29* src/arm/sysv.S: Fix typo.Richard Earnshaw2-1/+5
From-SVN: r57627
2002-09-28sysv.S: If we don't have machine/asm.h and the pre-processor has defined...Richard Earnshaw2-0/+21
* src/arm/sysv.S: If we don't have machine/asm.h and the pre-processor has defined __USER_LABEL_PREFIX__, then use it in CNAME. (ffi_call_SYSV): Handle soft-float. From-SVN: r57609
2002-09-27ffi.h.in: Fix multilib x86-64 support.Bo Thorsen2-15/+13
2002-09-27 Bo Thorsen <bo@suse.de> * include/ffi.h.in: Fix multilib x86-64 support. From-SVN: r57589
2002-09-23Makefile.am (all-multi): Fix multilib parallel build.Kaveh R. Ghazi3-2/+6
boehm-gc: * Makefile.am (all-multi): Fix multilib parallel build. libf2c: * Makefile.in (all): Fix multilib parallel build. libffi: * Makefile.am (all-multi): Fix multilib parallel build. libiberty: * Makefile.in (all): Fix multilib parallel build. libjava: * Makefile.am (all-multi): Fix multilib parallel build. libobjc: * Makefile.in (all): Fix multilib parallel build. libstdc++-v3: * Makefile.am (all-multi): Fix multilib parallel build. zlib: * Makefile.am (all-multi): Fix multilib parallel build. From-SVN: r57423
2002-08-14configure, configure: Rebuilt.Alexandre Oliva1-138/+174
* boehm-gc/configure, libf2c/configure: Rebuilt. * libffi/configure, libiberty/configure: Ditto. * libjava/configure, libobjc/configure: Ditto. * libstdc++-v3/configure, zlib/configure: Ditto. Merged from binutils: 2002-01-27 Daniel Jacobowitz <drow@mvista.com> From Steve Ellcey <sje@cup.hp.com>: * libtool.m4 (HPUX_IA64_MODE): Set to 32 or 64 based on ABI. (lt_cv_deplibs_check_method, lt_cv_file_magic_cmd, lt_cv_file_magic_test_file): Set to appropriate values for HP-UX IA64. * ltcf-c.sh (archive_cmds, hardcode_*): Ditto. * ltconfig (shlibpath_*, dynamic_linker, library_names_spec, soname_spec, sys_lib_search_path_spec): Ditto. From-SVN: r56270
2002-07-19configure.in (sh[34]*-*-linux*): Add brackets.Kaz Kojima3-2/+7
* configure.in (sh[34]*-*-linux*): Add brackets. * configure: Regenerate. From-SVN: r55589
2002-07-19Makefile.am: Add SH support.Kaz Kojima9-68/+1526
* Makefile.am: Add SH support. * Makefile.in: Regenerate. * configure.in (sh-*-linux*, sh[34]*-*-linux*): Add target. * configure: Regenerate. * include/ffi.h.in: Add SH support. * src/sh/ffi.c: New file. * src/sh/sysv.S: New file. * src/types.c: Add SH support. From-SVN: r55574
2002-07-19Forgot this file.Bo Thorsen1-4/+0
From-SVN: r55573
2002-07-19[multiple changes]Bo Thorsen17-160/+1174
2002-07-16 Bo Thorsen <bo@suse.de> * src/x86/ffi64.c: New file that adds x86-64 support. * src/x86/unix64.S: New file that handles argument setup for x86-64. * src/x86/sysv.S: Don't use this on x86-64. * src/x86/ffi.c: Don't use this on x86-64. Remove unused vars. * src/prep_cif.c (ffi_prep_cif): Don't do stack size calculation for x86-64. * src/ffitest.c (struct6): New test that tests a special case in the x86-64 ABI. (struct7): Likewise. (struct8): Likewise. (struct9): Likewise. (closure_test_fn): Silence warning about this when it's not used. (main): Add the new tests. (main): Fix a couple of wrong casts and silence some compiler warnings. * include/ffi.h.in: Add x86-64 ABI definition. * fficonfig.h.in: Regenerate. * Makefile.am: Add x86-64 support. * configure.in: Likewise. * Makefile.in: Regenerate. * configure: Likewise. 2002-06-24 Bo Thorsen <bo@suse.de> * src/types.c: Merge settings for similar architectures. Add x86-64 sizes and alignments. 2002-06-23 Bo Thorsen <bo@suse.de> * src/arm/ffi.c (ffi_prep_args): Remove unused vars. * src/sparc/ffi.c (ffi_prep_args_v8): Likewise. * src/mips/ffi.c (ffi_prep_args): Likewise. * src/m68k/ffi.c (ffi_prep_args): Likewise. From-SVN: r55571
2002-07-18Makefile.am (TARGET_SRC_MIPS_LINUX): New.H.J. Lu6-156/+197
2002-07-18 H.J. Lu (hjl@gnu.org) * Makefile.am (TARGET_SRC_MIPS_LINUX): New. (libffi_la_SOURCES): Support MIPS_LINUX. (libffi_convenience_la_SOURCES): Likewise. * Makefile.in: Regenerated. * configure.in (mips64*-*): Skip. (mips*-*-linux*): New. * configure: Regenerated. * src/mips/ffi.c: Include <sgidefs.h>. From-SVN: r55561
2002-06-06* src/s390/sysv.S: Save/restore %r6. Add DWARF-2 unwind info.Ulrich Weigand2-3/+69
From-SVN: r54317
2002-05-28Fix last commit. Sorry about that.Bo Thorsen2-29/+25
From-SVN: r53946
2002-05-28* src/x86/ffi.c (ffi_prep_args): Remove reference to avn.Roger Sayle2-1/+5
From-SVN: r53942
2002-05-27ffi.c (ffi_prep_args): Remove unused variable and fix formatting.Bo Thorsen2-52/+51
2002-05-27 Bo Thorsen <bo@suse.de> * src/x86/ffi.c (ffi_prep_args): Remove unused variable and fix formatting. From-SVN: r53926