Questions about trampolines
Robert Dewar
dewar@adacore.com
Tue Mar 15 10:21:00 GMT 2005
Michael N. Moran wrote:
> Robert Dewar wrote:
>
>> Michael N. Moran wrote:
>>
>>> The AVR is a bit more extreme than the Harvard arch you're describing.
>>> The AVR has completely separate address spaces for instructions and
>>> data. Instruction data space cannot be accessed through a data space
>>> pointer. There are separate instructions for accessing instruction
>>> and data space.
>>
>>
>>
>> But there must be a way to write stuff into the instruction data
>> space, or how would you load code? So you just have to setup an
>> auxiliary stack in code space.
>
>
> The AVR is an embedded processor, and the instruction space is
> is Flash *not* RAM. We're not talking about a system that loads
> programs at run-time.
In that case, you have to use function descriptors I think there
is no way around this.
>
> These devices typically have a "large" amount of Flash ROM
> (32K-68K bytes), and a smaller amount of RAM (512-2K bytes).
> Don't hold me to these numbers, but you get the idea.
>
More information about the Gcc
mailing list