Commit Graph

100 Commits

Author SHA1 Message Date
Andreas Tobler
79e43f898d darwin_closure.S: Fix alignement bug, allocate 8 bytes for the result.
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-07 05:31:20 +01:00
Jakub Jelinek
0fcc9e55d4 ffi.c (ffi_closure_helper_SYSV): Add hidden visibility attribute.
* src/s390/ffi.c (ffi_closure_helper_SYSV): Add hidden visibility
	attribute.

From-SVN: r62454
2003-02-06 00:58:57 +01:00
Christian Cornelssen
63b87c2e8e configure.in: Adjust command to source config-ml.in to account for changes 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-31 20:35:22 +01:00
Franz Sirl
c33402e255 ppc_closure.S: Recode to fit shared libs.
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-29 23:53:54 +00:00
Andrew Haley
fd2e49b2ac ffi.h.in: Enable FFI_CLOSURES for x86_64.
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-28 15:54:28 +00:00
Alexandre Oliva
0e292c0153 configure.in (toolexecdir, [...]): Set and AC_SUBST.
* 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-28 01:48:33 +00:00
David Edelsohn
acabc2201e Makefile.am (TARGET_SRC_POWERPC_AIX): Fix typo.
* Makefile.am (TARGET_SRC_POWERPC_AIX): Fix typo.
        * Makefile.in: Regenerate.

From-SVN: r61899
2003-01-27 15:25:43 -05:00
Andrew Haley
be0acd4269 darwin.S (_ffi_call_AIX): Add Augmentation size to unwind info.
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-22 18:21:55 +00:00
Andreas Tobler
ed695c8e6c darwin.S: Add unwind info.
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-21 20:49:26 +00:00
Andrew Haley
45ba15f410 ffi64.c (ffi_prep_args): Check for void retval.
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-14 18:42:29 +00:00
Andreas Jaeger
4b5f402e2d ffitest.c (main): Only use ffi_closures if those are supported.
* src/ffitest.c (main): Only use ffi_closures if those are
	supported.

From-SVN: r61273
2003-01-14 10:50:48 +01:00
Tom Tromey
7b5102af84 [multiple changes]
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-14 05:15:21 +00:00
Geoffrey Keating
5f7c78d8a4 ffi_darwin.c: Remove RCS version string.
* src/powerpc/ffi_darwin.c: Remove RCS version string.
	* src/powerpc/darwin.S: Remove RCS version string.

From-SVN: r61135
2003-01-10 00:01:32 +00:00
Jeff Sturm
c75c7793f5 ffi.h.in: Add closure defines for SPARC, SPARC64.
* 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
2003-01-03 23:08:56 +00:00
Zack Weinberg
4977bab6ed Merge basic-improvements-branch to trunk
From-SVN: r60174
2002-12-16 18:23:00 +00:00
Ranjit Mathew
eb3c46a17e ffi.h.in: Added FFI_STDCALL ffi_type enumeration for X86_WIN32.
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-12-06 01:16:45 +00:00
Ulrich Weigand
67333e84d7 * src/s390/sysv.S (.eh_frame section): Make section read-only.
From-SVN: r59574
2002-11-27 16:44:35 +00:00
Jim Wilson
bc3cf76072 Fix Portable .NET bug with IA-64 pointer size.
* src/types.c (FFI_TYPE_POINTER): Has size 8 on IA64.

From-SVN: r59541
2002-11-26 14:24:05 -08:00
Ulrich Weigand
18789f4e75 s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
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-15 16:57:49 +00:00
DJ Delorie
6bee537279 * configure.in: Look for common files in the right place.
From-SVN: r59039
2002-11-11 23:45:57 -05:00
Ulrich Weigand
8177895b71 java_raw_api.c (ffi_java_raw_to_ptrarray): Interpret raw data as _Jv_word 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-08 14:55:03 +00:00
Andreas Jaeger
af50f4c807 * src/x86/ffi64.c (ffi_prep_cif_machdep): Remove debug output.
From-SVN: r57726
2002-10-02 08:21:54 +02:00
Bo Thorsen
5d2975841c * include/ffi.h.in: Fix i386 win32 compilation.
From-SVN: r57691
2002-10-01 17:38:00 +02:00
Ulrich Weigand
c4f17c6f58 configure.in: Add s390x-*-linux-* target.
* 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-30 11:59:42 +00:00
Richard Earnshaw
d7b5262524 * src/arm/sysv.S: Fix typo.
From-SVN: r57627
2002-09-29 18:08:58 +00:00
Richard Earnshaw
28165e22cd sysv.S: If we don't have machine/asm.h and the pre-processor has defined...
* 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-28 12:09:27 +00:00
Bo Thorsen
0b0f416385 ffi.h.in: Fix multilib x86-64 support.
2002-09-27  Bo Thorsen  <bo@suse.de>

        * include/ffi.h.in: Fix multilib x86-64 support.

From-SVN: r57589
2002-09-27 16:37:23 +02:00
Kaveh R. Ghazi
6c5d742e3b Makefile.am (all-multi): Fix multilib parallel build.
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-09-23 03:52:55 +00:00
Kaz Kojima
f4b2b0d665 configure.in (sh[34]*-*-linux*): Add brackets.
* configure.in (sh[34]*-*-linux*): Add brackets.
	* configure: Regenerate.

From-SVN: r55589
2002-07-19 15:30:58 +00:00
Kaz Kojima
ddebdfebad Makefile.am: Add SH support.
* 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-19 01:08:43 +00:00
Bo Thorsen
c94974caed [multiple changes]
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-19 01:08:31 +02:00
H.J. Lu
5be36a8f27 Makefile.am (TARGET_SRC_MIPS_LINUX): New.
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-07-18 10:55:28 -07:00
Ulrich Weigand
ad5e163ca6 * src/s390/sysv.S: Save/restore %r6. Add DWARF-2 unwind info.
From-SVN: r54317
2002-06-06 12:51:23 +00:00
Bo Thorsen
4075db8f84 Fix last commit. Sorry about that.
From-SVN: r53946
2002-05-28 09:11:42 +02:00
Roger Sayle
ee4586c531 * src/x86/ffi.c (ffi_prep_args): Remove reference to avn.
From-SVN: r53942
2002-05-28 02:02:46 +00:00
Bo Thorsen
b86aa7b048 ffi.c (ffi_prep_args): Remove unused variable and fix formatting.
2002-05-27  Bo Thorsen  <bo@suse.de>

	* src/x86/ffi.c (ffi_prep_args): Remove unused variable and
	fix formatting.

From-SVN: r53926
2002-05-27 15:54:44 +02:00
Andreas Tobler
859f7aaf41 ffi_darwin.c (ffi_prep_closure): Declare fd at beginning of function (for older apple cc).
2002-05-13  Andreas Tobler  <a.tobler@schweiz.ch>

        * src/powerpc/ffi_darwin.c (ffi_prep_closure): Declare fd at
        beginning of function (for older apple cc).

From-SVN: r53430
2002-05-13 16:19:10 -04:00
Alexandre Oliva
6706f1167e configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at script entry, and set LD to it when configuring multilibs.
* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
script entry, and set LD to it when configuring multilibs.
* configure: Rebuilt.

From-SVN: r53278
2002-05-08 04:38:00 +00:00
Jason Thorpe
fad655c869 configure.in (sparc64-*-netbsd*): Add target.
* configure.in (sparc64-*-netbsd*): Add target.
(sparc-*-netbsdelf*): Likewise.
* configure: Regenerate.

From-SVN: r53171
2002-05-05 05:03:33 +00:00
David S. Miller
189ab118de configure.in, configure: Fix SPARC test in previous change.
2002-04-28  David S. Miller  <davem@redhat.com>

	* configure.in, configure: Fix SPARC test in previous change.

From-SVN: r52878
2002-04-28 22:48:05 -07:00
Gerhard Tonn
22bcf65c52 Makefile.am: Add Linux for S/390 support.
2002-04-29  Gerhard Tonn  <GerhardTonn@swol.de>

	* Makefile.am: Add Linux for S/390 support.
	* Makefile.in: Regenerate.
	* configure.in: Add Linux for S/390 support.
	* configure: Regenerate.
	* include/ffi.h.in: Add Linux for S/390 support.
	* src/s390/ffi.c: New file from libffi CVS tree.
	* src/s390/sysv.S: New file from libffi CVS tree.

From-SVN: r52873
2002-04-29 05:14:44 +01:00
Jakub Jelinek
5d84cf0b8d configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working %r_disp32().
* configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working
	%r_disp32().
	* src/sparc/v8.S: Use it.
	* src/sparc/v9.S: Likewise.
	* fficonfig.h.in: Rebuilt.
	* configure: Rebuilt.

From-SVN: r52858
2002-04-28 21:57:42 +02:00
Hans Boehm
cc382e5c1a java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE correctly.
* src/java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE
	correctly.
	* src/ia64/unix.S: Add unwind information. Fix comments.
	Save sp in a way that's compatible with unwind info.
	(ffi_call_unix): Correctly restore sp in all cases.
	* src/ia64/ffi.c: Add, fix comments.

From-SVN: r52048
2002-04-08 23:59:13 +00:00
Jakub Jelinek
dc79864588 * src/sparc/v8.S: Make .eh_frame dependent on target word size.
From-SVN: r52041
2002-04-08 22:24:17 +02:00
Jason Thorpe
da00eaab0b configure.in (alpha*-*-netbsd*): Add target.
* configure.in (alpha*-*-netbsd*): Add target.
* configure: Regenerate.

From-SVN: r51976
2002-04-07 04:19:31 +00:00
Jeff Sturm
0c0b87addd v8.S: Add unwind info.
* src/sparc/v8.S: Add unwind info.
	* src/sparc/v9.S: Likewise.

From-SVN: r51873
2002-04-04 21:19:13 +00:00
Krister Walfridsson
320d7e7ad6 configure.in (i*86-*-netbsdelf*): Don't disable libgcj.
2002-03-30  Krister Walfridsson  <cato@df.lth.se>

	* configure.in (i*86-*-netbsdelf*): Don't disable libgcj.

libffi:
2002-03-30  Krister Walfridsson  <cato@df.lth.se>

	* configure.in: Enable i*86-*-netbsdelf*.
	* configure: Rebuilt.

From-SVN: r51620
2002-03-31 00:33:17 +00:00
David Billinghurst
c75e51ed68 re PR other/2620 (Filenames differ only in case)
2002-03-29  David Billinghurst <David.Billinghurst@riotinto.com>

	PR other/2620
	* src/mips/n32.s: Delete
	* src/mips/o32.s: Delete

From-SVN: r51537
2002-03-29 00:39:57 +00:00
Loren J. Rittle
5bb366e023 configure.in: Enable alpha*-*-freebsd*.
* configure.in: Enable alpha*-*-freebsd*.
	* configure: Rebuilt.

From-SVN: r51143
2002-03-21 22:14:56 +00:00
Bryce McKinlay
1eb7ba303a Makefile.am: Define ffitest_OBJECTS.
* Makefile.am: Define ffitest_OBJECTS.
	* Makefile.in: Rebuilt.

From-SVN: r50904
2002-03-17 01:05:11 +00:00