Commit Graph

526 Commits

Author SHA1 Message Date
Joel Sherrill
899fb23dc0 ffi.c: Add RTEMS support for cache flushing.
2011-02-07  Joel Sherrill <joel.sherrill@oarcorp.com>

	* libffi/src/m68k/ffi.c: Add RTEMS support for cache flushing.
	Handle case when CPU variant does not have long double support.
	* libffi/src/m68k/sysv.S: Add support for mc68000, Coldfire,
	and cores with soft floating point.

From-SVN: r169937
2011-02-08 19:18:31 +00:00
Joel Sherrill
38db4d09fa configure.ac: Add mips*-*-rtems* support.
2011-02-07  Joel Sherrill <joel.sherrill@oarcorp.com>

	* configure.ac: Add mips*-*-rtems* support.
	* configure: Regenerate.
	* src/mips/ffitarget.h: Ensure needed constants are available
	for targets which do not have sgidefs.h.

From-SVN: r169936
2011-02-08 19:17:55 +00:00
Uros Bizjak
38be4072f9 transpose_optimization_2.f90: Cleanup original dump.
* gfortran.dg/transpose_optimization_2.f90: Cleanup original dump.

From-SVN: r169876
2011-02-07 08:34:57 +01:00
Dave Korn
214dab6607 re PR target/40125 (libgcc_s DLL installed in wrong directory in cross toolchain)
PR target/40125
	* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
	* configure: Regenerate.

