[patch] Add support for FreeBSD powerpc64

Andreas Tobler andreast-list@fgznet.ch
Thu Jun 3 20:15:00 GMT 2010


Hi all,

the attached patch adds support for a target which is not yet officially 
released.

The motivation of this early feed comes from history. We still have a 
lot of libffi users (packages) which use an intermediate libffi version 
where the powerpc-freebsd support was not complete. This leads to the 
fact that we have to patch all these packages with the right fix. Doing 
the support right from the beginning, hopefully avoids this situation.

This target, powerpc64-*-freebsd* does follow the same ABI as powerpc64 
linux except that the long doubles are 8 byte instead of 16.

The patch itself is minimal. The only question I have from my side is 
this one, in the configure.ac/configure I find an occurence of 
powerpc*-*-rtems* this could be expanded to a powerpc64-*rtems* target. 
Does something like that exists? If so, does this target really support 
libffi?
The question is because of the dg-options in the test cases. If yes, 
then I have to rework the options I modified in the attached patch.

If there is not such target, is this patch ok for gcc-trunk/libffi-trunk?

Thanks,
Andreas

Native configuration is powerpc64-unknown-freebsd9.0

		=== libffi tests ===

Schedule of variations:
     unix

Running target unix
Using /usr/local/share/dejagnu/baseboards/unix.exp as board description 
file for target.
Using /usr/local/share/dejagnu/config/unix.exp as generic interface file 
for target.
Using /home/andreast/libffi-3.0.9/testsuite/config/default.exp as 
tool-and-target-specific interface file.
Running /home/andreast/libffi-3.0.9/testsuite/libffi.call/call.exp ...
Running /home/andreast/libffi-3.0.9/testsuite/libffi.special/special.exp ...

		=== libffi Summary ===

# of expected passes		1624
# of expected failures		10
# of unsupported tests		15


2010-06-03  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:
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: libffi_ppc64_fbsd.diff
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100603/70cb441d/attachment.ksh>


More information about the Gcc-patches mailing list