summaryrefslogtreecommitdiffstats
path: root/libffi
Commit message (Collapse)AuthorAgeFilesLines
* 2003-12-04 Hosaka Yuji <hos@tamanegi.org>andreast2003-12-0412-1/+999
| | | | | | | | | | | | | | | | | | | | * testsuite/libffi.call/many_win32.c: Include <float.h>. * testsuite/libffi.call/many_win32.c (main): Replace variable int i with unsigned long ul. * testsuite/libffi.call/cls_align_uint64.c: New test case. * testsuite/libffi.call/cls_align_sint64.c: Likewise. * testsuite/libffi.call/cls_align_uint32.c: Likewise. * testsuite/libffi.call/cls_align_sint32.c: Likewise. * testsuite/libffi.call/cls_align_uint16.c: Likewise. * testsuite/libffi.call/cls_align_sint16.c: Likewise. * testsuite/libffi.call/cls_align_float.c: Likewise. * testsuite/libffi.call/cls_align_double.c: Likewise. * testsuite/libffi.call/cls_align_longdouble.c: Likewise. * testsuite/libffi.call/cls_align_pointer.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74282 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-12-02 Hosaka Yuji <hos@tamanegi.org>andreast2003-12-022-4/+10
| | | | | | | | | PR other/13221 * src/x86/ffi.c (ffi_prep_args, ffi_prep_incoming_args_SYSV): Align arguments to 32 bits. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74161 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-12-01 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-12-018-1/+538
| | | | | | | | | | | | | | | PR other/13221 * testsuite/libffi.call/cls_multi_sshort.c: New test case. * testsuite/libffi.call/cls_multi_sshortchar.c: Likewise. * testsuite/libffi.call/cls_multi_uchar.c: Likewise. * testsuite/libffi.call/cls_multi_schar.c: Likewise. * testsuite/libffi.call/cls_multi_ushortchar.c: Likewise. * testsuite/libffi.call/cls_multi_ushort.c: Likewise. * testsuite/libffi.special/unwindtest.cc: Cosmetics. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74093 138bc75d-0d04-0410-961f-82ee72b054a4
* * testsuite/libffi.call/ffitest.h: Include <fcntl.h>.ghazi2003-11-263-0/+7
| | | | | | | * testsuite/libffi.special/ffitestcxx.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73950 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-22 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-11-224-113/+248
| | | | | | | | | | * Makefile.in: Rebuilt. * configure: Likewise. * testsuite/libffi.special/unwindtest.cc: Convert the mmap to the right type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73837 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-21 Andreas Jaeger <aj@suse.de>andreast2003-11-2152-261/+981
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Andreas Tobler <a.tobler@schweiz.ch> * acinclude.m4: Add AC_FUNC_MMAP_BLACKLIST. * configure.in: Call AC_FUNC_MMAP_BLACKLIST. * Makefile.in: Rebuilt. * aclocal.m4: Likewise. * configure: Likewise. * fficonfig.h.in: Likewise. * testsuite/lib/libffi-dg.exp: Add include dir. * testsuite/libffi.call/ffitest.h: Add MMAP definitions. * testsuite/libffi.special/ffitestcxx.h: Likewise. * testsuite/libffi.call/closure_fn0.c: Use MMAP functionality for ffi_closure if available. * testsuite/libffi.call/closure_fn1.c: Likewise. * testsuite/libffi.call/closure_fn2.c: Likewise. * testsuite/libffi.call/closure_fn3.c: Likewise. * testsuite/libffi.call/closure_fn4.c: Likewise. * testsuite/libffi.call/closure_fn5.c: Likewise. * testsuite/libffi.call/cls_12byte.c: Likewise. * testsuite/libffi.call/cls_16byte.c: Likewise. * testsuite/libffi.call/cls_18byte.c: Likewise. * testsuite/libffi.call/cls_19byte.c: Likewise. * testsuite/libffi.call/cls_1_1byte.c: Likewise. * testsuite/libffi.call/cls_20byte.c: Likewise. * testsuite/libffi.call/cls_20byte1.c: Likewise. * testsuite/libffi.call/cls_24byte.c: Likewise. * testsuite/libffi.call/cls_2byte.c: Likewise. * testsuite/libffi.call/cls_3_1byte.c: Likewise. * testsuite/libffi.call/cls_3byte1.c: Likewise. * testsuite/libffi.call/cls_3byte2.c: Likewise. * testsuite/libffi.call/cls_4_1byte.c: Likewise. * testsuite/libffi.call/cls_4byte.c: Likewise. * testsuite/libffi.call/cls_5byte.c: Likewise. * testsuite/libffi.call/cls_64byte.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_9byte1.c: Likewise. * testsuite/libffi.call/cls_9byte2.c: Likewise. * testsuite/libffi.call/cls_double.c: Likewise. * testsuite/libffi.call/cls_float.c: Likewise. * testsuite/libffi.call/cls_schar.c: Likewise. * testsuite/libffi.call/cls_sint.c: Likewise. * testsuite/libffi.call/cls_sshort.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/nested_struct.c: Likewise. * testsuite/libffi.call/nested_struct1.c: Likewise. * testsuite/libffi.call/nested_struct2.c: Likewise. * testsuite/libffi.call/nested_struct3.c: Likewise. * testsuite/libffi.call/problem1.c: Likewise. * testsuite/libffi.special/unwindtest.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73800 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-20 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-11-202-1/+10
| | | | | | | * testsuite/lib/libffi-dg.exp: Make the -lgcc_s conditional. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73763 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-19 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-11-192-2/+12
| | | | | | | | * testsuite/lib/libffi-dg.exp: Add DYLD_LIBRARY_PATH for darwin. Add -lgcc_s to additional flags. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73726 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-12 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-11-127-88/+178
| | | | | | | | | | | | * configure.in, include/Makefile.am: PR libgcj/11147, install the ffitarget.h header file in a gcc versioned and target dependent place. * configure: Regenerated. * Makefile.in, include/Makefile.in: Likewise. * testsuite/Makefile.in: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73504 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-09 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-11-0939-193/+221
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * testsuite/libffi.call/closure_fn0.c: Print result and check with dg-output to make debugging easier. * testsuite/libffi.call/closure_fn1.c: Likewise. * testsuite/libffi.call/closure_fn2.c: Likewise. * testsuite/libffi.call/closure_fn3.c: Likewise. * testsuite/libffi.call/closure_fn4.c: Likewise. * testsuite/libffi.call/closure_fn5.c: Likewise. * testsuite/libffi.call/cls_12byte.c: Likewise. * testsuite/libffi.call/cls_16byte.c: Likewise. * testsuite/libffi.call/cls_18byte.c: Likewise. * testsuite/libffi.call/cls_19byte.c: Likewise. * testsuite/libffi.call/cls_1_1byte.c: Likewise. * testsuite/libffi.call/cls_20byte.c: Likewise. * testsuite/libffi.call/cls_20byte1.c: Likewise. * testsuite/libffi.call/cls_24byte.c: Likewise. * testsuite/libffi.call/cls_2byte.c: Likewise. * testsuite/libffi.call/cls_3_1byte.c: Likewise. * testsuite/libffi.call/cls_3byte1.c: Likewise. * testsuite/libffi.call/cls_3byte2.c: Likewise. * testsuite/libffi.call/cls_4_1byte.c: Likewise. * testsuite/libffi.call/cls_4byte.c: Likewise. * testsuite/libffi.call/cls_5byte.c: Likewise. * testsuite/libffi.call/cls_64byte.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_9byte1.c: Likewise. * testsuite/libffi.call/cls_9byte2.c: Likewise. * testsuite/libffi.call/cls_double.c: Likewise. * testsuite/libffi.call/cls_float.c: Likewise. * testsuite/libffi.call/cls_schar.c: Likewise. * testsuite/libffi.call/cls_sint.c: Likewise. * testsuite/libffi.call/cls_sshort.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/problem1.c: Likewise. * testsuite/libffi.special/unwindtest.cc: Make ffi_closure static. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73393 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-08 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-11-0814-0/+1154
| | | | | | | | | | | | | | | | | | | * testsuite/libffi.call/cls_9byte2.c: New test case. * testsuite/libffi.call/cls_9byte1.c: Likewise. * testsuite/libffi.call/cls_64byte.c: Likewise. * testsuite/libffi.call/cls_20byte1.c: Likewise. * testsuite/libffi.call/cls_19byte.c: Likewise. * testsuite/libffi.call/cls_18byte.c: Likewise. * testsuite/libffi.call/closure_fn4.c: Likewise. * testsuite/libffi.call/closure_fn5.c: Likewise. * testsuite/libffi.call/cls_schar.c: Likewise. * testsuite/libffi.call/cls_sint.c: Likewise. * testsuite/libffi.call/cls_sshort.c: Likewise. * testsuite/libffi.call/nested_struct2.c: Likewise. * testsuite/libffi.call/nested_struct3.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73372 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-08 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-11-087-18/+30
| | | | | | | | | | | | * testsuite/libffi.call/cls_double.c: Do a check on the result. * 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/return_sc.c: Cleanup whitespaces. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73369 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-11-06 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-11-062-3/+10
| | | | | | | | * src/prep_cif.c (ffi_prep_cif): Move the validity check after the initialization. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73309 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-10-23 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-10-232-1/+6
| | | | | | | | * src/java_raw_api.c (ffi_java_ptrarray_to_raw): Replace FFI_ASSERT(FALSE) with FFI_ASSERT(0). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72865 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-10-22 David Daney <ddaney@avtrex.com>daney2003-10-222-4/+9
| | | | | | | | * src/mips/ffitarget.h: Replace undefined UINT32 and friends with __attribute__((__mode__(__SI__))) and friends. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72802 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/ia64/ffi.c: Replace FALSE/TRUE with false/true.schwab2003-10-222-13/+17
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72797 138bc75d-0d04-0410-961f-82ee72b054a4
* remove unnecessary files.andreast2003-10-212-149/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72768 138bc75d-0d04-0410-961f-82ee72b054a4
* commit missing adds.andreast2003-10-2111-0/+756
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72767 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-10-21 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-10-2144-1077/+657
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.in: AC_LINK_FILES(ffitarget.h). * configure: Regenerate. * Makefile.in: Likewise. * include/Makefile.in: Likewise. * testsuite/Makefile.in: Likewise. * fficonfig.h.in: Likewise. 2003-10-21 Paolo Bonzini <bonzini@gnu.org> Richard Henderson <rth@redhat.com> Avoid that ffi.h includes fficonfig.h. * Makefile.am (EXTRA_DIST): Include ffitarget.h files (TARGET_SRC_MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX. (TARGET_SRC_MIPS_SGI): Removed. (MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX. (MIPS_SGI): Removed. (CLEANFILES): Removed. (mostlyclean-am, clean-am, mostlyclean-sub, clean-sub): New targets. * acconfig.h: Removed. * configure.in: Compute sizeofs only for double and long double. Use them to define and subst HAVE_LONG_DOUBLE. Include comments into AC_DEFINE instead of using acconfig.h. Create include/ffitarget.h instead of include/fficonfig.h. Rename MIPS_GCC to MIPS_IRIX, drop MIPS_SGI since we are in gcc's tree. AC_DEFINE EH_FRAME_FLAGS. * include/Makefile.am (DISTCLEANFILES): New automake macro. (hack_DATA): Add ffitarget.h. * include/ffi.h.in: Remove all system specific definitions. Declare raw API even if it is not installed, why bother? Use limits.h instead of SIZEOF_* to define ffi_type_*. Do not define EH_FRAME_FLAGS, it is in fficonfig.h now. Include ffitarget.h instead of fficonfig.h. Remove ALIGN macro. (UINT_ARG, INT_ARG): Removed, use ffi_arg and ffi_sarg instead. * include/ffi_common.h (bool): Do not define. (ffi_assert): Accept failed assertion. (ffi_type_test): Return void and accept file/line. (FFI_ASSERT): Pass stringized failed assertion. (FFI_ASSERT_AT): New macro. (FFI_ASSERT_VALID_TYPE): New macro. (UINT8, SINT8, UINT16, SINT16, UINT32, SINT32, UINT64, SINT64): Define here with gcc's __attribute__ macro instead of in ffi.h (FLOAT32, ALIGN): Define here instead of in ffi.h * include/ffi-mips.h: Removed. Its content moved to src/mips/ffitarget.h after separating assembly and C sections. * src/alpha/ffi.c, src/alpha/ffi.c, src/java_raw_api.c src/prep_cif.c, src/raw_api.c, src/ia64/ffi.c, src/mips/ffi.c, src/mips/n32.S, src/mips/o32.S, src/mips/ffitarget.h, src/sparc/ffi.c, src/x86/ffi64.c: SIZEOF_ARG -> FFI_SIZEOF_ARG. * src/ia64/ffi.c: Include stdbool.h (provided by GCC 2.95+). * src/debug.c (ffi_assert): Accept stringized failed assertion. (ffi_type_test): Rewritten. * src/prep-cif.c (initialize_aggregate, ffi_prep_cif): Call FFI_ASSERT_VALID_TYPE. * src/alpha/ffitarget.h, src/arm/ffitarget.h, src/ia64/ffitarget.h, src/m68k/ffitarget.h, src/mips/ffitarget.h, src/powerpc/ffitarget.h, src/s390/ffitarget.h, src/sh/ffitarget.h, src/sh64/ffitarget.h, src/sparc/ffitarget.h, src/x86/ffitarget.h: New files. * src/alpha/osf.S, src/arm/sysv.S, src/ia64/unix.S, src/m68k/sysv.S, src/mips/n32.S, src/mips/o32.S, src/powerpc/aix.S, src/powerpc/darwin.S, src/powerpc/ffi_darwin.c, src/powerpc/linux64.S, src/powerpc/linux64_closure.S, src/powerpc/ppc_closure.S, src/powerpc/sysv.S, src/s390/sysv.S, src/sh/sysv.S, src/sh64/sysv.S, src/sparc/v8.S, src/sparc/v9.S, src/x86/sysv.S, src/x86/unix64.S, src/x86/win32.S: include fficonfig.h git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72766 138bc75d-0d04-0410-961f-82ee72b054a4
* libffi:ro2003-10-202-10/+15
| | | | | | | | | | | | | | | | | | | | | * src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external _MIPS_SIM_NABI32, _MIPS_SIM_ABI32. libstdc++-v3: * config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead of external _MIPS_SIM_ABI32. boehm-gc: * mips_sgi_mach_dep.s: Use _ABIO32 instead of external _MIPS_SIM_ABI32. gcc: * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Define _ABIO32. Use it in _MIPS_SIM definition. * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72713 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-10-19 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-10-202-0/+6
| | | | | | | | * src/powerpc/ffi_darwin.c (ffi_prep_args): Declare bytes again. Used when FFI_DEBUG = 1. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72691 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/types.c (double, longdouble): Default POWERPC64 to 8 byte sizeamodra2003-10-132-1/+6
| | | | | | | and align. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72432 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/ffi_mips.h: Define FFI_MIPS_N32 for N32/N64 ABIs,ro2003-10-062-6/+7
| | | | | | | FFI_MIPS_O32 for O32 ABI. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72161 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-10-01 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-10-012-13/+19
| | | | | | | | * testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_64 for SPARC64. Cleanup whitespaces. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71982 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-09-19 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-09-1931-349/+383
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * testsuite/libffi.call/closure_fn0.c: Xfail mips, arm, strongarm, xscale. Cleanup whitespaces. * 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_12byte.c: Likewise. * testsuite/libffi.call/cls_16byte.c: Likewise. * testsuite/libffi.call/cls_1_1byte.c: Likewise. * testsuite/libffi.call/cls_20byte.c: Likewise. * testsuite/libffi.call/cls_24byte.c: Likewise. * testsuite/libffi.call/cls_2byte.c: Likewise. * testsuite/libffi.call/cls_3_1byte.c: Likewise. * testsuite/libffi.call/cls_3byte1.c: Likewise. * testsuite/libffi.call/cls_3byte2.c: Likewise. * testsuite/libffi.call/cls_4_1byte.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_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/nested_struct.c: Likewise. * testsuite/libffi.call/nested_struct1.c: Likewise. * testsuite/libffi.call/problem1.c: Likewise. * testsuite/libffi.special/unwindtest.cc: Likewise. * testsuite/libffi.call/pyobjc-tc.c: Cleanup whitespaces. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71584 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/powerpc/aix.S: Cleanup whitespaces.dje2003-09-183-23/+27
| | | | | | | * src/powerpc/aix_closure.S: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71542 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-09-18 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-09-184-224/+225
| | | | | | | | | * src/powerpc/darwin.S: Cleanup whitespaces, comment formatting. * src/powerpc/darwin_closure.S: Likewise. * src/powerpc/ffi_darwin.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71533 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-09-18 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-09-185-184/+184
| | | | | | | | | | | | | | | | | | | | David Edelsohn <edelsohn@gnu.org> * src/types.c (double): Add AIX and Darwin to the right TYPEDEF. * src/powerpc/aix_closure.S: Remove the pointer to the outgoing parameter stack. * src/powerpc/darwin_closure.S: Likewise. * src/powerpc/ffi_darwin.c (ffi_prep_args): Handle structures according to the Darwin/AIX ABI. (ffi_prep_cif_machdep): Likewise. (ffi_closure_helper_DARWIN): Likewise. Remove the outgoing parameter stack logic. Simplify the evaluation of the different CASE types. (ffi_prep_clousure): Avoid the casts on lvalues. Change the branch statement in the trampoline code. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71530 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/sh/ffi.c (ffi_prep_args): Take account into the alignementkkojima2003-09-183-20/+32
| | | | | | | | | | | | | for the register size. (ffi_closure_helper_SYSV): Handle the structure return value address correctly. (ffi_closure_helper_SYSV): Return the appropriate type when the registers are used for the structure return value. * src/sh/sysv.S (ffi_closure_SYSV): Fix the stack layout for the 64-bit return value. Update copyright years. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71521 138bc75d-0d04-0410-961f-82ee72b054a4
* * testsuite/lib/libffi-dg.exp (libffi_target_compile): Search inro2003-09-172-1/+7
| | | | | | | srcdir for ffi_mips.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71469 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/prep_cif.c (initialize_aggregate): Include tail padding inamodra2003-09-114-3/+21
| | | | | | | | | | | structure size. * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Correct placement of float result. * testsuite/libffi.special/unwindtest.cc (closure_test_fn1): Correct cast of "resp" for big-endian 64 bit machines. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71323 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/types.c (double, longdouble): Merge identical SH and ARMamodra2003-09-114-13/+17
| | | | | | | | | | | typedefs, and add POWERPC64. * src/powerpc/ffi.c (ffi_prep_args64): Correct next_arg calc for struct split over gpr and rest. (ffi_prep_cif_machdep): Correct intarg_count for structures. * src/powerpc/linux64.S (ffi_call_LINUX64): Fix gpr offsets. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71295 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-09-09 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-09-092-2/+19
| | | | | | | | * src/powerpc/ffi.c (ffi_closure_helper_SYSV) Handle struct passing correctly. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71238 138bc75d-0d04-0410-961f-82ee72b054a4
* * libtool.m4 (LD): Correct powerpc64 host match.amodra2003-09-092-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71229 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-09-04 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-09-043-42/+17
| | | | | | | | * Makefile.am: Remove build rules for ffitest. * Makefile.in: Rebuilt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71078 138bc75d-0d04-0410-961f-82ee72b054a4
* sorry forgot the changelog.andreast2003-09-041-0/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71073 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-08-30 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-09-041-0/+1
| | | | | | | | * src/java_raw_api.c: Include <stdlib.h> to fix compiler warning about implicit declaration of abort(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71071 138bc75d-0d04-0410-961f-82ee72b054a4
* Andreas Tobler <a.tobler@schweiz.ch>andreast2003-09-041-3/+8
| | | | | | | * include/Makefile.in: Built. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71070 138bc75d-0d04-0410-961f-82ee72b054a4
* *** empty log message ***andreast2003-09-0458-0/+4385
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71069 138bc75d-0d04-0410-961f-82ee72b054a4
* 003-09-04 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-09-045-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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71068 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/sh/ffi.c (OFS_INT16): Set 0 for little endian case. Updatekkojima2003-08-132-2/+7
| | | | | | | copyright years. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@70421 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/powerpc/ffi.c (ffi_prep_args64): Modify for changed gccamodra2003-08-014-95/+81
| | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@70050 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-07-28 Andreas Tobler <a.tobler@schweiz.ch>andreast2003-07-303-17/+32
| | | | | | | | * src/sparc/ffi.c: Handle all floating point registers. * src/sparc/v9.S: Likewise. Fixes second part of PR target/11410. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69951 138bc75d-0d04-0410-961f-82ee72b054a4
* * README: Note that libffi is not part of GCC. Update the projectgerald2003-07-112-3/+12
| | | | | | | URL and status. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69250 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-06-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>sirl2003-06-192-0/+5
| | | | | | | * src/powerpc/ppc_closure.S: Include ffi.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68191 138bc75d-0d04-0410-961f-82ee72b054a4
* * src/x86/sysv.S: Avoid gas-only .uleb128/.sleb128 directives.ro2003-06-132-30/+35
| | | | | | | Use C style comments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67891 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.am: Add SHmedia support. Fix a typo of SH support.kkojima2003-06-138-4/+993
| | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67869 138bc75d-0d04-0410-961f-82ee72b054a4
* * configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame sectionjakub2003-05-1615-63/+198
| | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66887 138bc75d-0d04-0410-961f-82ee72b054a4
* Solaris 7 .register fix.green2003-05-085-21/+88
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66617 138bc75d-0d04-0410-961f-82ee72b054a4
* * configure.in (powerpc64*-*-linux*): Remove.jakub2003-04-1812-118/+992
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@65781 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud