1. 23 Oct, 2003 1 commit
  2. 22 Oct, 2003 2 commits
  3. 21 Oct, 2003 3 commits
    • remove unnecessary files. · c860c22c
      From-SVN: r72768
      Andreas Tobler committed
    • commit missing adds. · c5a4ab3a
      From-SVN: r72767
      Andreas Tobler committed
    • [multiple changes] · 1450eb7a
      2003-10-21  Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* 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
      
      From-SVN: r72766
      Andreas Tobler committed
  4. 20 Oct, 2003 2 commits
  5. 13 Oct, 2003 1 commit
  6. 06 Oct, 2003 1 commit
  7. 01 Oct, 2003 1 commit
  8. 19 Sep, 2003 1 commit
    • closure_fn0.c: Xfail mips, arm, strongarm, xscale. · 9e3bfa9b
      2003-09-19  Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* 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.
      
      From-SVN: r71584
      Andreas Tobler committed
  9. 18 Sep, 2003 4 commits
    • aix.S: Cleanup whitespaces. · 3e86b595
              * src/powerpc/aix.S: Cleanup whitespaces.
              * src/powerpc/aix_closure.S: Likewise.
      
      From-SVN: r71542
      David Edelsohn committed
    • darwin.S: Cleanup whitespaces, comment formatting. · 8d8369f8
      2003-09-18  Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* src/powerpc/darwin.S: Cleanup whitespaces, comment formatting.
      	* src/powerpc/darwin_closure.S: Likewise.
      	* src/powerpc/ffi_darwin.c: Likewise.
      
      From-SVN: r71533
      Andreas Tobler committed
    • types.c (double): Add AIX and Darwin to the right TYPEDEF. · 69b182fd
      2003-09-18  Andreas Tobler  <a.tobler@schweiz.ch>
      	    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.
      
      Co-Authored-By: David Edelsohn <edelsohn@gnu.org>
      
      From-SVN: r71530
      Andreas Tobler committed
    • ffi.c (ffi_prep_args): Take account into the alignement for the register size. · df805cdc
      	* src/sh/ffi.c (ffi_prep_args): Take account into the alignement
      	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.
      
      From-SVN: r71521
      Kaz Kojima committed
  10. 17 Sep, 2003 1 commit
  11. 11 Sep, 2003 2 commits
  12. 09 Sep, 2003 2 commits
  13. 04 Sep, 2003 6 commits
    • Makefile.am: Remove build rules for ffitest. · 6f20d627
      2003-09-04  Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* Makefile.am: Remove build rules for ffitest.
      	* Makefile.in: Rebuilt.
      
      From-SVN: r71078
      Andreas Tobler committed
    • sorry forgot the changelog. · 226660af
      From-SVN: r71073
      Andreas Tobler committed
    • java_raw_api.c: Include <stdlib.h> to fix compiler warning about implicit declaration of abort(). · d6e3ff27
      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
      Andreas Tobler committed
    • Andreas Tobler <a.tobler@schweiz.ch> · efaede1c
      	* include/Makefile.in: Built.
      
      From-SVN: r71070
      Andreas Tobler committed
    • *** empty log message *** · 8a6b509e
      From-SVN: r71069
      Andreas Tobler committed
    • 003-09-04 Andreas Tobler <a.tobler@schweiz.ch> · bbf3057b
      	* 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
      Andreas Tobler committed
  14. 13 Aug, 2003 1 commit
  15. 01 Aug, 2003 1 commit
    • ffi.c (ffi_prep_args64): Modify for changed gcc structure passing. · b00badcd
      	* 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
      Alan Modra committed
  16. 30 Jul, 2003 1 commit
  17. 11 Jul, 2003 1 commit
  18. 19 Jun, 2003 1 commit
  19. 13 Jun, 2003 2 commits
  20. 16 May, 2003 1 commit
    • configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section should be read-only. · a733b15e
      	* 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
      Jakub Jelinek committed
  21. 08 May, 2003 1 commit
  22. 18 Apr, 2003 1 commit
    • configure.in (powerpc64*-*-linux*): Remove. · e9b84181
      	* 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
      Jakub Jelinek committed
  23. 16 Apr, 2003 1 commit
  24. 11 Apr, 2003 1 commit
  25. 05 Apr, 2003 1 commit