[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;))
From: |
Rolf Magnus |
Subject: |
[avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)) |
Date: |
Wed, 23 Aug 2006 13:50:36 +0200 |
User-agent: |
KMail/1.9.1 |
On Tuesday 15 August 2006 12:18, Joerg Wunsch wrote:
> [Let's move that out to avr-gcc-list instead, it's well on-topic
> there.]
>
> Rolf Magnus <address@hidden> wrote:
> >> Oh, while you are at it, move the vtables out to ROM, please. :-)
> >
> > I'd really love that. Would try it myself, but I guess it would
> > require a lot of hard work to dig into the g++ code for someone who
> > has never looked into it.
>
> I have no idea about it. I've got already enough AVR stuff at my
> hands, so I don't volunteer to become Mr. AVR-G++. ;-)
>
> Speaking about AVR-G++, I filed a GCC bug report yesterday:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28718
>
> By comparision with my FreeBSD host's G++, it appears to be a feature
> they normally link libstdc++ and libm before any user-supplied
> libraries. As on the AVR, there is no libstdc++, libgcc is (ab)used
> instead.
I guess this is caused by the following (from gcc/config/avr/avr.h):
#define LIBSTDCXX "-lgcc"
/* No libstdc++ for now. Empty string doesn't work. */
> This causes really ``funny'' behaviour. In the simpler
> case, it just causes a lot of bloat to be added from libgcc.a (rather
> than the hand-tunded stuff from libm.a), and in the case where a user
> forced the floating-point printf library, it causes double definitions
> of external symbols.
We could start writing a real libstdc++ replacement. Of course, large parts of
the C++ standard library don't make much sense on the AVR, but there could be
some useful standard stuff and some additional AVR specific things that could
be added. Or some minimalistic replacement for the iostreams. Consider being
able to have a cout on the AVR. It could even take less program space than
printf, because you have a separate function for every data type, while
printf most often includes lots of format conversions not needed in a
particular situation.
- [avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)), Joerg Wunsch, 2006/08/15
- [avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)),
Rolf Magnus <=
- RE: [avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)), Eric Weddington, 2006/08/23
- Re: [avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)), Joerg Wunsch, 2006/08/23
- RE: [avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)), Eric Weddington, 2006/08/23
- Re: [avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)), Rolf Magnus, 2006/08/23
- Re: [avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)), Joerg Wunsch, 2006/08/25
- Re: [avr-gcc-list] Re: [avr-chat] AVR-G++ (Was: more of the same ;)), Rolf Magnus, 2006/08/26
- Re: [avr-gcc-list] AVR-G++ (Was: more of the same ;)), Bernd Trog, 2006/08/27
- Re: [avr-gcc-list] AVR-G++ (Was: more of the same ;)), Rolf Magnus, 2006/08/27
- [avr-gcc-list] Exception handling methods (was: Re: AVR-G++), Bernd Trog, 2006/08/28
- [avr-gcc-list] Re: Exception handling methods (was: Re: AVR-G++), Rolf Magnus, 2006/08/30