From-SVN: r169272
2011-01-26 03:33:09 +00:00
Jakub Jelinek
d652f226fc Update Copyright years for files modified in 2010.
From-SVN: r168438
2011-01-03 21:52:22 +01:00
Iain Sandoe
3a9f56e8c8 re PR libffi/29152 (64-bit darwin ppc port needed for libffi)
libffi:
	PR libffi/29152
	PR libffi/42378
	* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
	update comments.
	* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
	(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
	* src/powerpc/darwin.S: Provide Darwin64 implementation,
	update comments.
	* src/powerpc/ffi_darwin.c: Likewise.

From-SVN: r168016
2010-12-18 08:56:46 +00:00
Rainer Orth
b62305b019 configure.ac (libffi_cv_as_ascii_pseudo_op): Use double backslashes.
* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
	backslashes.
	(libffi_cv_as_string_pseudo_op): Likewise.
	* configure: Regenerate.

From-SVN: r167502
2010-12-06 16:17:45 +00:00
Chung-Lin Tang
fac6806566 sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
2010-12-03  Chung-Lin Tang  <cltang@codesourcery.com>

	* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
	(ffi_closure_VFP): Same.
	(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
	directive.

From-SVN: r167434
2010-12-03 16:15:26 +00:00
Rainer Orth
ce9315a9f5 ffitest.h [__sgi] (PRId64, PRIu64): Define.
* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
	(PRIuPTR): Define.

From-SVN: r167332
2010-12-01 14:00:01 +00:00
Richard Henderson
e12bcbf492 sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
2010-11-29  Richard Henderson  <rth@redhat.com>
	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
	(.eh_frame): Use FDE_ENCODING.
	(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.

Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>

From-SVN: r167251
2010-11-29 16:43:24 +00:00
Rainer Orth
ed2a97eb0d libffi-dg.exp: Rename ...
* testsuite/lib/libffi-dg.exp: Rename ...
	* testsuite/lib/libffi.exp: ... to this.
	* libffi/testsuite/libffi.call/call.exp: Don't load libffi-dg.exp.
	* libffi/testsuite/libffi.special/special.exp: Likewise.

From-SVN: r166768
2010-11-15 20:30:37 +00:00
Chung-Lin Tang
46e0720d66 Add ARM VFP ABI support to libffi.
From-SVN: r166032
2010-10-28 18:11:11 +00:00
Jakub Jelinek
731fc5f040 re PR libffi/45677 (Bad stack allocation for ffi function calls on x86-64)
PR libffi/45677
	* src/x86/ffi64.c (ffi_prep_cif_machdep): Ensure cif->bytes is
	a multiple of 8.
	* testsuite/libffi.call/many2.c: New test.

From-SVN: r164829
2010-10-01 09:31:49 +02:00
Mark Wielaard
2cd8686617 closures.c (open_temp_exec_file_mnt): Check if getmntent_r returns NULL.
* src/closures.c (open_temp_exec_file_mnt): Check if getmntent_r
	returns NULL.

From-SVN: r163809
2010-09-03 10:35:35 +00:00
Jakub Jelinek
be94d007e6 Fix up a wrong ChangeLog entry:
* testsuite/libffi.call/err_bad_abi.c: Remove unused args variable.

From-SVN: r163099
2010-08-11 15:59:35 +02:00
Andreas Tobler
87d072e09a configure.ac: Add target powerpc64-*-freebsd*.
2010-08-09  Andreas Tobler  <andreast@fgznet.ch>

        * configure.ac: Add target powerpc64-*-freebsd*.
        * configure: Regenerate.
        * testsuite/libffi.call/cls_align_longdouble_split.c: Pass
        -mlong-double-128 only to linux targets.
        * testsuite/libffi.call/cls_align_longdouble_split2.c: Likewise.
        * testsuite/libffi.call/cls_longdouble.c: Likewise.
        * testsuite/libffi.call/huge_struct.c: Likewise.

From-SVN: r163030
2010-08-09 15:00:32 +02:00
Dan Witte
7862d49629 Remove warnings
From-SVN: r162959
2010-08-06 20:05:33 +00:00
Anthony Green
833bb7dfad Add missing commit from patch earlier today
From-SVN: r162958
2010-08-06 20:02:41 +00:00
Dan Witte
49f6cd1f25 Add OS/2 Support
Co-Authored-By: Walter Meinl <wuno@lsvw.de>

From-SVN: r162946
2010-08-06 12:36:26 +00:00
Dan Horák
3d420bdf4d Define libffi macros carefully
From-SVN: r162945
2010-08-06 12:26:52 +00:00
Michael Kohler
0af2372948 Fix spelling errors
From-SVN: r162938
2010-08-06 05:45:23 +00:00
Evan Phoenix
07b6d9efd9 Fix SELinux test
From-SVN: r162937
2010-08-06 05:40:15 +00:00
Matthias Klose
4736718a4e Improve libffi comments
From-SVN: r162936
2010-08-06 05:28:37 +00:00
Anthony Green
3ac097a580 Enable build with microsoft compiler
From-SVN: r162935
2010-08-06 05:24:11 +00:00
Oliver Kiddle
fc28e435cf Enable build with sun compiler
From-SVN: r162933
2010-08-06 04:55:25 +00:00
Conrad Irwin
f2e994f3c6 Add closure API example to documentation
From-SVN: r162932
2010-08-06 04:45:46 +00:00
Neil Roberts
4138b429ca sysv.S (ffi_call_SYSV): Align the stack pointer to 16-bytes.
2010-07-07   Neil Roberts <neil@linux.intel.com>

	* src/x86/sysv.S (ffi_call_SYSV): Align the stack pointer to
	16-bytes.

From-SVN: r161922
2010-07-07 15:59:30 +00:00
Jakub Jelinek
f0ee5e3e2a Makefile.am (AM_MAKEFLAGS): Pass also mandir to submakes.
* Makefile.am (AM_MAKEFLAGS): Pass also mandir to submakes.
	* Makefile.in: Regenerated.

From-SVN: r161731
2010-07-02 18:52:38 +02:00
Rainer Orth
d416abb494 configure.ac (libffi_cv_as_x86_pcrel): Check for illegal in as output, too.
* configure.ac (libffi_cv_as_x86_pcrel): Check for illegal in as
	output, too.
	(libffi_cv_as_ascii_pseudo_op): Check for .ascii.
	(libffi_cv_as_string_pseudo_op): Check for .string.
	* configure: Regenerate.
	* fficonfig.h.in: Regenerate.
	* src/x86/sysv.S (.eh_frame): Use .ascii, .string or error.

From-SVN: r159570
2010-05-19 15:31:36 +00:00
Jakub Jelinek
60d3aec487 tree-ssa-pre.c (my_rev_post_order_compute): Remove set but not used count variable.
* tree-ssa-pre.c (my_rev_post_order_compute): Remove set but not
	used count variable.
	* genemit.c (gen_expand, gen_split): Avoid set but not used warnings
	when operandN variables aren't used in the body of the expander
	or splitter.
	* tree-outof-ssa.c (FOR_EACH_ELIM_GRAPH_SUCC,
	FOR_EACH_ELIM_GRAPH_PRED): Avoid set but not used warnings.
	* tree-ssa-operands.h (FOR_EACH_SSA_TREE_OPERAND): Likewise.
	* tree-flow.h (FOR_EACH_IMM_USE_FAST, FOR_EACH_IMM_USE_STMT,
	FOR_EACH_IMM_USE_ON_STMT): Likewise.
	* tree.h (FOR_EACH_CONSTRUCTOR_ELT): Likewise.
	* tree.c (PROCESS_ARG): Likewise.
fortran/
	* parse.c (parse_derived, parse_enum): Avoid set but not used
	warning.
java/
	* expr.c (process_jvm_instruction): Avoid set but not used warning.
	* builtins.c (compareAndSwapInt_builtin, compareAndSwapLong_builtin,
	getVolatile_builtin): Likewise.
libjava/
	* exception.cc (_Jv_Throw): Avoid set but not used warning.
	* include/java-assert.h (JvAssertMessage, JvAssert): Use argument in
	sizeof to avoid set but not used warnings.
libjava/classpath/
	* native/jni/midi-alsa/gnu_javax_sound_midi_alsa_AlsaPortDevice.c
	(Java_gnu_javax_sound_midi_alsa_AlsaPortDevice_run_1receiver_1thread_1):
	Avoid set but not used warning.
libiberty/
	* regex.c (byte_re_match_2_internal): Avoid set but not used
	warning.
gcc/testsuite/
	* gcc.dg/builtin-choose-expr.c: Avoid set but not used warnings.
	* gcc.dg/trunc-1.c: Likewise.
	* gcc.dg/vla-9.c: Likewise.
	* gcc.dg/dfp/composite-type.c: Likewise.
libffi/
	* testsuite/libffi.call/err_bad_abi.c: Remove unused args variable.

From-SVN: r158084
2010-04-07 22:27:37 +02:00
Ralf Wildenhues
4d9e844614 Update to Automake 1.11.1.
gcc/:
	PR other/43620
	* doc/install.texi (Prerequisites): Bump Automake version to 1.11.1.
	* aclocal.m4: Regenerate.

lto-plugin/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.

intl/:
	* aclocal.m4: Regenerate.

boehm-gc/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* include/Makefile.in: Regenerate.

fixincludes/:
	* aclocal.m4: Regenerate.

libcpp/:
	* aclocal.m4: Regenerate.

libdecnumber/:
	* aclocal.m4: Regenerate.

libffi/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* include/Makefile.in: Regenerate.
	* man/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libgfortran/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.

libgomp/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/classpath/:
	* HACKING: Update required Automake version.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* doc/Makefile.in: Regenerate.
	* doc/api/Makefile.in: Regenerate.
	* examples/Makefile.in: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/jsr166/Makefile.in: Regenerate.
	* external/relaxngDatatype/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* lib/Makefile.in: Regenerate.
	* native/Makefile.in: Regenerate.
	* native/fdlibm/Makefile.in: Regenerate.
	* native/jawt/Makefile.in: Regenerate.
	* native/jni/Makefile.in: Regenerate.
	* native/jni/classpath/Makefile.in: Regenerate.
	* native/jni/gconf-peer/Makefile.in: Regenerate.
	* native/jni/gstreamer-peer/Makefile.in: Regenerate.
	* native/jni/gtk-peer/Makefile.in: Regenerate.
	* native/jni/java-io/Makefile.in: Regenerate.
	* native/jni/java-lang/Makefile.in: Regenerate.
	* native/jni/java-math/Makefile.in: Regenerate.
	* native/jni/java-net/Makefile.in: Regenerate.
	* native/jni/java-nio/Makefile.in: Regenerate.
	* native/jni/java-util/Makefile.in: Regenerate.
	* native/jni/midi-alsa/Makefile.in: Regenerate.
	* native/jni/midi-dssi/Makefile.in: Regenerate.
	* native/jni/native-lib/Makefile.in: Regenerate.
	* native/jni/qt-peer/Makefile.in: Regenerate.
	* native/jni/xmlj/Makefile.in: Regenerate.
	* native/plugin/Makefile.in: Regenerate.
	* resource/Makefile.in: Regenerate.
	* scripts/Makefile.in: Regenerate.
	* tools/Makefile.in: Regenerate.

libjava/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/libltdl/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.

libmudflap/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libobjc/:
	* aclocal.m4: Regenerate.

libssp/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.

libstdc++-v3/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* doc/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* python/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

zlib/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.

From-SVN: r157949
2010-04-02 18:18:06 +00:00
Rainer Orth
f4b130bb74 configure.ac (libffi_cv_as_x86_64_unwind_section_type): New test.
* configure.ac (libffi_cv_as_x86_64_unwind_section_type): New test.
	* configure: Regenerate.
	* fficonfig.h.in: Regenerate.
	* libffi/src/x86/unix64.S (.eh_frame)
	[HAVE_AS_X86_64_UNWIND_SECTION_TYPE]: Use @unwind section type.

From-SVN: r157466
2010-03-15 19:36:26 +00:00
Rainer Orth
22faf0048f libffi.texi (The Closure API): Fix typo.
* doc/libffi.texi (The Closure API): Fix typo.
	* doc/libffi.info: Remove.

From-SVN: r157049
2010-02-24 16:02:17 +00:00
Matthias Klose
694d3cfd60 sysv.S (__ARM_ARCH__): Define for processor __ARM_ARCH_7EM__.
2010-02-15  Matthias Klose  <doko@ubuntu.com>

        * src/arm/sysv.S (__ARM_ARCH__): Define for processor
        __ARM_ARCH_7EM__.

From-SVN: r156771
2010-02-15 15:19:30 +00:00
Rainer Orth
ec168029ae re PR libffi/40701 (Many libffi tests fail to compile on Tru64 UNIX)
PR libffi/40701
	* testsuite/libffi.call/ffitest.h [__alpha__ && __osf__] (PRIdLL,
	PRIuLL, PRId64, PRIu64, PRIuPTR): Define.
	* testsuite/libffi.call/cls_align_sint64.c: Add -Wno-format on
	alpha*-dec-osf*.
	* testsuite/libffi.call/cls_align_uint64.c: Likewise.
	* testsuite/libffi.call/cls_ulonglong.c: Likewise.
	* testsuite/libffi.call/return_ll1.c: Likewise.
	* testsuite/libffi.call/stret_medium2.c: Likewise.
	* testsuite/libffi.special/ffitestcxx.h (allocate_mmap): Cast
	MAP_FAILED to char *.

From-SVN: r155710
2010-01-07 20:35:33 +00:00
Rainer Orth
86d1b9d1e0 * src/mips/n32.S: Use .abicalls and .eh_frame with __GNUC__.
From-SVN: r155674
2010-01-06 14:22:26 +00:00
Anthony Green
78542dee33 Update README for libffi 3.0.9.
From-SVN: r155553
2010-01-01 12:50:08 +00:00
Matthias Klose
50117ecbdb Define HAVE_LONG_DOUBLE appropriately for MIPS.
From-SVN: r155552
2010-01-01 12:46:02 +00:00
Anthony Green
bc472c0054 xfail tests for AVR32
From-SVN: r155551
2010-01-01 12:40:18 +00:00
Andreas Tobler
d7e9538ee5 Fixes for HPUX.
From-SVN: r155550
2010-01-01 12:36:07 +00:00
Andreas Tobler
cb14fcb878 Add openbsd support.
From-SVN: r155549
2010-01-01 12:32:24 +00:00
Anthony Green
1098bcf812 Update xfails.
From-SVN: r155548
2010-01-01 12:26:49 +00:00
Anthony Green
a761df3da4 Windows patch
From-SVN: r155540
2009-12-31 17:44:32 +00:00
Anthony Green
493278bea5 New test case.
From-SVN: r155538
2009-12-31 16:58:55 +00:00
David Edelsohn
72b79d3945 ffi_darwin.c (ffi_prep_args): Copy abi and nargs to local variables.
* src/powerpc/ffi_darwin.c (ffi_prep_args): Copy abi and nargs to
        local variables.
        (aix_adjust_aggregate_sizes): New function.
        (ffi_prep_cif_machdep): Call it.

From-SVN: r155492
2009-12-28 13:19:18 -05:00
Andreas Tobler
99fba2c42a configure.ac: Define FFI_MMAP_EXEC_WRIT for the given targets.
2009-12-26  Andreas Tobler  <a.tobler@schweiz.org>

	* configure.ac: Define FFI_MMAP_EXEC_WRIT for the given targets.
	* configure: Regenerate.
	* fficonfig.h.in: Likewise.
	* src/closures.c: Remove the FFI_MMAP_EXEC_WRIT definition for
	Solaris/x86.

From-SVN: r155475
2009-12-26 19:49:55 +01:00
Andreas Schwab
302486f4fb ffi.c (ffi_prep_args_SYSV): Advance intarg_count when a float arguments is passed in memory.
* src/powerpc/ffi.c (ffi_prep_args_SYSV): Advance intarg_count
when a float arguments is passed in memory.
(ffi_closure_helper_SYSV): Mark general registers as used up when
a 64bit or soft-float long double argument is passed in memory.

From-SVN: r155473
2009-12-26 12:40:27 +00:00
Anthony Green
b8f38e8917 Fix ChangeLog entry date
From-SVN: r155472
2009-12-26 05:04:08 +00:00
Matthias Klose
2c57b16134 Fix libffi docs
From-SVN: r155471
2009-12-26 05:01:43 +00:00
Frank Everdij
c4205f77f3 IRIX support
From-SVN: r155470
2009-12-26 04:59:25 +00:00
Bradley Smith
124f60ab29 avr32 libffi port
From-SVN: r155469
2009-12-26 04:21:07 +00:00
Andreas Tobler
938a483f0d configure.ac: Make i?86 build on FreeBSD and OpenBSD.
2009-12-21  Andreas Tobler  <a.tobler@schweiz.org>

	* configure.ac: Make i?86 build on FreeBSD and OpenBSD.
	* configure: Regenerate.

From-SVN: r155373
2009-12-21 17:31:31 +01:00
John David Anglin
2516c7cd1e ffitest.h: Define PRIuPTR on PA HP-UX.
* testsuite/libffi.call/ffitest.h: Define PRIuPTR on PA HP-UX.

From-SVN: r155277
2009-12-15 23:55:56 +00:00
John David Anglin
f93a40eaa3 ffi.c (ffi_closure_inner_pa32): Handle FFI_TYPE_LONGDOUBLE type on HP-UX.
* src/pa/ffi.c (ffi_closure_inner_pa32): Handle FFI_TYPE_LONGDOUBLE
	type on HP-UX.

From-SVN: r155205
2009-12-14 02:42:18 +00:00
Eric Botcazou
fb01d970c4 ffi.c (ffi_closure_sparc_inner_v9): Properly align 'long double' arguments.
* src/sparc/ffi.c (ffi_closure_sparc_inner_v9): Properly align 'long
	double' arguments.

From-SVN: r155152
2009-12-11 10:06:18 +00:00
Eric Botcazou
2ea54b81da * testsuite/libffi.call/ffitest.h: Define PRIuPTR on Solaris < 10.
From-SVN: r155151
2009-12-11 10:00:12 +00:00
Rainer Orth
dcb00f2e8e re PR libffi/40700 (All amd64 libffi execution tests fail on Solaris 10/x86)
PR libffi/40700
	* src/closures.c [X86_64 && __sun__ && __svr4__]
	(FFI_MMAP_EXEC_WRIT): Define.

From-SVN: r155124
2009-12-10 10:09:17 +00:00
David Daney
6c6859a104 stret_medium.c: Remove xfail for mips*-*-*
2009-12-08  David Daney  <ddaney@caviumnetworks.com>

	* testsuite/libffi.call/stret_medium.c: Remove xfail for mips*-*-*
	* testsuite/libffi.call/cls_align_longdouble_split2.c: Same.
	* testsuite/libffi.call/stret_large.c: Same.
	* testsuite/libffi.call/cls_align_longdouble_split.c: Same.
	* testsuite/libffi.call/stret_large2.c: Same.
	* testsuite/libffi.call/stret_medium2.c: Same.

From-SVN: r155093
2009-12-08 22:59:02 +00:00
David Edelsohn
9e7e65a08b aix_closure.S (libffi_closure_ASM): Fix tablejump typo.
* src/powerpc/aix_closure.S (libffi_closure_ASM): Fix tablejump
        typo.

From-SVN: r155070
2009-12-07 19:41:10 -05:00
David Edelsohn
5d7fc9412c aix.S: Update AIX32 code to be consistent with AIX64 code.
* src/powerpc/aix.S: Update AIX32 code to be consistent with AIX64
        code.
        * src/powerpc/aix_closure.s: Same.

From-SVN: r155016
2009-12-05 16:48:58 -05:00
Ralf Wildenhues
43e02a8a71 Sync from git Libtool and regenerate.
/:
	PR target/38384
	PR bootstrap/40972
	* libtool.m4: Sync from git Libtool.
	* ltoptions.m4: Likewise.
	* ltversion.m4: Likewise.
	* lt~obsolete.m4: Likewise.
	* ltmain.sh: Likewise.

boehm-gc/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* include/Makefile.in: Regenerate.

fixincludes/:
	* configure: Regenerate.

gcc/:
	* configure: Regenerate.

libffi/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* include/Makefile.in: Regenerate.
	* man/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libgfortran/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

libgomp/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/classpath/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
	* doc/api/Makefile.in: Regenerate.
	* examples/Makefile.in: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/jsr166/Makefile.in: Regenerate.
	* external/relaxngDatatype/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* lib/Makefile.in: Regenerate.
	* native/Makefile.in: Regenerate.
	* native/fdlibm/Makefile.in: Regenerate.
	* native/jawt/Makefile.in: Regenerate.
	* native/jni/Makefile.in: Regenerate.
	* native/jni/classpath/Makefile.in: Regenerate.
	* native/jni/gconf-peer/Makefile.in: Regenerate.
	* native/jni/gstreamer-peer/Makefile.in: Regenerate.
	* native/jni/gtk-peer/Makefile.in: Regenerate.
	* native/jni/java-io/Makefile.in: Regenerate.
	* native/jni/java-lang/Makefile.in: Regenerate.
	* native/jni/java-math/Makefile.in: Regenerate.
	* native/jni/java-net/Makefile.in: Regenerate.
	* native/jni/java-nio/Makefile.in: Regenerate.
	* native/jni/java-util/Makefile.in: Regenerate.
	* native/jni/midi-alsa/Makefile.in: Regenerate.
	* native/jni/midi-dssi/Makefile.in: Regenerate.
	* native/jni/native-lib/Makefile.in: Regenerate.
	* native/jni/qt-peer/Makefile.in: Regenerate.
	* native/jni/xmlj/Makefile.in: Regenerate.
	* native/plugin/Makefile.in: Regenerate.
	* resource/Makefile.in: Regenerate.
	* scripts/Makefile.in: Regenerate.
	* tools/Makefile.in: Regenerate.

libjava/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libmudflap/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libobjc/:
	* configure: Regenerate.

libssp/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

libstdc++-v3/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* python/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

lto-plugin/:
	* configure: Regenerate.
	* Makefile.in: Regenerate.

zlib/:
	* Makefile.in: Regenerate.
	* configure: Regenerate.

From-SVN: r155012
2009-12-05 17:18:53 +00:00
David Edelsohn
2f2d73866b aix_closure.S: Reorganize 64-bit code to match linux64_closure.S.
* src/powerpc/aix_closure.S: Reorganize 64-bit code to match
        linux64_closure.S.

From-SVN: r155001
2009-12-04 17:24:05 -05:00
Uros Bizjak
6078f50a12 re PR libffi/41908 (closures fail for some structure arguments containing floats)
PR libffi/41908
	* src/x86/ffi64.c (classify_argument): Update from
	gcc/config/i386/i386.c.
	(ffi_closure_unix64_inner): Do not use the address of two consecutive
	SSE registers directly.
	* testsuite/libffi.call/cls_dbls_struct.c (main): Remove xfail
	for x86_64 linux targets.

From-SVN: r154988
2009-12-04 19:41:59 +01:00
David Edelsohn
0c5526222c ffi_darwin.c (ffi_closure_helper_DARWIN): Increment pfr for long double split between fpr13 and stack.
* src/powerpc/ffi_darwin.c (ffi_closure_helper_DARWIN): Increment
        pfr for long double split between fpr13 and stack.

From-SVN: r154983
2009-12-04 10:36:50 -05:00
David Edelsohn
afb5e62297 ffi_darwin.c (ffi_prep_args): Increment next_arg and fparg_count twice for long double.
* src/powerpc/ffi_darwin.c (ffi_prep_args): Increment next_arg and
        fparg_count twice for long double.

From-SVN: r154967
2009-12-03 22:43:40 -05:00
David Edelsohn
be311914b8 re PR libffi/42243 (powerpc-apple-darwin9 libffi failures)
PR libffi/42243
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Remove extra parentheses.

From-SVN: r154956
2009-12-03 14:09:29 -05:00
Uros Bizjak
ddf6c18784 cls_longdouble_va.c (main): Fix format string.
* testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.
	Remove xfails for x86 linux targets.

From-SVN: r154946
2009-12-03 15:02:10 +01:00
Uros Bizjak
a27c404027 cls_longdouble_va.c (main): Fix format string.
* testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.

From-SVN: r154941
2009-12-03 11:35:31 +01:00
David Edelsohn
7837c24708 ffi_darwin.c (ffi_prep_args): Fix typo in INT64 case.
* src/powerpc/ffi_darwin.c (ffi_prep_args): Fix typo in INT64
        case.

From-SVN: r154932
2009-12-02 20:32:21 -05:00
David Edelsohn
6d518d3b72 aix.S (ffi_call_AIX): Convert to more standard register usage.
* src/powerpc/aix.S (ffi_call_AIX): Convert to more standard
        register usage.  Call ffi_prep_args directly.  Add long double
        return value support.
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Double arg increment
        applies to FFI_TYPE_DOUBLE.  Correct fpr_base increment typo.
        Separate FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases.
        (ffi_prep_cif_machdep): Only 16 byte stack alignment in 64 bit
        mode.
        (ffi_closure_helper_DARWIN): Remove nf and ng counters.  Move temp
        into case.
        * src/powerpc/aix_closure.S: Maintain 16 byte stack alignment.
        Allocate result area between params and FPRs.

From-SVN: r154892
2009-12-01 23:21:08 -05:00
David Edelsohn
5751cf6fef re PR libffi/35484 (libffi doesn't support AIX 64bit)
2009-11-30  David Edelsohn  <edelsohn@gnu.org>

        PR target/35484
        * src/powerpc/ffitarget.h (POWERPC64): Define for PPC64 Linux and
        AIX64.
        * src/powerpc/aix.S: Implement AIX64 version.
        * src/powerpc/aix_closure.S: Implement AIX64 version.
        (ffi_closure_ASM): Use extsb, lha and displament addresses.
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Implement AIX64
        support.
        (ffi_prep_cif_machdep): Same.
        (ffi_call): Same.
        (ffi_closure_helper_DARWIN): Same.

From-SVN: r154855
2009-11-30 18:34:33 -05:00
Andreas Tobler
2265f64613 re PR libffi/41908 (closures fail for some structure arguments containing floats)
2009-11-02  Andreas Tobler  <a.tobler@schweiz.org>

	PR libffi/41908
	* testsuite/libffi.call/testclosure.c: New test.

From-SVN: r153824
2009-11-02 22:18:17 +01:00
Kai Tietz
ef6ed66d16 win64.S (_ffi_call_win64 stack): Remove for gnu assembly version use of ___chkstk.
2009-09-28  Kai Tietz  <kai.tietz@onevision.com>

        * src/x86/win64.S (_ffi_call_win64 stack): Remove for gnu
        assembly version use of ___chkstk.

From-SVN: r152256
2009-09-29 00:26:25 +02:00
Matthias Klose
29d1370a8f PR libffi/40242, PR libffi/41443
2009-09-23  Matthias Klose  <doko@ubuntu.com>

        PR libffi/40242, PR libffi/41443
        * src/arm/sysv.S (__ARM_ARCH__): Define for processors
        __ARM_ARCH_6T2__, __ARM_ARCH_6M__, __ARM_ARCH_7__,
        __ARM_ARCH_7A__, __ARM_ARCH_7R__, __ARM_ARCH_7M__.
        Change the conditionals to __SOFTFP__ || __ARM_EABI__
        for -mfloat-abi=softfp to work.

From-SVN: r152075
2009-09-23 14:50:35 +00:00
Loren J. Rittle
987ce5575c PR testsuite/32843 (strikes again)
2009-09-17  Loren J. Rittle  <ljrittle@acm.org>

	PR testsuite/32843 (strikes again)
	* src/x86/ffi.c (ffi_prep_cif_machdep): Add X86_FREEBSD to
	enable proper extension on char and short.

From-SVN: r151819
2009-09-17 20:54:56 +00:00
David Daney
5cbf8c8d0b java_raw_api.c (ffi_java_raw_to_rvalue): Remove special handling for FFI_TYPE_POINTER.
2009-09-15  David Daney  <ddaney@caviumnetworks.com>

	* src/java_raw_api.c (ffi_java_raw_to_rvalue): Remove special
	handling for FFI_TYPE_POINTER.
	* src/mips/ffitarget.h (FFI_TYPE_STRUCT_D_SOFT,
	FFI_TYPE_STRUCT_F_SOFT, FFI_TYPE_STRUCT_DD_SOFT,
	FFI_TYPE_STRUCT_FF_SOFT, FFI_TYPE_STRUCT_FD_SOFT,
	FFI_TYPE_STRUCT_DF_SOFT, FFI_TYPE_STRUCT_SOFT): New defines.
	(FFI_N32_SOFT_FLOAT, FFI_N64_SOFT_FLOAT): New ffi_abi enumerations.
	(enum ffi_abi): Set FFI_DEFAULT_ABI for soft-float.
	* src/mips/n32.S (ffi_call_N32): Add handling for soft-float
	structure and pointer returns.
	(ffi_closure_N32): Add handling for pointer returns.
	* src/mips/ffi.c (ffi_prep_args, calc_n32_struct_flags,
	calc_n32_return_struct_flags): Handle soft-float.
	(ffi_prep_cif_machdep):  Handle soft-float, fix pointer handling.
	(ffi_call_N32): Declare proper argument types.
	(ffi_call, copy_struct_N32, ffi_closure_mips_inner_N32): Handle
	soft-float.

From-SVN: r151726
2009-09-15 17:15:33 +00:00
Ralf Wildenhues
df58e64872 Update AC_PREREQ entries to 2.64
/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

intl/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libdecnumber/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libiberty/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libjava/classpath/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libjava/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libjava/libltdl/:
	* configure.ac (AC_PREREQ): Bump to 2.64.  Remove FIXME.

libssp/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libobjc/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libstdc++-v3/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libada/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libgcc/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libgfortran/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

boehm-gc/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

gnattools/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

gcc/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

fixincludes/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libmudflap/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

zlib/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libffi/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libcpp/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

libgomp/:
	* configure.ac (AC_PREREQ): Bump to 2.64.

From-SVN: r151059
2009-08-24 19:08:51 +00:00
Ralf Wildenhues
70fa0efaf4 Cleanups after the update to Autoconf 2.64, Automake 1.11.
/:
	* configure.ac: Remove --with-datarootdir, --with-docdir,
	--with-pdfdir, --with-htmldir switches.
	* configure: Regenerate.

gcc/:
	* configure.ac: Remove --with-datarootdir, --with-docdir,
	--with-htmldir switches.  No need to call AC_SUBST for
	datarootdir, docdir, htmldir any more.
	* configure: Regenerate.
	* doc/install.texi (Configuration): Document --datarootdir,
	--docdir, --htmldir, --pdfdir; update documentation for
	--infodir, --mandir.
	(Prerequisites): Bump Autoconf version to 2.64, Automake to
	1.11, M4 to 1.4.6.

libgfortran/:
	* Makefile.am (install-html, install-pdf): Remove.
	* Makefile.in: Regenerate.

libjava/classpath/:
	* doc/cp-hacking.texinfo (Needed Tools and Libraries): Bump
	Autoconf version to 2.64, Automake to 1.11, M4 to 1.4.6.

libjava/:
	* HACKING: Use aclocal-1.11 and autoconf-2.64 in example.
	* Makefile.am (install-html, install-pdf): Remove.
	* Makefile.in: Regenerate.

libstdc++-v3/:
	* doc/xml/manual/build_hacking.xml: Use tools from Autoconf
	2.64 and Automake 1.11 in examples; update link to Autoconf
	manual page about quadrigraphs.
	* Makefile.am (install-html, install-pdf): Remove.
	* Makefile.in: Regenerate.

libssp/:
	* Makefile.am (install-html, install-pdf): Remove.
	* Makefile.in: Regenerate.

boehm-gc/:
	* Makefile.am (install-html, install-pdf): Remove.
	* Makefile.in: Regenerate.

libmudflap/:
	* Makefile.am (install-html, install-pdf): Remove.
	* Makefile.in: Regenerate.

zlib/:
	* Makefile.am (install-html, install-pdf, html): Remove.
	* Makefile.in: Regenerate.

libffi/:
	* Makefile.am (install-html, install-pdf): Remove.
	* Makefile.in: Regenerate.

libgomp/:
	* Makefile.am (install-html, install-pdf): Remove.
	* Makefile.in: Regenerate.

From-SVN: r151015
2009-08-22 13:41:50 +00:00
Ralf Wildenhues
5213506e24 Regenerate tree using Autoconf 2.64 and Automake 1.11.
config/:
	* override.m4 (_GCC_AUTOCONF_VERSION): Bump to 2.64.

:
	* configure: Regenerate.

intl/:
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.

libiberty/:
	* config.in: Regenerate.
	* configure: Regenerate.

boehm-gc/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* include/Makefile.in: Regenerate.
	* include/gc_config.h.in: Regenerate.

fixincludes/:
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.

gcc/:
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.

libgcc/:
	* configure: Regenerate.

gnattools/:
	* configure: Regenerate.

libada/:
	* configure: Regenerate.

libcpp/:
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.

libdecnumber/:
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.in: Regenerate.

libffi/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* fficonfig.h.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* man/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libgfortran/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.

libgomp/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/classpath/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
	* doc/api/Makefile.in: Regenerate.
	* examples/Makefile.in: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/jsr166/Makefile.in: Regenerate.
	* external/relaxngDatatype/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* include/config.h.in: Regenerate.
	* lib/Makefile.in: Regenerate.
	* native/Makefile.in: Regenerate.
	* native/fdlibm/Makefile.in: Regenerate.
	* native/jawt/Makefile.in: Regenerate.
	* native/jni/Makefile.in: Regenerate.
	* native/jni/classpath/Makefile.in: Regenerate.
	* native/jni/gconf-peer/Makefile.in: Regenerate.
	* native/jni/gstreamer-peer/Makefile.in: Regenerate.
	* native/jni/gtk-peer/Makefile.in: Regenerate.
	* native/jni/java-io/Makefile.in: Regenerate.
	* native/jni/java-lang/Makefile.in: Regenerate.
	* native/jni/java-math/Makefile.in: Regenerate.
	* native/jni/java-net/Makefile.in: Regenerate.
	* native/jni/java-nio/Makefile.in: Regenerate.
	* native/jni/java-util/Makefile.in: Regenerate.
	* native/jni/midi-alsa/Makefile.in: Regenerate.
	* native/jni/midi-dssi/Makefile.in: Regenerate.
	* native/jni/native-lib/Makefile.in: Regenerate.
	* native/jni/qt-peer/Makefile.in: Regenerate.
	* native/jni/xmlj/Makefile.in: Regenerate.
	* native/plugin/Makefile.in: Regenerate.
	* resource/Makefile.in: Regenerate.
	* scripts/Makefile.in: Regenerate.
	* tools/Makefile.in: Regenerate.

libjava/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* include/config.h.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libjava/libltdl/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config-h.in: Regenerate.
	* configure: Regenerate.

libmudflap/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* testsuite/Makefile.in: Regenerate.

libobjc/:
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* config.h.in: Regenerate.

libssp/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.

libstdc++-v3/:
	* Makefile.in: Regenerate.
	* acinclude.m4: Regenerate.
	* aclocal.m4: Regenerate.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* doc/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* python/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

zlib/:
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r151014
2009-08-22 13:22:20 +00:00
Ralf Wildenhues
1b3b24c2a6 extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Do not expand for Autoconf 2.62 or newer.
config/
	* extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Do not expand
	for Autoconf 2.62 or newer.
	* tls.m4 (GCC_CHECK_TLS): Fix m4 quotation.
	* no-executables.m4 (_AC_COMPILER_EXEEXT): Fix m4 quotation.
	* override.m4 (m4_copy_force, m4_rename_force): Provide
	macros if not defined.
	(AC_PREREQ): Use m4_copy_force.

boehm-gc/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libada/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libffi/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libgfortran/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libgomp/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libjava/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libmudflap/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libobjc/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libssp/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

zlib/
	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.

libstdc++-v3/
	* acinclude.m4 (GLIBCXX_CONFIGURE): Use m4_rename_force.

From-SVN: r150269
2009-07-30 19:41:13 +00:00
Dave Korn
723512bab1 re PR libffi/40807 (libffi.call/return_sc.c)
PR libffi/40807
	* src/x86/ffi.c (ffi_prep_cif_machdep): Also use sign/zero-extending
	return types for X86_WIN32.
	* src/x86/win32.S (_ffi_call_SYSV): Handle omitted return types.
	(_ffi_call_STDCALL, _ffi_closure_SYSV, _ffi_closure_raw_SYSV,
	_ffi_closure_STDCALL): Likewise.

	* src/closures.c (is_selinux_enabled): Define to const 0 for Cygwin.
	(dlmmap, dlmunmap): Also use these functions on Cygwin.

From-SVN: r150042
2009-07-24 10:12:16 +00:00
Richard Sandiford
33cde5161f re PR testsuite/40699 (All sparcv9 libjava execution tests fail on Solaris 11/SPARC)
gcc/testsuite/
	PR testsuite/40699
	PR testsuite/40707
	PR testsuite/40709
	* lib/gcc-defs.exp, lib/target-libpath.exp, lib/objc.exp,
	lib/gfortran.exp, lib/g++.exp, lib/obj-c++.exp, lib/c-torture.exp,
	lib/gcc-dg.exp, lib/gnat.exp, g++.dg/compat/compat.exp,
	g++.dg/compat/struct-layout-1.exp: Revert 2009-06-30 commit.

libstdc++-v3/
	PR testsuite/40699
	PR testsuite/40707
	PR testsuite/40709
	* testsuite/lib/libstdc++.exp: Revert 2009-06-30 commit.

libjava/
	PR testsuite/40699
	PR testsuite/40707
	PR testsuite/40709
	* testsuite/lib/libjava.exp: Revert 2009-06-30 commit.

libgomp/
	PR testsuite/40699
	PR testsuite/40707
	PR testsuite/40709
	* testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
	* testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
	testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.

libffi/
	PR testsuite/40699
	PR testsuite/40707
	PR testsuite/40709
	* testsuite/lib/libffi-dg.exp: Revert 2009-07-02, 2009-07-01 and
	2009-06-30 commits.

libmudflap/
	PR testsuite/40699
	PR testsuite/40707
	PR testsuite/40709
	* testsuite/lib/libmudflap.exp: Revert 2009-06-30 commit.

From-SVN: r149508
2009-07-11 06:10:49 +00:00
Richard Sandiford
edd3a61c4a libffi-dg.exp (libffi-init): Set ld_library_path to "" before adding paths.
libffi/
	* testsuite/lib/libffi-dg.exp (libffi-init): Set ld_library_path
	to "" before adding paths.  (This reinstates an assignment that
	was removed by my 2009-06-30 commit, but changes the initial
	value from "." to "".)

From-SVN: r149149
2009-07-01 19:15:33 +00:00
H.J. Lu
33d1a550c7 re PR testsuite/40601 (Errors in "make check")
2009-07-01  H.J. Lu  <hongjiu.lu@intel.com>

	PR testsuite/40601
	* testsuite/lib/libffi-dg.exp (libffi-init): Properly set
	gccdir.  Adjust ld_library_path for gcc only if gccdir isn't
	empty.

From-SVN: r149145
2009-07-01 10:07:31 -07:00
Richard Sandiford
b30bfd402f gcc-defs.exp (gcc-set-multilib-library-path): Delete.
gcc/testsuite/
	* lib/gcc-defs.exp (gcc-set-multilib-library-path): Delete.
	* lib/target-libpath.exp (ld_library_path_vars): New variable.
	(init_ld_library_path_env_vars): New function, replacing the
	orig_*_saved assignments.  Call it after defining it.
	(set_ld_library_path_env_vars): Rewrite to use ld_library_path_vars.
	(restore_ld_library_path_env_vars): Likewise.
	(add_path, find_libgcc_s): New functions.
	* lib/objc.exp (objc_init): Use find_libgcc_s instead of
	gcc-set-multilib-library-path.
	(objc_target_compile): Don't add "." to ld_library_path.
	Use add_path.
	* lib/gfortran.exp (gfortran_link_flags): Don't add "." to
	ld_library_path.  Use add_path.  Use find_libgcc_s instead of
	gcc-set-multilib-library-path.
	* lib/g++.exp (g++_link_flags): Likewise.
	* lib/obj-c++.exp (obj-c++_link_flags): Likewise.
	* lib/c-torture.exp: Do not manipulate ld_library_path at the
	top level; do it...
	(c-torture-execute): ...here instead.  Use $ld_library_path_multilib
	to tell when this needs to happen.  Use find_libgcc_s instead of
	gcc-set-multilib-library-path.
	* lib/gcc-dg.exp: Likewise.
	* lib/gnat.exp (gnat_target_compile): Don't add "." to ld_library_path.
	* g++.dg/compat/compat.exp (alt_ld_library_path): Don't add "."
	unless it is in $ALT_LD_LIBRARY_PATH.
	* g++.dg/compat/struct-layout-1.exp (alt_ld_library_path): Likewise.

libffi/
	* testsuite/lib/libffi-dg.exp (libffi-init): Don't add "."
	to ld_library_path.  Use add_path.  Add just find_libgcc_s
	to ld_library_path, not every libgcc multilib directory.

libgomp/
	* testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
	ld_library_path.  Use add_path.  Add just find_libgcc_s to
	ld_library_path, not every libgcc multilib directory.
	* testsuite/libgomp.c/c.exp (ld_library_path): Don't call
	gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
	* testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
	Use add_path.
	* testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.

libjava/
	* testsuite/lib/libjava.exp (libjava_init): Just add
	find_libgcc_s to libjava_libgcc_s_path, rather than every
	libgcc multilib directory.
	(libjava_arguments): Explain why we add "." to ld_library_path.
	(gcj_invoke, exec_gij, libjava_invoke): Use add_path.

libmudflap/
	* testsuite/lib/libmudflap.exp (libmudflap-init): Don't add "."
	to ld_library_path.  Use add_path.  Add just find_libgcc_s to
	ld_library_path, not every libgcc multilib directory.

libstdc++-v3/
	* testsuite/lib/libstdc++.exp (libstdc++_init): Don't add "."
	to ld_library_path.  Use add_path.  Add just find_libgcc_s to
	ld_library_path, not every libgcc multilib directory.

From-SVN: r149113
2009-06-30 18:37:57 +00:00
Wim Lewis
6975f17fe7 ffi.c: Avoid clobbering cr3 and cr4, which are supposed to be callee-saved.
2009-06-16  Wim Lewis  <wiml@hhhh.org>

	* src/powerpc/ffi.c: Avoid clobbering cr3 and cr4, which are
	supposed to be callee-saved.
	* src/powerpc/sysv.S (small_struct_return_value): Fix overrun of
	return buffer for odd-size structs.

From-SVN: r148543
2009-06-16 19:55:39 +02:00
Andreas Tobler
7bbcc28642 re PR libffi/40444 (libffi badly broken with -m64 by some revision between 148383 and 148472.)
2009-06-16  Andreas Tobler  <a.tobler@schweiz.org>

	PR libffi/40444
	* testsuite/lib/libffi-dg.exp (libffi_target_compile): Add
	allow_stack_execute for Darwin.

From-SVN: r148542
2009-06-16 19:28:29 +02:00
Andrew Haley
fe673cc9cb configure.ac (TARGETDIR): Add missing blank lines.
2009-06-16  Andrew Haley  <aph@redhat.com>

	* configure.ac (TARGETDIR): Add missing blank lines.
	* configure: Regenerate.

From-SVN: r148538
2009-06-16 16:14:54 +00:00
Andrew Haley
3bc462c29c cls_align_sint64.c, [...]: Fix printf format specifiers.
2009-06-16  Andrew Haley  <aph@redhat.com>

        * testsuite/libffi.call/cls_align_sint64.c,
        testsuite/libffi.call/cls_align_uint64.c,
        testsuite/libffi.call/cls_longdouble_va.c,
        testsuite/libffi.call/cls_ulonglong.c,
        testsuite/libffi.call/return_ll1.c,
        testsuite/libffi.call/stret_medium2.c: Fix printf format
        specifiers.
        * testsuite/libffi.call/ffitest.h,
        testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRIuLL): Define.

From-SVN: r148521
2009-06-16 10:15:31 +00:00
Andrew Haley
081b044b49 err_bad_typedef.c: xfail everywhere.
2009-06-15  Andrew Haley  <aph@redhat.com>

	* testsuite/libffi.call/err_bad_typedef.c: xfail everywhere.
	* testsuite/libffi.call/err_bad_abi.c: Likewise.

From-SVN: r148499
2009-06-15 17:14:53 +00:00
Andrew Haley
b1b1734a7f Fix bad checkin.
From-SVN: r148498
2009-06-15 17:14:29 +00:00
Andrew Haley
062b827975 [multiple changes]
2009-06-12  Andrew Haley  <aph@redhat.com>

	* ChangeLog.libffi: testsuite/libffi.call/cls_align_sint64.c,
	testsuite/libffi.call/cls_align_uint64.c,
	testsuite/libffi.call/cls_ulonglong.c,
	testsuite/libffi.call/return_ll1.c,
	testsuite/libffi.call/stret_medium2.c: Fix printf format
	specifiers.
	testsuite/libffi.special/unwindtest.cc: include stdint.h.

2009-06-11  Timothy Wall  <twall@users.sf.net>

	* Makefile.am,
        configure.ac,
        include/ffi.h.in,
        include/ffi_common.h,
        src/closures.c,
        src/dlmalloc.c,
        src/x86/ffi.c,
        src/x86/ffitarget.h,
        src/x86/win64.S (new),
	README: Added win64 support (mingw or MSVC)
        * Makefile.in,
        include/Makefile.in,
        man/Makefile.in,
        testsuite/Makefile.in,
        configure,
        aclocal.m4: Regenerated
        * ltcf-c.sh: properly escape cygwin/w32 path
        * man/ffi_call.3: Clarify size requirements for return value.
        * src/x86/ffi64.c: Fix filename in comment.
        * src/x86/win32.S: Remove unused extern.

        * testsuite/libffi.call/closure_fn0.c,
        testsuite/libffi.call/closure_fn1.c,
        testsuite/libffi.call/closure_fn2.c,
        testsuite/libffi.call/closure_fn3.c,
        testsuite/libffi.call/closure_fn4.c,
        testsuite/libffi.call/closure_fn5.c,
        testsuite/libffi.call/closure_fn6.c,
	testsuite/libffi.call/closure_stdcall.c,
	testsuite/libffi.call/cls_12byte.c,
	testsuite/libffi.call/cls_16byte.c,
	testsuite/libffi.call/cls_18byte.c,
	testsuite/libffi.call/cls_19byte.c,
	testsuite/libffi.call/cls_1_1byte.c,
	testsuite/libffi.call/cls_20byte.c,
	testsuite/libffi.call/cls_20byte1.c,
	testsuite/libffi.call/cls_24byte.c,
	testsuite/libffi.call/cls_2byte.c,
	testsuite/libffi.call/cls_3_1byte.c,
	testsuite/libffi.call/cls_3byte1.c,
 	testsuite/libffi.call/cls_3byte2.c,
 	testsuite/libffi.call/cls_4_1byte.c,
 	testsuite/libffi.call/cls_4byte.c,
 	testsuite/libffi.call/cls_5_1_byte.c,
 	testsuite/libffi.call/cls_5byte.c,
 	testsuite/libffi.call/cls_64byte.c,
 	testsuite/libffi.call/cls_6_1_byte.c,
 	testsuite/libffi.call/cls_6byte.c,
 	testsuite/libffi.call/cls_7_1_byte.c,
 	testsuite/libffi.call/cls_7byte.c,
 	testsuite/libffi.call/cls_8byte.c,
 	testsuite/libffi.call/cls_9byte1.c,
 	testsuite/libffi.call/cls_9byte2.c,
 	testsuite/libffi.call/cls_align_double.c,
 	testsuite/libffi.call/cls_align_float.c,
 	testsuite/libffi.call/cls_align_longdouble.c,
 	testsuite/libffi.call/cls_align_longdouble_split.c,
 	testsuite/libffi.call/cls_align_longdouble_split2.c,
 	testsuite/libffi.call/cls_align_pointer.c,
 	testsuite/libffi.call/cls_align_sint16.c,
 	testsuite/libffi.call/cls_align_sint32.c,
 	testsuite/libffi.call/cls_align_sint64.c,
 	testsuite/libffi.call/cls_align_uint16.c,
 	testsuite/libffi.call/cls_align_uint32.c,
 	testsuite/libffi.call/cls_align_uint64.c,
 	testsuite/libffi.call/cls_dbls_struct.c,
 	testsuite/libffi.call/cls_double.c,
 	testsuite/libffi.call/cls_double_va.c,
 	testsuite/libffi.call/cls_float.c,
 	testsuite/libffi.call/cls_longdouble.c,
 	testsuite/libffi.call/cls_longdouble_va.c,
 	testsuite/libffi.call/cls_multi_schar.c,
 	testsuite/libffi.call/cls_multi_sshort.c,
 	testsuite/libffi.call/cls_multi_sshortchar.c,
 	testsuite/libffi.call/cls_multi_uchar.c,
 	testsuite/libffi.call/cls_multi_ushort.c,
 	testsuite/libffi.call/cls_multi_ushortchar.c,
 	testsuite/libffi.call/cls_pointer.c,
 	testsuite/libffi.call/cls_pointer_stack.c,
 	testsuite/libffi.call/cls_schar.c,
 	testsuite/libffi.call/cls_sint.c,
 	testsuite/libffi.call/cls_sshort.c,
 	testsuite/libffi.call/cls_uchar.c,
 	testsuite/libffi.call/cls_uint.c,
 	testsuite/libffi.call/cls_ulonglong.c,
 	testsuite/libffi.call/cls_ushort.c,
 	testsuite/libffi.call/err_bad_abi.c,
 	testsuite/libffi.call/err_bad_typedef.c,
 	testsuite/libffi.call/float2.c,
 	testsuite/libffi.call/huge_struct.c,
 	testsuite/libffi.call/nested_struct.c,
 	testsuite/libffi.call/nested_struct1.c,
 	testsuite/libffi.call/nested_struct10.c,
 	testsuite/libffi.call/nested_struct2.c,
 	testsuite/libffi.call/nested_struct3.c,
 	testsuite/libffi.call/nested_struct4.c,
 	testsuite/libffi.call/nested_struct5.c,
 	testsuite/libffi.call/nested_struct6.c,
 	testsuite/libffi.call/nested_struct7.c,
 	testsuite/libffi.call/nested_struct8.c,
 	testsuite/libffi.call/nested_struct9.c,
 	testsuite/libffi.call/problem1.c,
 	testsuite/libffi.call/return_ldl.c,
 	testsuite/libffi.call/return_ll1.c,
 	testsuite/libffi.call/stret_large.c,
 	testsuite/libffi.call/stret_large2.c,
 	testsuite/libffi.call/stret_medium.c,
 	testsuite/libffi.call/stret_medium2.c,
        testsuite/libffi.special/unwindtest.cc: use ffi_closure_alloc instead
        of checking for MMAP.  Use intptr_t instead of long casts.

2009-06-12  Andrew Haley  <aph@redhat.com>

	* Makefile.am: Remove info_TEXINFOS.

From-SVN: r148433
2009-06-12 15:57:58 +00:00
Kaz Kojima
f43def61ea cls_longdouble_va.c: Add xfail sh*-*-linux-*.
* testsuite/libffi.call/cls_longdouble_va.c: Add xfail sh*-*-linux-*.
	* testsuite/libffi.call/err_bad_abi.c: Add xfail sh*-*-*.
	* testsuite/libffi.call/err_bad_typedef.c: Likewise.

From-SVN: r148402
2009-06-11 23:20:49 +00:00
Andrew Haley
6aa0b21841 freebsd.S: Add missing file.
2009-06-09  Andrew Haley  <aph@redhat.com>

        * src/x86/freebsd.S: Add missing file.

From-SVN: r148313
2009-06-09 15:23:38 +00:00
Andrew Haley
b7b857bbe2 Import from libffi 3.0.8:
2009-06-08  Andrew Haley  <aph@redhat.com>

	Import from libffi 3.0.8:

	* doc/libffi.texi: New file.
	* doc/libffi.info: Likewise.
	* doc/stamp-vti: Likewise.
	* man/Makefile.am: New file.
	* man/ffi_call.3: New file.

	* Makefile.am (EXTRA_DIST): Add src/x86/darwin64.S,
	src/dlmalloc.c.
	(nodist_libffi_la_SOURCES): Add X86_FREEBSD.

	* configure.ac: Bump version to 3.0.8.
	parisc*-*-linux*: Add.
	i386-*-freebsd* | i386-*-openbsd*: Add.
	powerpc-*-beos*: Add.
	AM_CONDITIONAL X86_FREEBSD: Add.
	AC_CONFIG_FILES: Add man/Makefile.

	* include/ffi.h.in (FFI_FN): Change void (*)() to void (*)(void).

From-SVN: r148309
2009-06-09 10:21:19 +00:00
Andrew Haley
491e6ad11c README: Import from libffi 3.0.8.
2009-06-08  Andrew Haley  <aph@redhat.com>

	* README: Import from libffi 3.0.8.

From-SVN: r148286
2009-06-08 17:16:16 +00:00
Andrew Haley
3b5b1a73fa [multiple changes]
2009-06-08  Andrew Haley  <aph@redhat.com>

	* testsuite/libffi.call/err_bad_abi.c: Add xfails.
	* testsuite/libffi.call/cls_longdouble_va.c: Add xfails.
	* testsuite/libffi.call/cls_dbls_struct.c: Add xfail x86_64-*-linux-*.
	* testsuite/libffi.call/err_bad_typedef.c: Add xfails.

	* testsuite/libffi.call/stret_medium2.c: Add __UNUSED__ to args.
	* testsuite/libffi.call/stret_medium.c: Likewise.
	* testsuite/libffi.call/stret_large2.c: Likewise.
	* testsuite/libffi.call/stret_large.c:  Likewise.

2008-12-26  Timothy Wall  <twall@users.sf.net>

        * testsuite/libffi.call/cls_longdouble.c,
        testsuite/libffi.call/cls_longdouble_va.c,
        testsuite/libffi.call/cls_align_longdouble.c,
        testsuite/libffi.call/cls_align_longdouble_split.c,
        testsuite/libffi.call/cls_align_longdouble_split2.c: mark expected
        failures on x86_64 cygwin/mingw.

2008-12-22  Timothy Wall  <twall@users.sf.net>

        * testsuite/libffi.call/closure_fn0.c,
        testsuite/libffi.call/closure_fn1.c,
        testsuite/libffi.call/closure_fn2.c,
        testsuite/libffi.call/closure_fn3.c,
        testsuite/libffi.call/closure_fn4.c,
        testsuite/libffi.call/closure_fn5.c,
        testsuite/libffi.call/closure_fn6.c,
        testsuite/libffi.call/closure_loc_fn0.c,
        testsuite/libffi.call/closure_stdcall.c,
        testsuite/libffi.call/cls_align_pointer.c,
        testsuite/libffi.call/cls_pointer.c,
        testsuite/libffi.call/cls_pointer_stack.c: use portable cast from
        pointer to integer (intptr_t).
        * testsuite/libffi.call/cls_longdouble.c: disable for win64.

2008-07-24  Anthony Green  <green@redhat.com>

        * testsuite/libffi.call/cls_dbls_struct.c,
        testsuite/libffi.call/cls_double_va.c,
        testsuite/libffi.call/cls_longdouble.c,
        testsuite/libffi.call/cls_longdouble_va.c,
        testsuite/libffi.call/cls_pointer.c,
        testsuite/libffi.call/cls_pointer_stack.c,
        testsuite/libffi.call/err_bad_abi.c: Clean up failures from
        compiler warnings.

2008-03-04  Anthony Green  <green@redhat.com>
            Blake Chaffin
            hos@tamanegi.org

        * testsuite/libffi.call/cls_align_longdouble_split2.c
          testsuite/libffi.call/cls_align_longdouble_split.c
          testsuite/libffi.call/cls_dbls_struct.c
          testsuite/libffi.call/cls_double_va.c
          testsuite/libffi.call/cls_longdouble.c
          testsuite/libffi.call/cls_longdouble_va.c
          testsuite/libffi.call/cls_pointer.c
          testsuite/libffi.call/cls_pointer_stack.c
          testsuite/libffi.call/err_bad_abi.c
          testsuite/libffi.call/err_bad_typedef.c
          testsuite/libffi.call/stret_large2.c
          testsuite/libffi.call/stret_large.c
          testsuite/libffi.call/stret_medium2.c
          testsuite/libffi.call/stret_medium.c: New tests from Apple.

From-SVN: r148285
2009-06-08 17:03:31 +00:00
Andrew Haley
56faec5e60 ffitarget.h, ffi.c: Merge stdcall changes from libffi.
2009-06-05  Andrew Haley  <aph@redhat.com>

        * src/x86/ffitarget.h, src/x86/ffi.c: Merge stdcall changes from
        libffi.

From-SVN: r148207
2009-06-05 12:55:06 +00:00
Andrew Haley
90409e4c8a ffitarget.h, [...]: Back out stdcall changes.
2009-06-04  Andrew Haley  <aph@redhat.com>

	* src/x86/ffitarget.h, src/x86/win32.S, src/x86/ffi.c: Back out
	stdcall changes.

From-SVN: r148178
2009-06-04 17:08:10 +00:00
Andrew Haley
b139375003 [multiple changes]
2008-02-26  Anthony Green  <green@redhat.com>
            Thomas Heller  <theller@ctypes.org>

        * src/x86/ffi.c (ffi_closure_SYSV_inner): Change C++ comment to C
        comment.

2008-02-03  Timothy Wall  <twall@users.sf.net>

        * src/x86/ffi.c (FFI_INIT_TRAMPOLINE_STDCALL): Calculate jump return
          offset based on code pointer, not data pointer.

2008-01-31  Timothy Wall <twall@users.sf.net>

        * testsuite/libffi.call/closure_stdcall.c: Add test for stdcall
        closures.
        * src/x86/ffitarget.h: Increase size of trampoline for stdcall
        closures.
        * src/x86/win32.S: Add assembly for stdcall closure.
        * src/x86/ffi.c: Initialize stdcall closure trampoline.

From-SVN: r148174
2009-06-04 16:02:47 +00:00