[fpc-devel] Arm Thumb2 - Stellaris status

Geoffrey Barton mrb at periphon.net
Tue Aug 9 10:19:31 CEST 2011


On 8 Aug 2011, at 21:13, Florian Klämpfl wrote:

> Am 08.08.2011 12:49, schrieb John Clymer:
>> Kicking it around in the back of my head at work today...
>> 
>> I tried doing a compile to assembly language for the stellaris - and it
>> choked giving the error from t_embed.pas.  The error comes from the
>> portion of the program trying to generate a linker script.
>> 
>> Looking at t_embed.pas, it looks like every single flavor of ARM
>> controller will require it's own subsection of the case() statement. 
>> This can easily get long and ugly.  As the only thing that changes
>> between most of the arm variants is the memory layout - why not provide
>> a generic "stellaris" switch - with reads in a text file containing the
>> memory map and stack top (the rest of the link file remains the same for
>> all variants of ARM) ? 
>> 
>> This way - switching to a new variant of stellaris only requires
>> tweaking a memory map file - rather than a re-build and patch of
>> t_embed.pas ?  For that matter - entirely foreign Cortex M3 parts could
>> be easily supported without requiring changes to the compiler.
>> 
>> Just pondering how to make it easier and more flexible ...
> 
> Yes, this can be done. However, somebody who knows enough about a
> certain controller family must do this.

What in your view is the best way to separate link options such as these variations in memory maps between devices? I often have several projects at once and they can be using different parts within the same family; having to re-compile the compiler when switching between projects is not ideal.

> 
> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> http://lists.freepascal.org/mailman/listinfo/fpc-devel




More information about the fpc-devel mailing list