Commit Graph

70 Commits

Author SHA1 Message Date
Uros Bizjak
34a6ccda5c return_fl2.c (return_fl): Mark as static.
* testsuite/libffi.call/return_fl2.c (return_fl): Mark as static.
        Use 'volatile float sum' to create sum of floats to avoid false
        negative due to excess precision on ix86 targets.
        (main): Ditto.

From-SVN: r123180
2007-03-24 08:13:17 +01:00
Jack Howarth
8a48946511 aclocal.m4: Regenerate to use multi.m4.
2007-01-17  Jack Howarth  <howarth@bromo.med.uc.edu>
boehm-gc/
	* aclocal.m4: Regenerate to use multi.m4.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
zlib/
	* Makefile.am: Add ACLOCAL_AMFLAGS to use multi.m4.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
libffi/
	* Makefile.am: Add ACLOCAL_AMFLAGS to use multi.m4.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
libjava/
	* configure.ac: Use multi.m4 from aclocal rather than custom
	code.  Use multi_basedir instead libgcj_basedir.  Test for
	/proc/self/exe when not cross-compiling.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
libjava/classpath/
	* configure.ac: Use multi.m4 from aclocal rather than
	custom code.  Use multi_basedir instead libgcj_basedir.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
libjava/libltdl/
	* Makefile.am: Add ACLOCAL_AMFLAGS to use multi.m4.
	* configure.ac: Use multi.m4 from aclocal rather than
	custom code.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* Makefile.in: Regenerate.

From-SVN: r120870
2007-01-17 19:48:52 +00:00
Andreas Tobler
f4f7486bcf configure.ac: Add TARGET for x86_64-*-darwin*.
2006-12-14  Andreas Tobler  <a.tobler@schweiz.org>

	* configure.ac: Add TARGET for x86_64-*-darwin*.
	* Makefile.am (nodist_libffi_la_SOURCES): Add rules for 64-bit sources
	for X86_DARWIN.
	* src/x86/ffitarget.h: Set trampoline size for x86_64-*-darwin*.
	* src/x86/darwin64.S: New file for x86_64-*-darwin* support.
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/libffi.special/unwindtest_ffi_call.cc: New test case for
	ffi_call only.

From-SVN: r119856
2006-12-14 08:34:45 +01:00
Geoffrey Keating
58182de357 In gcc/: PR 23067
In gcc/:
	PR 23067
	* c-decl.c (start_struct): Don't create self-containing
	structures.
	* config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
	New.
	* config/rs6000/rs6000-protos.h
	(darwin_rs6000_special_round_type_align): New.
	* config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Rewrite.
	(ROUND_TYPE_ALIGN): Use darwin_rs6000_special_round_type_align.
In gcc/testsuite/:
	PR 23067
	* gcc.target/powerpc/darwin-abi-3.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-6.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-7.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-8.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-9.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-10.c: Remove XFAIL.
	* gcc.target/powerpc/darwin-abi-11.c: Remove XFAIL.
In libobjc/:
	* encoding.c (darwin_rs6000_special_round_type_align): New.
In libffi/:
	* src/powerpc/ffi_darwin.c (darwin_adjust_aggregate_sizes): New.
	(ffi_prep_cif_machdep): Call darwin_adjust_aggregate_sizes for
	Darwin.
	* testsuite/libffi.call/nested_struct4.c: Remove Darwin XFAIL.
	* testsuite/libffi.call/nested_struct6.c: Remove Darwin XFAIL.

From-SVN: r118365
2006-11-01 05:28:41 +00:00
Paolo Bonzini
a3bd50cc4b configure.ac [...]: Set X86_DARWIN symbol and conditional.
2006-10-10  Paolo Bonzini  <bonzini@gnu.org>
	    Sandro Tolaini  <tolaini@libero.it>

	* configure.ac [i*86-*-darwin*]: Set X86_DARWIN symbol and 
	conditional.
	* configure: Regenerated.
	* Makefile.am (nodist_libffi_la_SOURCES) [X86_DARWIN]: New case.
	(EXTRA_DIST): Add src/x86/darwin.S.
	* Makefile.in: Regenerated.
	* include/Makefile.in: Regenerated.
	* testsuite/Makefile.in: Regenerated.

	* src/x86/ffi.c (ffi_prep_cif_machdep) [X86_DARWIN]: Treat like
	X86_WIN32, and additionally align stack to 16 bytes.
	* src/x86/darwin.S: New, based on sysv.S.
	* src/prep_cif.c (ffi_prep_cif) [X86_DARWIN]: Align > 8-byte structs.


Co-Authored-By: Sandro Tolaini <tolaini@libero.it>

From-SVN: r117602
2006-10-10 14:21:05 +00:00
David Daney
b095810f1b re PR libffi/23935 ($PREFIX/include/ffi.h needs to go to a target- and -version-dependent location)
PR libffi/23935
	* include/Makefile.am: Install both ffi.h and ffitarget.h in
	$(libdir)/gcc/$(target_alias)/$(gcc_version)/include.
	* aclocal.m4: Regenerated for automake 1.9.6.
	* Makefile.in: Regenerated.
	* include/Makefile.in: Regenerated.
	* testsuite/Makefile.in: Regenerated.

From-SVN: r116893
2006-09-12 16:51:43 +00:00
Torsten Schoenfeld
cb4132fe11 ffi.h.in (ffi_type_ulong, [...]): Define correctly for 32-bit architectures.
2006-07-25  Torsten Schoenfeld  <kaffeetisch@gmx.de>

	* include/ffi.h.in (ffi_type_ulong, ffi_type_slong): Define correctly
	for 32-bit architectures.
	* testsuite/libffi.call/return_ul.c: New test case.

From-SVN: r115739
2006-07-25 22:01:22 +02:00
David Daney
0d24c3fa6f closure_fn6.c: Remove xfail for mips, xfail remains for mips64.
* testsuite/libffi.call/closure_fn6.c: Remove xfail for mips,
	xfail remains for mips64.

From-SVN: r115598
2006-07-19 19:52:44 +00:00
Carlos O'Donell
8665824cdc Makefile.am: Add install-html target.
2006-05-23  Carlos O'Donell  <carlos@codesourcery.com>

	* Makefile.am: Add install-html target. Add install-html to .PHONY
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r114037
2006-05-24 01:45:57 +00:00
Andreas Tobler
ac6ed182ed README: Remove notice about 'Crazy Comments'.
2006-04-22  Andreas Tobler  <a.tobler@schweiz.ch>

	* README: Remove notice about 'Crazy Comments'.
	* src/debug.c: Remove lint directives. Cleanup white spaces.
	* src/java_raw_api.c: Likewise.
	* src/prep_cif.c: Likewise.
	* src/raw_api.c: Likewise.
	* src/ffitest.c: Delete. No longer needed, all test cases migrated
	to the testsuite.
	* src/arm/ffi.c: Remove lint directives.
	* src/m32r/ffi.c: Likewise.
	* src/pa/ffi.c: Likewise.
	* src/powerpc/ffi.c: Likewise.
	* src/powerpc/ffi_darwin.c: Likewise.
	* src/sh/ffi.c: Likewise.
	* src/sh64/ffi.c: Likewise.
	* src/x86/ffi.c: Likewise.
	* testsuite/libffi.call/float2.c: Likewise.
	* testsuite/libffi.call/promotion.c: Likewise.
	* testsuite/libffi.call/struct1.c: Likewise.

From-SVN: r113181
2006-04-22 23:17:35 +02:00
Matthias Klose
615baed708 libjava.exp (libjava_init): Recognize multilib directory names containing underscores.
gcc/testsuite:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libffi:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libgomp:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libjava:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libmudflap:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

libstdc++:
2006-04-10  Matthias Klose  <doko@debian.org>

	* testsuite/lib/libjava.exp (libjava_init): Recognize multilib
	directory names containing underscores.

From-SVN: r112833
2006-04-10 21:34:19 +00:00
James E Wilson
8e7a2b58e7 For PR 26483, IA-64 denorm failure due to unwanted rounding.
* testsuite/libffi.call/float4.c: New testcase.

From-SVN: r112768
2006-04-07 16:04:15 -07:00
John David Anglin
e6c300efaa Makefile.am: Add PA_HPUX port.
2006-04-05  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
	    Andreas Tobler  <a.tobler@schweiz.ch>

	* Makefile.am: Add PA_HPUX port.
	* Makefile.in: Regenerate.
	* include/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.
	* configure.ac: Add PA_HPUX rules.
	* configure: Regenerate.
	* src/pa/ffitarget.h: Rename linux target to PA_LINUX.
	Add PA_HPUX and PA64_HPUX.
	Rename FFI_LINUX ABI to FFI_PA32 ABI.
	(FFI_TRAMPOLINE_SIZE): Define for 32-bit HP-UX targets.
	(FFI_TYPE_SMALL_STRUCT2): Define.
	(FFI_TYPE_SMALL_STRUCT4): Likewise.
	(FFI_TYPE_SMALL_STRUCT8): Likewise.
	(FFI_TYPE_SMALL_STRUCT3): Redefine.
	(FFI_TYPE_SMALL_STRUCT5): Likewise.
	(FFI_TYPE_SMALL_STRUCT6): Likewise.
	(FFI_TYPE_SMALL_STRUCT7): Likewise.
	* src/pa/ffi.c (ROUND_DOWN): Delete.
	(fldw, fstw, fldd, fstd): Use '__asm__'.
	(ffi_struct_type): Add support for FFI_TYPE_SMALL_STRUCT2,
	FFI_TYPE_SMALL_STRUCT4 and FFI_TYPE_SMALL_STRUCT8.
	(ffi_prep_args_LINUX): Rename to ffi_prep_args_pa32. Update comment.
	Simplify incrementing of stack slot variable. Change type of local
	'n' to unsigned int.
	(ffi_size_stack_LINUX): Rename to ffi_size_stack_pa32. Handle long
	double on PA_HPUX.
	(ffi_prep_cif_machdep): Likewise.
	(ffi_call): Likewise.
	(ffi_closure_inner_LINUX): Rename to ffi_closure_inner_pa32. Change
	return type to ffi_status. Simplify incrementing of stack slot
	variable. Only copy floating point argument registers when PA_LINUX
	is true. Reformat debug statement.
	Add support for FFI_TYPE_SMALL_STRUCT2, FFI_TYPE_SMALL_STRUCT4 and
	FFI_TYPE_SMALL_STRUCT8.
	(ffi_closure_LINUX): Rename to ffi_closure_pa32. Add 'extern' to
	declaration.
	(ffi_prep_closure): Make linux trampoline conditional on PA_LINUX.
	Add nops to cache flush.  Add trampoline for PA_HPUX.
	* src/pa/hpux32.S: New file.
	* src/pa/linux.S (ffi_call_LINUX): Rename to ffi_call_pa32. Rename
	ffi_prep_args_LINUX to ffi_prep_args_pa32.
	Localize labels. Add support for 2, 4 and 8-byte small structs. Handle
	unaligned destinations in 3, 5, 6 and 7-byte small structs. Order
	argument type checks so that common argument types appear first.
	(ffi_closure_LINUX): Rename to ffi_closure_pa32. Rename
	ffi_closure_inner_LINUX to ffi_closure_inner_pa32.

