This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH, freebsd]: Build quad soft-fp library.


On Tue, Aug 31, 2010 at 6:31 AM, Steve Kargl
<sgk@troutmask.apl.washington.edu> wrote:

>> I tested your patch on x86_64-*-freebsd. ?My ppl and cloog
>> libraries were built with FreeBSD's system gcc (4.2.1). ?All
>> tests failed due to missing symbols that are marked GCC_3.0.
>>
>> > Index: gcc/config/i386/t-freebsd
>> > ===================================================================
>> > --- gcc/config/i386/t-freebsd ? ? ? (revision 0)
>> > +++ gcc/config/i386/t-freebsd ? ? ? (revision 0)
>> > @@ -0,0 +1 @@
>> > +SHLIB_MAPFILES = $(srcdir)/config/i386/libgcc-bsd.ver
>>
>> Changing the = to += seems to fix the problem. ?My
>> regression testing is still running, so I can't
>> report stats.
>>
>
> With my change to +=, on x86_64-*-freebsd I get
>
> ? ? ? ? ? ? ? ?=== gcc Summary ===
>
> # of expected passes ? ? ? ? ? ?72950
> # of unexpected failures ? ? ? ?74
> # of unexpected successes ? ? ? 3
> # of expected failures ? ? ? ? ?215
> # of unresolved testcases ? ? ? 3
> # of unsupported tests ? ? ? ? ?1081
> /usr/home/sgk/gcc/obj4x/gcc/xgcc ?version 4.6.0 20100830 (experimental) (GCC)
>
>
> ? ? ? ? ? ? ? ?=== gfortran Summary ===
>
> # of expected passes ? ? ? ? ? ?36155
> # of unexpected failures ? ? ? ?4
> # of unexpected successes ? ? ? 7
> # of expected failures ? ? ? ? ?59
> # of unsupported tests ? ? ? ? ?53
> /usr/home/sgk/gcc/obj4x/gcc/testsuite/gfortran/../../gfortran ?version 4.6.0 20100830 (experimental) (GCC)
>
>
> I quickly looked through the gcc.log file and noticed
> a couple of ICE's but I believe those are unrelated to
> the TFmode patch.
>
> Note, I believe that I do not have the authority to
> approve this patch.

Attached is the final (but untested) patch. The difference is, that
.ver file (and corresponding t-freebsd file) have been moved to
libgcc. I modified existing solaris .ver file (as suggested by Joseph)
and sprinkled it with %if[n]defs (IMO, solaris .ver file also needs
these).

gcc/ChangeLog:

2010-08-31  Uros Bizjak  <ubizjak@gmail.com>

	* config.gcc (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
	i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file.

libgcc/ChangeLog:

2010-08-31  Uros Bizjak  <ubizjak@gmail.com>

	* config.host (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add
	i386/t-freebsd to tmake_file.
	* config/i386/t-freebsd: New file.
	* config/i386/libgcc-bsd.ver: New file.

Gerald, can you please test this patch?

Uros.

Attachment: c.diff.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]