[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [avr-gcc-list] Re: "progmem_far" attribute
From: |
Weddington, Eric |
Subject: |
RE: [avr-gcc-list] Re: "progmem_far" attribute |
Date: |
Sun, 20 Jul 2008 10:40:35 -0600 |
Hi Anatoly,
Patches look good so far.
Is <stdbool.h> included in avr.c? Should it be for the bool type, and
'true' and 'false'?
FYI, it would be nice if you could use the -p switch in producing
patches. This prints out the C function that the hunk belongs to. It
helps in reviewing patches.
Thanks,
Eric Weddington
> -----Original Message-----
> From:
> address@hidden
> [mailto:address@hidden
> org] On Behalf Of Anatoly Sokolov
> Sent: Sunday, July 20, 2008 9:41 AM
> To: Anatoly Sokolov; avr-GCC
> Subject: [avr-gcc-list] Re: "progmem_far" attribute
>
> Hi.
>
> The patch add "progmem_far" attribute in GCC.
>
> Anatoly.
>
> ----- Original Message -----
> From: "Anatoly Sokolov" <address@hidden>
> To: "avr-GCC" <address@hidden>
> Cc: "Anatoliy Sokolov" <address@hidden>
> Sent: Friday, May 02, 2008 8:36 PM
> Subject: "progmem_far" attribute
>
>
> > Hello.
> >
> > Now GCC have "progmem" attribute to place data in the
> '.progmem' section.
> > The 'avr-libc' have set of '*_P' string functions for
> access to "progmem"
> > data. But pointer operand in '*_P' functions is 16-bit
> size and hence size
> > of data in '.progmem' section it is limited by about 64KB.
> >
> > This restriction was rare a source of problem for 128K
> devices but is very
> > hard for 256K and up devices.
> >
> > I suggest to add "progmem_far" attribute, and place data
> defined with it
> > attribute in the new '.progmem_far' section place it in end
> of '.text'
> > section after ".fini0" (It is some section which should be
> located in low
> > 128K ".trampolines*" and ".lowtext*"). For access to data
> in this section
> > to use set of '*_PF' string functions (patch #6352: Far
> pointer library).
> >
> > Now the programmer can define often used data with
> "progmem" attribute and
> > define seldom used data with "progmem_far" attribute.
> >
> > Yes I understand what to have two similar sets of
> attributes and functions
> > is error prone, but it is necessary to allow to the
> programmer to store more
> > them 64KB data in program memory, not forcing it to write
> the linker script.
> >
> > For 'xmega' devices it is necessary to add '.apptable'
> section which is
> > located in the top 8(4)KB of FLASH.
> >
> > What your opinion on this offer?
> >
> > Anatoly.
> >
>