This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: fr30 FP format question
- From: Toon Moene <toon at moene dot indiv dot nluug dot nl>
- To: joel dot sherrill at OARcorp dot com
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 29 Apr 2002 15:41:44 +0200
- Subject: Re: fr30 FP format question
- Organization: Moene Computational Physics, Maartensdijk, The Netherlands
- References: <3CCAFFF2.B6B60F19@OARcorp.com>
Joel Sherrill wrote:
> FR30 can't build fortran because this is being tripped
> in gcc/f/target.h:
>
> /* For now, g77 requires the ability to determine the exact bit pattern
> of a float on the target machine. (Hopefully this will be changed
> soon). Make sure we can do this. */
>
> #if !defined (REAL_ARITHMETIC) \
> && ((TARGET_FLOAT_FORMAT != HOST_FLOAT_FORMAT) \
> || (FLOAT_WORDS_BIG_ENDIAN != HOST_FLOAT_WORDS_BIG_ENDIAN))
> #error "g77 requires ability to access exact FP representation of target
> machine
> "
> #endif
>
> The fr30 appears to only have software floating point based upon
> fr30/t-fr30 so I was thinking this had to be easy to fix but
> don't know precisely what I am looking for to compare against. :(
>
> Could someone point me in the right direction? Thanks.
As far as I can see, the only comparison in the above conditional that's
not true is FLOAT_WORDS_BIG_ENDIAN != HOST_FLOAT_WORDS_BIG_ENDIAN.
This is so, because the fr30 is a big-endian machine (which means that
its FLOATs will be big-endian also, by default), whereas the ix86, from
which you want to cross-compile, is a little-endian machine, with
little-endian FLOATs.
This means that you should be able to build the cross-compiler on a
big-endian machine, like powerpc, sparc, mips or s390 ...
--
Toon Moene - mailto:toon@moene.indiv.nluug.nl - phoneto: +31 346 214290
Saturnushof 14, 3738 XG Maartensdijk, The Netherlands
Maintainer, GNU Fortran 77: http://gcc.gnu.org/onlinedocs/g77_news.html
Join GNU Fortran 95: http://g95.sourceforge.net/ (under construction)