Co-Authored-By: Andreas Tobler <a.tobler@schweiz.ch>

From-SVN: r112719
2006-04-05 23:26:34 +02:00
Andreas Tobler
b295c471c2 unwindtest.cc (closure_test_fn): Mark cif, args and userdata unused.
2006-03-01  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.special/unwindtest.cc (closure_test_fn): Mark cif,
	args and userdata unused.
	(closure_test_fn1): Mark cif and userdata unused.
	(main): Remove unused res.

From-SVN: r111583
2006-03-01 00:18:01 +01:00
Andreas Tobler
9fdeb13b0e call.exp: Adjust FSF address.
2006-02-28  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/call.exp: Adjust FSF address. Add test runs for
	-O2, -O3, -Os and the warning flags -W -Wall.
	* testsuite/libffi.special/special.exp: Likewise.
	* testsuite/libffi.call/ffitest.h: Add an __UNUSED__ macro to mark
	unused parameter unused for gcc or else do nothing.
	* testsuite/libffi.special/ffitestcxx.h: Likewise.
	* testsuite/libffi.call/cls_12byte.c (cls_struct_12byte_gn): Mark cif
	and userdata unused.
	* testsuite/libffi.call/cls_16byte.c (cls_struct_16byte_gn): Likewise.
	* testsuite/libffi.call/cls_18byte.c (cls_struct_18byte_gn): Likewise.
	* testsuite/libffi.call/cls_19byte.c (cls_struct_19byte_gn): Likewise.
	* testsuite/libffi.call/cls_1_1byte.c (cls_struct_1_1byte_gn): Likewise.
	* testsuite/libffi.call/cls_20byte.c (cls_struct_20byte_gn): Likewise.
	* testsuite/libffi.call/cls_20byte1.c (cls_struct_20byte_gn): Likewise.
	* testsuite/libffi.call/cls_24byte.c (cls_struct_24byte_gn): Likewise.
	* testsuite/libffi.call/cls_2byte.c (cls_struct_2byte_gn): Likewise.
	* testsuite/libffi.call/cls_3_1byte.c (cls_struct_3_1byte_gn): Likewise.
	* testsuite/libffi.call/cls_3byte1.c (cls_struct_3byte_gn): Likewise.
	* testsuite/libffi.call/cls_3byte2.c (cls_struct_3byte_gn1): Likewise.
	* testsuite/libffi.call/cls_4_1byte.c (cls_struct_4_1byte_gn): Likewise.
	* testsuite/libffi.call/cls_4byte.c (cls_struct_4byte_gn): Likewise.
	* testsuite/libffi.call/cls_5_1_byte.c (cls_struct_5byte_gn): Likewise.
	* testsuite/libffi.call/cls_5byte.c (cls_struct_5byte_gn): Likewise.
	* testsuite/libffi.call/cls_64byte.c (cls_struct_64byte_gn): Likewise.
	* testsuite/libffi.call/cls_6_1_byte.c (cls_struct_6byte_gn): Likewise.
	* testsuite/libffi.call/cls_6byte.c (cls_struct_6byte_gn): Likewise.
	* testsuite/libffi.call/cls_7_1_byte.c (cls_struct_7byte_gn): Likewise.
	* testsuite/libffi.call/cls_7byte.c (cls_struct_7byte_gn): Likewise.
	* testsuite/libffi.call/cls_8byte.c (cls_struct_8byte_gn): Likewise.
	* testsuite/libffi.call/cls_9byte1.c (cls_struct_9byte_gn): Likewise.
	* testsuite/libffi.call/cls_9byte2.c (cls_struct_9byte_gn): Likewise.
	* testsuite/libffi.call/cls_align_double.c (cls_struct_align_gn):
	Likewise.
	* testsuite/libffi.call/cls_align_float.c (cls_struct_align_gn):
	Likewise.
	* testsuite/libffi.call/cls_align_longdouble.c (cls_struct_align_gn):
	Likewise.
	* testsuite/libffi.call/cls_align_pointer.c (cls_struct_align_fn): Cast
	void* to avoid compiler warning.
	(main): Likewise.
	(cls_struct_align_gn): Mark cif and userdata unused.
	* testsuite/libffi.call/cls_align_sint16.c (cls_struct_align_gn):
	Likewise.
	* testsuite/libffi.call/cls_align_sint32.c (cls_struct_align_gn):
	Likewise.
	* testsuite/libffi.call/cls_align_sint64.c (cls_struct_align_gn):
	Likewise.
	* testsuite/libffi.call/cls_align_uint16.c (cls_struct_align_gn):
	Likewise.
	* testsuite/libffi.call/cls_align_uint32.c (cls_struct_align_gn):
	Likewise.
	* testsuite/libffi.call/cls_double.c (cls_ret_double_fn): Likewise.
	* testsuite/libffi.call/cls_float.c (cls_ret_float_fn): Likewise.
	* testsuite/libffi.call/cls_multi_schar.c (test_func_gn): Mark cif and
	data unused.
	(main): Cast res_call to silence gcc.
	* testsuite/libffi.call/cls_multi_sshort.c (test_func_gn): Mark cif and
	data unused.
	(main): Cast res_call to silence gcc.
	* testsuite/libffi.call/cls_multi_sshortchar.c (test_func_gn): Mark cif
	and data unused.
	(main): Cast res_call to silence gcc.
	* testsuite/libffi.call/cls_multi_uchar.c (test_func_gn): Mark cif and
	data unused.
	(main): Cast res_call to silence gcc.
	* testsuite/libffi.call/cls_multi_ushort.c (test_func_gn): Mark cif and
	data unused.
	(main): Cast res_call to silence gcc.
	* testsuite/libffi.call/cls_multi_ushortchar.c (test_func_gn): Mark cif
	and data unused.
	(main): Cast res_call to silence gcc.
	* testsuite/libffi.call/cls_schar.c (cls_ret_schar_fn): Mark cif and
	userdata unused.
	(cls_ret_schar_fn): Cast printf parameter to silence gcc.
	* testsuite/libffi.call/cls_sint.c (cls_ret_sint_fn): Mark cif and
	userdata unused.
	(cls_ret_sint_fn): Cast printf parameter to silence gcc.
	* testsuite/libffi.call/cls_sshort.c (cls_ret_sshort_fn): Mark cif and
	userdata unused.
	(cls_ret_sshort_fn): Cast printf parameter to silence gcc.
	* testsuite/libffi.call/cls_uchar.c (cls_ret_uchar_fn):  Mark cif and
	userdata unused.
	(cls_ret_uchar_fn): Cast printf parameter to silence gcc.
	* testsuite/libffi.call/cls_uint.c (cls_ret_uint_fn): Mark cif and
	userdata unused.
	(cls_ret_uint_fn): Cast printf parameter to silence gcc.
	* testsuite/libffi.call/cls_ulonglong.c (cls_ret_ulonglong_fn): Mark cif
	and userdata unused.
	* testsuite/libffi.call/cls_ushort.c (cls_ret_ushort_fn): Mark cif and
	userdata unused.
	(cls_ret_ushort_fn): Cast printf parameter to silence gcc.
	* testsuite/libffi.call/float.c (floating): Remove unused parameter e.
	* testsuite/libffi.call/float1.c (main): Remove unused variable i.
	Cleanup white spaces.
	* testsuite/libffi.call/negint.c (checking): Remove unused variable i.
	* testsuite/libffi.call/nested_struct.c (cls_struct_combined_gn): Mark
	cif and userdata unused.
	* testsuite/libffi.call/nested_struct1.c (cls_struct_combined_gn):
	Likewise.
	* testsuite/libffi.call/nested_struct10.c (B_gn): Likewise.
	* testsuite/libffi.call/nested_struct2.c (B_fn): Adjust printf
	formatters to silence gcc.
	(B_gn): Mark cif and userdata unused.
	* testsuite/libffi.call/nested_struct3.c (B_gn): Mark cif and userdata
	unused.
	* testsuite/libffi.call/nested_struct4.c: Mention related PR.
	(B_gn): Mark cif and userdata unused.
	* testsuite/libffi.call/nested_struct5.c (B_gn): Mark cif and userdata
	unused.
	* testsuite/libffi.call/nested_struct6.c: Mention related PR.
	(B_gn): Mark cif and userdata unused.
	* testsuite/libffi.call/nested_struct7.c (B_gn): Mark cif and userdata
	unused.
	* testsuite/libffi.call/nested_struct8.c (B_gn): Likewise.
	* testsuite/libffi.call/nested_struct9.c (B_gn): Likewise.
	* testsuite/libffi.call/problem1.c (stub): Likewise.
	* testsuite/libffi.call/pyobjc-tc.c (main): Cast the result to silence
	gcc.
	* testsuite/libffi.call/return_fl2.c (return_fl): Add the note mentioned
	in the last commit for this test case in the test case itself.
	* testsuite/libffi.call/closure_fn0.c (closure_test_fn0): Mark cif as
	unused.
	* testsuite/libffi.call/closure_fn1.c (closure_test_fn1): Likewise.
	* testsuite/libffi.call/closure_fn2.c (closure_test_fn2): Likewise.
	* testsuite/libffi.call/closure_fn3.c (closure_test_fn3): Likewise.
	* testsuite/libffi.call/closure_fn4.c (closure_test_fn0): Likewise.
	* testsuite/libffi.call/closure_fn5.c (closure_test_fn5): Likewise.
	* testsuite/libffi.call/closure_fn6.c (closure_test_fn0): Likewise.

From-SVN: r111582
2006-03-01 00:12:00 +01:00
Andreas Tobler
723e5d5a24 libffi: testsuite fix for ix86.
2006-02-20  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/return_fl2.c (return_fl): Remove static
	declaration to avoid a false negative on ix86. See PR323.

From-SVN: r111314
2006-02-20 22:10:14 +01:00
Andreas Tobler
1a4878f752 re PR target/25630 (darwin-ppc, wrong alignment of nested structs)
2006-02-17  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/nested_struct6.c: XFAIL this test until PR25630
	is fixed.
	* testsuite/libffi.call/nested_struct4.c: Likewise.

From-SVN: r111208
2006-02-17 21:52:38 +01:00
Andreas Tobler
6429d58f83 return_dbl.c: New test case.
2006-02-16  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/return_dbl.c: New test case.
	* testsuite/libffi.call/return_dbl1.c: Likewise.
	* testsuite/libffi.call/return_dbl2.c: Likewise.
	* testsuite/libffi.call/return_fl.c: Likewise.
	* testsuite/libffi.call/return_fl1.c: Likewise.
	* testsuite/libffi.call/return_fl2.c: Likewise.
	* testsuite/libffi.call/return_fl3.c: Likewise.
	* testsuite/libffi.call/closure_fn6.c: Likewise.

