This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: gcc3.3 everything in the data segment?
- From: Nick Garnett <nickg at ecoscentric dot com>
- To: Andrew Lunn <andrew dot lunn at ascom dot ch>
- Cc: eCos Disuss <ecos-discuss at sources dot redhat dot com>
- Date: 08 Aug 2003 10:57:56 +0100
- Subject: Re: [ECOS] gcc3.3 everything in the data segment?
- References: <20030808083152.GG2868@biferten.ma.tech.ascom.ch>
Andrew Lunn <andrew.lunn@ascom.ch> writes:
> I have a problem with gcc 3.3:
>
> mips64vr-elf-gcc -v
> Reading specs from /opt/ecos/gnutools/mips64vr-elf/lib/gcc-lib/mips64vr-elf/3.3/specs
> Configured with: /export/pub/tmp/lunn/src/gcc-3.3/configure --target=mips64vr-elf --prefix=/opt/ecos/gnutools/mips64vr-elf --enable-language=c,c++ --with-gnu-as --with-gnu-ld --with-newlib --with-gxx-include-dir=/opt/ecos/gnutools/mips64vr-elf/include -v
> Thread model: single
> gcc version 3.3
>
> mips64vr-elf-ld -v
> GNU ld version 2.14 20030612
>
> mips64vr-elf-size install/tests/kernel/v1_5_2/tests/tm_basic
> text data bss dec hex filename
> 289372 5099364 4128 5392864 5249e0 install/tests/kernel/v1_5_2/tests/tm_basic
>
> Everything that should be in the bss is in the data segment! The image
> runs, but this is not Flash friendly!
>
Perhaps a change in naming conventions for the sections containing
uninitialized variables? Looking at an objdump from GCC 3.2.1, these
all get put into .bss. If 3.3 is putting them into .data.XXX sections
instead, then they will always get put into the data segment. An
objdump of tm_basic.o should show what's going on.
--
Nick Garnett eCos Kernel Architect
http://www.ecoscentric.com The eCos and RedBoot experts
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss