aboutsummaryrefslogtreecommitdiff
path: root/libffi
AgeCommit message (Collapse)AuthorFilesLines
2003-09-04sorry forgot the changelog.Andreas Tobler1-0/+5
From-SVN: r71073
2003-09-04java_raw_api.c: Include <stdlib.h> to fix compiler warning about implicit ↵Andreas Tobler1-0/+1
declaration of abort(). 2003-08-30 Andreas Tobler <a.tobler@schweiz.ch> * src/java_raw_api.c: Include <stdlib.h> to fix compiler warning about implicit declaration of abort(). From-SVN: r71071
2003-09-04Andreas Tobler <a.tobler@schweiz.ch>Andreas Tobler1-3/+8
* include/Makefile.in: Built. From-SVN: r71070
2003-09-04*** empty log message ***Andreas Tobler58-0/+4385
From-SVN: r71069
2003-09-04003-09-04 Andreas Tobler <a.tobler@schweiz.ch>Andreas Tobler5-233/+395
* Makefile.am: Add dejagnu test framework. Fixes PR other/11411. * Makefile.in: Rebuilt. * configure.in: Add dejagnu test framework. * configure: Rebuilt. * testsuite/Makefile.am: New file. * testsuite/Makefile.in: Built * testsuite/lib/libffi-dg.exp: New file. * testsuite/config/default.exp: Likewise. * testsuite/libffi.call/call.exp: Likewise. * testsuite/libffi.call/ffitest.h: Likewise. * testsuite/libffi.call/closure_fn0.c: Likewise. * testsuite/libffi.call/closure_fn1.c: Likewise. * testsuite/libffi.call/closure_fn2.c: Likewise. * testsuite/libffi.call/closure_fn3.c: Likewise. * testsuite/libffi.call/cls_1_1byte.c: Likewise. * testsuite/libffi.call/cls_3_1byte.c: Likewise. * testsuite/libffi.call/cls_4_1byte.c: Likewise. * testsuite/libffi.call/cls_2byte.c: Likewise. * testsuite/libffi.call/cls_3byte1.c: Likewise. * testsuite/libffi.call/cls_3byte2.c: Likewise. * testsuite/libffi.call/cls_4byte.c: Likewise. * testsuite/libffi.call/cls_5byte.c: Likewise. * testsuite/libffi.call/cls_6byte.c: Likewise. * testsuite/libffi.call/cls_7byte.c: Likewise. * testsuite/libffi.call/cls_8byte.c: Likewise. * testsuite/libffi.call/cls_12byte.c: Likewise. * testsuite/libffi.call/cls_16byte.c: Likewise. * testsuite/libffi.call/cls_20byte.c: Likewise. * testsuite/libffi.call/cls_24byte.c: Likewise. * testsuite/libffi.call/cls_double.c: Likewise. * testsuite/libffi.call/cls_float.c: Likewise. * testsuite/libffi.call/cls_uchar.c: Likewise. * testsuite/libffi.call/cls_uint.c: Likewise. * testsuite/libffi.call/cls_ulonglong.c: Likewise. * testsuite/libffi.call/cls_ushort.c: Likewise. * testsuite/libffi.call/float.c: Likewise. * testsuite/libffi.call/float1.c: Likewise. * testsuite/libffi.call/float2.c: Likewise. * testsuite/libffi.call/many.c: Likewise. * testsuite/libffi.call/many_win32.c: Likewise. * testsuite/libffi.call/nested_struct.c: Likewise. * testsuite/libffi.call/nested_struct1.c: Likewise. * testsuite/libffi.call/pyobjc-tc.c: Likewise. * testsuite/libffi.call/problem1.c: Likewise. * testsuite/libffi.call/promotion.c: Likewise. * testsuite/libffi.call/return_ll.c: Likewise. * testsuite/libffi.call/return_sc.c: Likewise. * testsuite/libffi.call/return_uc.c: Likewise. * testsuite/libffi.call/strlen.c: Likewise. * testsuite/libffi.call/strlen_win32.c: Likewise. * testsuite/libffi.call/struct1.c: Likewise. * testsuite/libffi.call/struct2.c: Likewise. * testsuite/libffi.call/struct3.c: Likewise. * testsuite/libffi.call/struct4.c: Likewise. * testsuite/libffi.call/struct5.c: Likewise. * testsuite/libffi.call/struct6.c: Likewise. * testsuite/libffi.call/struct7.c: Likewise. * testsuite/libffi.call/struct8.c: Likewise. * testsuite/libffi.call/struct9.c: Likewise. * testsuite/libffi.special/special.exp: New file. * testsuite/libffi.special/ffitestcxx.h: Likewise. * testsuite/libffi.special/unwindtest.cc: Likewise. From-SVN: r71068
2003-08-13ffi.c (OFS_INT16): Set 0 for little endian case.Kaz Kojima2-2/+7
* src/sh/ffi.c (OFS_INT16): Set 0 for little endian case. Update copyright years. From-SVN: r70421
2003-08-02ffi.c (ffi_prep_args64): Modify for changed gcc structure passing.Alan Modra4-95/+81
* src/powerpc/ffi.c (ffi_prep_args64): Modify for changed gcc structure passing. (ffi_closure_helper_LINUX64): Likewise. * src/powerpc/linux64.S: Remove code writing to parm save area. * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Use return address in lr from ffi_closure_helper_LINUX64 call to calculate table address. Optimize function tail. From-SVN: r70050
2003-07-30re PR libffi/11410 (ffitest failures on Solaris 8/SPARC)Andreas Tobler3-17/+32
2003-07-28 Andreas Tobler <a.tobler@schweiz.ch> * src/sparc/ffi.c: Handle all floating point registers. * src/sparc/v9.S: Likewise. Fixes second part of PR target/11410. From-SVN: r69951
2003-07-11README: Note that libffi is not part of GCC.Gerald Pfeifer2-3/+12
* README: Note that libffi is not part of GCC. Update the project URL and status. From-SVN: r69250
2003-06-19ppc_closure.S: Include ffi.h.Franz Sirl2-0/+5
2003-06-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * src/powerpc/ppc_closure.S: Include ffi.h. From-SVN: r68191
2003-06-13sysv.S: Avoid gas-only .uleb128/.sleb128 directives.Rainer Orth2-30/+35
* src/x86/sysv.S: Avoid gas-only .uleb128/.sleb128 directives. Use C style comments. From-SVN: r67891
2003-06-13Makefile.am: Add SHmedia support.Kaz Kojima8-4/+993
* Makefile.am: Add SHmedia support. Fix a typo of SH support. * Makefile.in: Regenerate. * configure.in (sh64-*-linux*, sh5*-*-linux*): Add target. * configure: Regenerate. * include/ffi.h.in: Add SHmedia support. * src/sh64/ffi.c: New file. * src/sh64/sysv.S: New file. From-SVN: r67869
2003-05-17configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section should be ↵Jakub Jelinek15-63/+198
read-only. * configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section should be read-only. * configure: Rebuilt. * fficonfig.h.in: Rebuilt. * include/ffi.h.in (EH_FRAME_FLAGS): Define. * src/alpha/osf.S: Use EH_FRAME_FLAGS. * src/powerpc/linux64.S: Likewise. * src/powerpc/linux64_closure.S: Likewise. Include ffi.h. * src/powerpc/sysv.S: Use EH_FRAME_FLAGS. Use pcrel encoding if -fpic/-fPIC/-mrelocatable. * src/powerpc/powerpc_closure.S: Likewise. * src/sparc/v8.S: If HAVE_RO_EH_FRAME is defined, don't include #write in .eh_frame flags. * src/sparc/v9.S: Likewise. * src/x86/unix64.S: Use EH_FRAME_FLAGS. * src/x86/sysv.S: Likewise. Use pcrel encoding if -fpic/-fPIC. * src/s390/sysv.S: Use EH_FRAME_FLAGS. Include ffi.h. From-SVN: r66887
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