From-SVN: r111156
2006-02-16 23:29:01 +01:00
Andreas Tobler
b47b5e089b nested_struct2.c: Remove ffi_type_mylong definition.
2006-02-16  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/nested_struct2.c: Remove ffi_type_mylong
	definition.
	* testsuite/libffi.call/ffitest.h: Add ffi_type_mylong definition
	here to be used by other test cases too.

	* testsuite/libffi.call/nested_struct10.c: New test case.
	* testsuite/libffi.call/nested_struct9.c: Likewise.
	* testsuite/libffi.call/nested_struct8.c: Likewise.
	* testsuite/libffi.call/nested_struct7.c: Likewise.
	* testsuite/libffi.call/nested_struct6.c: Likewise.
	* testsuite/libffi.call/nested_struct5.c: Likewise.
	* testsuite/libffi.call/nested_struct4.c: Likewise.

From-SVN: r111151
2006-02-16 22:03:16 +01:00
Geoffrey Keating
0363db460d libffi-dg.exp (libffi_target_compile): For darwin, use -shared-libgcc not -lgcc_s, and explain why.
* testsuite/lib/libffi-dg.exp (libffi_target_compile): For
	darwin, use -shared-libgcc not -lgcc_s, and explain why.

From-SVN: r104847
2005-10-01 06:11:29 +00:00
Tom Tromey
d674eb2f5c float1.c (value_type): New typedef.
* testsuite/libffi.call/float1.c (value_type): New typedef.
	(CANARY): New define.
	(main): Check for result buffer overflow.
	* src/powerpc/linux64.S: Handle linux64 long double returns.
	* src/powerpc/ffi.c (FLAG_RETURNS_128BITS): New constant.
	(ffi_prep_cif_machdep): Handle linux64 long double returns.

From-SVN: r104660
2005-09-26 19:56:22 +00:00
Andreas Tobler
970676420b Makefile.am (nodist_libffi_la_SOURCES): Add POWERPC_FREEBSD.
2005-07-19  Andreas Tobler  <a.tobler@schweiz.ch>

	* Makefile.am (nodist_libffi_la_SOURCES): Add POWERPC_FREEBSD.
	* Makefile.in: Regenerate.
	* include/Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.
	* configure.ac: Add POWERPC_FREEBSD rules.
	* configure: Regenerate.
	* src/powerpc/ffitarget.h: Add POWERPC_FREEBSD rules.
	(FFI_SYSV_TYPE_SMALL_STRUCT): Define.
	* src/powerpc/ffi.c: Add flags to handle small structure returns
	in ffi_call_SYSV.
	(ffi_prep_cif_machdep): Handle small structures for SYSV 4 ABI.
	Aka FFI_SYSV.
	(ffi_closure_helper_SYSV): Likewise.
	* src/powerpc/ppc_closure.S: Add return types for small structures.
	* src/powerpc/sysv.S: Add bits to handle small structures for
	final SYSV 4 ABI

From-SVN: r102174
2005-07-19 23:15:36 +02:00
Andreas Tobler
93c76f816d cls_5_1_byte.c: New test file.
2005-07-10  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/cls_5_1_byte.c: New test file.
	* testsuite/libffi.call/cls_6_1_byte.c: Likewise.
	* testsuite/libffi.call/cls_7_1_byte.c: Likewise.

From-SVN: r101855
2005-07-10 22:14:37 +02:00
Kelley Cook
a097ef55fc configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS.
2005-05-03  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS.
	Use AC_CHECK_SIZEOF instead of AC_COMPILE_CHECK_SIZEOF.
	* Makefile.am (ACLOCAL_AMFLAGS): Remove -I ../config.
	* aclocal.m4, configure, fficonfig.h.in, Makefile.in,
	include/Makefile.in, testsuite/Makefile.in: Regenerate.

