This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Pointers to add doulle-float capabilities for the avr target
- From: Tobias Frost <tofr at gmx dot de>
- To: Uros Bizjak <ubizjak at gmail dot com>
- Cc: GCC <gcc at gcc dot gnu dot org>
- Date: Wed, 21 May 2008 19:14:29 +0200
- Subject: Re: Pointers to add doulle-float capabilities for the avr target
- References: <483455A3.9090506@gmail.com>
Thanks a lot...
This is almost the state I was when I left work today. I never thought,
that will be sufficient ;-)
I'll give feedback on Monday (tomorrow's holiday --> loooong weekend ;-)
Tobi
On Wed, 2008-05-21 at 19:02 +0200, Uros Bizjak wrote:
> Hello!
>
> > I am currently evaluation the feasiblitiy to add (real) 64-doubles to the capabilities of the avr-gcc. The current state is, that the avr-gcc supports floats and alias them to doubles. However, a prospective project demands the resolution (accordung to their research), and therefore the company needing it might sponsor me to implement the support.
> >
> > However, beside some trivial patches, I am not familiar with gcc hacking. Therefore it is hard for me to estimated how long this will take, but the numbers are cruicial to deside if I get the assignement.
> >
> > As far as I dugg into the gcc source, there is a soft-float library which is used widely among non-FPU targets. However, I am currently missing the link, how the target has to be configured to be aware of that. As I am currently stuck with that, I'd appreciate any hint, link, documents etc which might point me into the right direction.
> >
> >
>
> Add this code to avr/t-avr:
>
> --cut here--
> LIB2FUNCS_EXTRA = fp-bit.c dp-bit.c
>
> dp-bit.c: $(srcdir)/config/fp-bit.c
> cat $(srcdir)/config/fp-bit.c > dp-bit.c
>
> fp-bit.c: $(srcdir)/config/fp-bit.c
> echo '#define FLOAT' > fp-bit.c
> cat $(srcdir)/config/fp-bit.c >> fp-bit.c
> --cut here--
>
> then update avr/avr.h with
>
> #define FLOAT_TYPE_SIZE 32
> #define DOUBLE_TYPE_SIZE 64
> #define LONG_DOUBLE_TYPE_SIZE 64
>
> If everything works as expected, then you have just added soft-fp
> support to avr.
>
> Uros.