This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


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

Re: crosstool 0.28pre demo-arm-softfloat.sh FP issue


Hi Leon,
I'm afraid I'm not able to follow this issue much, but
Robert Schwebel is; he's the one who dug up the copy of Nicolas'
patch that I use.  I'm cc'ing him, perhaps he can comment.
Thanks,
Dan

Leon Woestenberg wrote:
Hello Dan,

just been quickly viewing at your crosstool 0.28pre4.

I have been following the softfloat issue concerning
printf("%f", 1.0) for ARM architectures.

In your demo-arm.sh, you mention this patch:
http://sources.redhat.com/ml/crossgcc/2004-02/msg00104.html

However, you may be more interested in this patch instead:
http://lists.arm.linux.org.uk/pipermail/linux-arm/2003-November/006590.html

This came forward in a very recent (as in current) discussion thread on the arm-linux mailing list;

http://lists.arm.linux.org.uk/pipermail/linux-arm/2004-March/thread.html#7214


(see the SoftFloat and SoftFloat Benchmarks threads, especially the 3rd message in the SoftFloat thread.)


I am very new in using crosstool, but I will try to add Nicolas Pitre's
assembly optimized softfloat as well as the big endian patch (that makes
glibc printf work OK) and try to test them on an XScale IXP425.

Also note that the benchmarks show that Nicolas Pitre's patch passes some FP tests.

Regards,

Leon.

------------------------------------------------------------------------

Subject:
Re: SoftFloat Benchmarks
From:
Eric BENARD / Free <ebenard@free.fr>
Date:
Tue, 9 Mar 2004 10:05:05 +0100
To:
Leon Woestenberg <leonw@mailcan.com>, linux-arm@lists.arm.linux.org.uk

To:
Leon Woestenberg <leonw@mailcan.com>, linux-arm@lists.arm.linux.org.uk


Le Lundi 8 Mars 2004 23:14, Leon Woestenberg a écrit :


I am however, also interested in learning how you built your toolchain
with Nico's patches. Are you using a cross compilation tool or was this
hand-crafted?


Hand-crafted in order to have a good control on the build process (I had to give several try for some stages). I'm using patches from crosstool's patches directory and patches from mailing lists.
I can post some details if necessary as I wrote the process on a paper.



Did you also make sure the "printf("%f", 1.0)" issue was solved in your
toolchain as discussed here?

http://sources.redhat.com/ml/crossgcc/2004-02/msg00106.html


Yes. In fact I'm using these patches : http://lists.arm.linux.org.uk/pipermail/linux-arm/2003-November/006590.html

Which are giving good results with several test programs (I'll post tests results later today as these results are also interesting).

Patches I'm using :
- binutils-2.15.90.0.1.1 :
arm-be.patch
- GCC-3.3.3 :
gcc-3.3.2-arm-softfloat.diff gcc-3.3.2-arm-targetbug.diff t-linux
- Glibc-2.3.2 :
arm-asm-clobber.patch sscanf.patch
string2-typedef.patch
errlist-awk.patch sysdep-cancel-arm-1.2-1.6.patch
patch-glibc-ieee754-arm-ieee754.h patch-glibc-ieee754-dbl64-mpn2dbl
patch-glibc-ieee754-dbl64-dbl2mpn patch-glibc-ieee754-flt32-mpn2flt
- NWFPE : nwfpe-double_cpdo.c nwfpe-fpa11_cpdt.c



Also, there seem to be outstanding issues for non-XScale targets, as the
assembler is forced to target XScales (but that is good for IXP425 :).

http://sources.redhat.com/ml/crossgcc/2004-02/msg00129.html


I'm not using this patch, nor this one : http://gcc.gnu.org/ml/gcc-patches/2001-12/msg01370.html


The toolchain is optimized and dedicated to big endian Xscale, but that's not a real problem as it's easy to have an optimized toolchain for each target and switch the PATH depending on the wanted target.

If you want a generic toolchain optimized for each configuration you will have to compile several glibc with each option and to handle several directories and options for gcc to get and link to the correct configuration (big-endian+ soft-float for example) and this is not very clear to me, so I compiled several toolchains using the same process but not the same options/patches :
- standard (let the kernel handle FP)
- softfloat, with Nicolas' patch
- -msoft-float : let have an external libfloat library.


Eric




--
My technical stuff: http://kegel.com
My politics: see http://www.misleader.org for examples of why I'm for regime change

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


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