From-SVN: r99879
2005-05-18 01:49:43 +00:00
Hans-Peter Nilsson
fc0ad8d961 libffi-dg.exp (libffi-dg-test-1): In regsub use, have Tcl8.3-compatible intermediate variable.
* testsuite/lib/libffi-dg.exp (libffi-dg-test-1): In regsub use,
	have Tcl8.3-compatible intermediate variable.

From-SVN: r98453
2005-04-20 10:59:26 +00:00
Simon Posnjak
614348bbec Makefile.am: Add CRIS support.
* Makefile.am: Add CRIS support.
	* configure.ac: Likewise.
	* Makefile.in, configure, testsuite/Makefile.in: Regenerate.
	* src/cris: New directory.
	* src/cris/ffi.c, src/cris/sysv.S, src/cris/ffitarget.h: New files.
	* src/prep_cif.c (ffi_prep_cif): Wrap in #ifndef __CRIS__.

Co-Authored-By: Hans-Peter Nilsson <hp@axis.com>

From-SVN: r98332
2005-04-18 17:08:58 +00:00
Hans-Peter Nilsson
727e729b8f libffi-dg.exp (libffi-dg-test-1): Replace \n with \r?\n in output tests.
* testsuite/lib/libffi-dg.exp (libffi-dg-test-1): Replace \n with
	\r?\n in output tests.

From-SVN: r98329
2005-04-18 16:31:10 +00:00
Zack Weinberg
c690027275 configure.ac: Do not invoke TL_AC_GCC_VERSION.
* configure.ac: Do not invoke TL_AC_GCC_VERSION.
	Do not set tool_include_dir.
	* aclocal.m4, configure, Makefile.in, testsuite/Makefile.in:
	Regenerate.
	* include/Makefile.am: Set gcc_version and toollibffidir.
	* include/Makefile.in: Regenerate.

From-SVN: r96823
2005-03-21 18:01:47 +00:00
Andreas Tobler
1b05e8bf3c re PR libffi/20104 (gij fails on ppc and not on x86)
2005-02-23  Andreas Tobler  <a.tobler@schweiz.ch>

	PR libffi/20104
	* testsuite/libffi.call/return_ll1.c: New test case.

From-SVN: r95454
2005-02-23 14:56:01 +01:00
Janis Johnson
6027770b6e cls_align_longdouble.c: Remove dg-options.
* testsuite/libffi.call/cls_align_longdouble.c: Remove dg-options.
	* testsuite/libffi.call/float.c: Ditto.
	* testsuite/libffi.call/float2.c: Ditto.
	* testsuite/libffi.call/float3.c: Ditto.

From-SVN: r94899
2005-02-11 22:33:16 +00:00
Eric Botcazou
c16be7d515 special.exp (cxx_options): Add -shared-libgcc.
* testsuite/libffi.special/special.exp (cxx_options): Add
	-shared-libgcc.

From-SVN: r93221
2005-01-12 09:06:52 +00:00
Richard Sandiford
afabd8e62c Introduce and use config/gcc-version.m4.
From-SVN: r91625
2004-12-02 11:05:13 +00:00
John David Anglin
1df8e83465 target-libpath.exp: New file defining set_ld_library_path_env_vars and restore_ld_library_path_env_vars.
* lib/target-libpath.exp: New file defining set_ld_library_path_env_vars
	and restore_ld_library_path_env_vars.
	* g++.dg/compat/compat.exp, lib/g++.exp, lib/gcc-dg.exp,
	lib/gfortran.exp, lib/objc.exp, lib/treelang.exp: Use new procs.
	* ada/acats/run_acats (LD_LIBRARY_PATH): Add previous LD_LIBRARY_PATH
	to LD_LIBRARY_PATH.  Export LD_LIBRARY_PATH.

	* testsuite/lib/libffi-dg.exp: Use new procs in target-libpath.exp.

	* testsuite/lib/libjava.exp,
	testsuite/libjava.jacks/jacks.exp: Use new procs in target-libpath.exp.

	* testsuite/lib/libmudflap.exp: Use new procs in target-libpath.exp.

	* testsuite/lib/libstdc++.exp: Use new procs in target-libpath.exp.

From-SVN: r91137
2004-11-24 04:39:41 +00:00
Kelley Cook
b85e31b94a Makefile.am: Remove no-dependencies.
2004-11-23  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am: Remove no-dependencies.  Add ACLOCAL_AMFLAGS.
	* acinclude.m4: Delete logic for sincludes.
	* aclocal.m4, Makefile.in, configure: Regenerate.
	* include/Makefile: Likewise.
	* testsuite/Makefile: Likewise.

From-SVN: r91073
2004-11-23 04:11:31 +00:00
Richard Earnshaw
fdc6959794 libffi-db.exp (load_gcc_lib): New function.
* testsuite/lib/libffi-db.exp (load_gcc_lib): New function.
(libffi_exit): New function.
(libffi_init): Build the testglue wrapper if needed.

From-SVN: r89636
2004-10-27 10:56:06 +00:00
Eric Botcazou
1e02510f05 re PR other/18138 (libgcc_s.so.1 not found by 64-bit testsuite)
gcc/testsuite:
	PR other/18138
	* lib/g++.exp: Accept more than one multilib libgcc.
	* lib/gcc-dg.exp: Likewise.
	* lib/objc.exp: Likewise.
	* lib/treelang.exp: Likewise.
	* lib/gfortran.exp: Likewise.

