This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: Problem for using __attribute__((section(".text")))
- From: Arnaud Lacombe <lacombar at gmail dot com>
- To: Heyu Zhu <zhu dot heyu at gmail dot com>
- Cc: gcc-help at gcc dot gnu dot org
- Date: Fri, 10 Sep 2010 01:04:23 -0400
- Subject: Re: Problem for using __attribute__((section(".text")))
- References: <AANLkTin+nJ37czksx-2qitdoZw0xtOyyiSVqJpz4+sOJ@mail.gmail.com>
Hi,
On Thu, Sep 9, 2010 at 9:52 PM, Heyu Zhu <zhu.heyu@gmail.com> wrote:
> Hi everyone,
>
> File boot.c is like below:
>
> ? ? ? ? ?int val[] __attribute__ ((section(".text"))) = {1, 2, 3, 4, 5 ,6};
> ? ? ? ? ?int getval(int i) {
> ? ? ? ? ? ? ? return val[i];
> ? ? ? ? ?}
>
> Then i compile it use gcc-4.2.4 and binutils2.20
>
> ? ? ? ?arm-elf-gcc boot.c -c -o boot.o
>
> It gives a warning:
>
> ? /tmp/ccIlHjum.s: Assembler message:
> ? /tmp/ccIlHjum.s:4: Warning: ignoring changed section attributes for .text
>
> What's wrong? ?What should i do to remove the warning?
>
AFAIR, "__attribute__ ((section(".text")))" will make gcc emits
`,"aw",@progbits' after the '.text' to alter the section attributes.
If you use: "__attribute__ ((section(".text#")))" (notice the extra
'#') this suffix will be commented in the assembly and the warning
will disappear.
- Arnaud