libffi:
	PR other/18138
	* testsuite/lib/libffi-dg.exp: Accept more than one multilib
	libgcc.

libjava:
	PR other/18138
	* testsuite/lib/libjava.exp: Accept more than one multilib
	libgcc.

libmudflap!:
	PR other/18138
	* testsuite/lib/libmudflap.exp: Accept more than one multilib
	libgcc.

libstdc++-v3:
	PR other/18138
	* testsuite/lib/libstdc++.exp: Accept more than one multilib
	libgcc.

From-SVN: r89528
2004-10-25 09:01:15 +00:00
Kaz Kojima
1fddb058e1 sysv.S (ffi_call_SYSV): Don't align for double data.
* src/sh/sysv.S (ffi_call_SYSV): Don't align for double data.
	* testsuite/libffi.call/float3.c: New test case.

From-SVN: r89366
2004-10-21 06:00:41 +00:00
Kazuhiro Inaoka
a472e9d4e6 Makefile.am: Add m32r support.
* Makefile.am: Add m32r support.
* configure.ac: Likewise.
* Makefile.in: Regenerate.
* confiugre: Regenerate.
* src/types.c: Add m32r port to FFI_INTERNAL_TYPEDEF
 (uint64, sint64, double, longdouble)
* src/m32r: New directory.
* src/m32r/ffi.c: New file.
* src/m32r/sysv.S: Likewise.
* src/m32r/ffitarget.h: Likewise.

From-SVN: r88993
2004-10-13 17:20:24 +00:00
Kaz Kojima
3d47e9caa9 * testsuite/libffi.call/negint.c: New test case.
From-SVN: r88421
2004-10-02 07:02:41 +00:00
H.J. Lu
fc9051dd43 re PR libffi/17465 (Testsuite in libffi overrides LD_LIBRARY_PATH)
2004-09-14  H.J. Lu  <hongjiu.lu@intel.com>

	PR libgcj/17465
	* testsuite/lib/libffi-dg.exp: Don't use global ld_library_path.
	Set up LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH,
	LD_LIBRARY64_PATH, LD_LIBRARY_PATH_32, LD_LIBRARY_PATH_64 and
	DYLD_LIBRARY_PATH.

From-SVN: r87511
2004-09-14 14:16:29 -07:00
Andreas Tobler
2010caea15 many_win32.c: Remove whitespaces.
2004-09-05  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/many_win32.c: Remove whitespaces.
	* testsuite/libffi.call/promotion.c: Likewise.
	* testsuite/libffi.call/return_ll.c: Remove unused var. Cleanup
	whitespaces.
	* testsuite/libffi.call/return_sc.c: Likewise.
	* testsuite/libffi.call/return_uc.c: Likewise.

From-SVN: r87091
2004-09-05 00:41:53 +02:00
Anthony Green
88d8c771f9 Makefile.am: Add frv support.
2004-08-30  Anthony Green  <green@redhat.com>

        * Makefile.am: Add frv support.
        * Makefile.in, testsuite/Makefile.in: Rebuilt.
        * configure.ac: Read configure.host.
        * configure, aclocal.m4: Rebuilt.
        * configure.host: New file.  frv-elf needs libgloss.
        * include/ffi.h.in: Force ffi_closure to have a nice big (8)
        alignment.  This is needed to frv and should harm the others.
        * include/ffi_common.h (ALIGN_DOWN): New macro.
        * src/frv/ffi.c, src/frv/ffitarget.h, src/frv/eabi.S: New files.

From-SVN: r86779
2004-08-30 15:43:03 +00:00
David Daney
4c5f37d568 closure_fn0.c: Xfail mips64* instead of mips*.
2004-08-24  David Daney  <daney@avtrex.com>

	* testsuite/libffi.call/closure_fn0.c: Xfail mips64* instead of mips*.
	* 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_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_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_align_double.c: Likewise.
	* testsuite/libffi.call/cls_align_float.c: Likewise.
	* testsuite/libffi.call/cls_align_longdouble.c: Likewise.
	* testsuite/libffi.call/cls_align_pointer.c: Likewise.
	* testsuite/libffi.call/cls_align_sint16.c: Likewise.
	* testsuite/libffi.call/cls_align_sint32.c: Likewise.
	* testsuite/libffi.call/cls_align_sint64.c: Likewise.
	* testsuite/libffi.call/cls_align_uint16.c: Likewise.
	* testsuite/libffi.call/cls_align_uint32.c: Likewise.
	* testsuite/libffi.call/cls_align_uint64.c: Likewise.
	* testsuite/libffi.call/cls_double.c: Likewise.
	* testsuite/libffi.call/cls_float.c: Likewise.
	* testsuite/libffi.call/cls_multi_schar.c: Likewise.
	* testsuite/libffi.call/cls_multi_sshort.c: Likewise.
	* testsuite/libffi.call/cls_multi_sshortchar.c: Likewise.
	* testsuite/libffi.call/cls_multi_uchar.c: Likewise.
	* testsuite/libffi.call/cls_multi_ushort.c: Likewise.
	* testsuite/libffi.call/cls_multi_ushortchar.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.
	* testsuite/libffi.call/cls_12byte.c: Likewise and set return value
	to zero.
	* testsuite/libffi.call/cls_16byte.c: Likewise.
	* testsuite/libffi.call/cls_5byte.c: Likewise.

From-SVN: r86534
2004-08-25 05:06:55 +00:00
Paolo Bonzini
076e544330 configure.ac: New name of configure.in.
libmudflap/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* configure.ac: New name of configure.in.  Update
	AC_INIT, AC_CONFIG_SRCDIR, AC_CONFIG_HEADERS, AC_CONFIG_FILES,
	AC_OUTPUT, AM_INIT_AUTOMAKE to the preferred style for
	Autoconf 2.5x and Automake 1.7 or later.
	* configure.in: Remove.
	* configure: Regenerate.

	* Makefile.am: Remove useless multilib rules.
	* Makefile.in: Regenerate.

libstdc++-v3/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* acinclude.m4: Remove useless multilib configury.
	* Makefile.am: Remove useless multilib rules.
	* aclocal.m4: Regenerate.
	* Makefile.in: Regenerate.
	* configure.ac: Use AM_ENABLE_MULTILIB.
	* configure: Regenerate.

zlib/ChangeLog.gcj:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.am: Remove useless multilib rules.
	* configure.ac: Rewrite multilib support to use
	features of recent automakes.
	* aclocal.m4: Regenerate with Automake 1.8.5.
	* Makefile.in: Regenerate with Automake 1.8.5.
	* configure: Regenerate.

libffi/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.am: Remove useless multilib rules.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate with automake 1.8.5.
	* configure.ac: Remove useless multilib configury.
	* configure: Regenerate.

From-SVN: r83184
2004-06-15 14:47:55 +00:00
Andreas Tobler
67781b4446 cls_multi_schar.c (main): Fix initialization error.
2004-04-24  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/cls_multi_schar.c (main): Fix initialization
	error. Reported by Thomas Heller <theller@python.net>.
	* testsuite/libffi.call/cls_multi_sshort.c (main): Likewise.
	* testsuite/libffi.call/cls_multi_ushort.c (main): Likewise.

From-SVN: r81131
2004-04-24 09:48:37 +02:00
Kelley Cook
0e8d0c5f6c configure.in: Rename file to ...
2004-03-15 Kelley Cook <kcook@gcc.gnu.org>

	* configure.in: Rename file to ...
	* configure.ac: ... this.
	* fficonfig.h.in: Regenerate.
	* Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r79513
2004-03-15 23:15:05 +00:00
Andreas Tobler
3ed8e5b64d Makefile.am (AUTOMAKE_OPTIONS): Set them.
2004-03-11  Andreas Tobler  <a.tobler@schweiz.ch>
	    Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.am (AUTOMAKE_OPTIONS): Set them.
	Remove VPATH. Remove rules for object files. Remove multilib support.
	(AM_CCASFLAGS): Add.
	* configure.in (AC_CONFIG_HEADERS): Relace AM_CONFIG_HEADER.
	(AC_PREREQ): Bump version to 2.59.
	(AC_INIT): Fill with version info and bug address.
	(ORIGINAL_LD_FOR_MULTILIBS): Remove.
	(AM_ENABLE_MULTILIB): Use this instead of AC_ARG_ENABLE.
	De-precious CC so that the right flags are passed down to multilibs.
	(AC_MSG_ERROR): Replace obsolete macro AC_ERROR.
	(AC_CONFIG_FILES): Replace obsolete macro AC_LINK_FILES.
	(AC_OUTPUT): Reorganize the output with AC_CONFIG_COMMANDS.
	* configure: Rebuilt.
	* aclocal.m4: Likewise.
	* Makefile.in, include/Makefile.in, testsuite/Makefile.in: Likewise.
	* fficonfig.h.in: Likewise.

Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>

From-SVN: r79341
2004-03-11 20:59:49 +01:00
Alan Modra
4243752ca1 ffi.c (ffi_prep_args64): Correct long double handling.
* src/powerpc/ffi.c (ffi_prep_args64): Correct long double handling.
	(ffi_closure_helper_LINUX64): Fix typo.
	* testsuite/libffi.call/cls_align_longdouble.c: Pass -mlong-double-128
	for powerpc64-*-*.
	* testsuite/libffi.call/float.c: Likewise.
	* testsuite/libffi.call/float2.c: Likewise.

From-SVN: r77522
2004-02-09 14:09:48 +10:30
Andreas Tobler
7fcc1d9baf pyobjc-tc.c (main): Treat result value as of type ffi_arg.
2004-01-24  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libffi.call/pyobjc-tc.c (main): Treat result value
	as of type ffi_arg.
	* testsuite/libffi.call/struct3.c (main): Fix CHECK.

From-SVN: r76513
2004-01-24 17:13:48 +01:00
Ulrich Weigand
6ed0ecaf30 cls_uint.c (cls_ret_uint_fn): Treat result value as of type ffi_arg, not unsigned int.
* testsuite/libffi.call/cls_uint.c (cls_ret_uint_fn): Treat result
	value as of type ffi_arg, not unsigned int.

From-SVN: r76377
2004-01-22 23:05:13 +00:00