[fpc-pascal] Free Pascal Support for ARM Architecture
Marco van de Voort
marcov at stack.nl
Tue Dec 9 09:53:25 CET 2008
In our previous episode, Marc Santhoff said:
> > some small THUMB things, but FPC doesn't generate THUMB code).
> One possible difference coming to my mind (although only a speed issue,
> not influencing nonetheless working code):
> There are some ARM7 (and maybe ARM9, not sure) core variants having no
> hardware multiplication unit. IIRC the M in TDMI stands for "hardware
> multiplier unit". Experiences with gcc showed me that the 32x32=64 mult
> commands are not used in that case.
Wikipedia also calls ARM7 ARMV3 arch, and only ARM7TDMI ARMV4. This could be
the reason why. (and maybe the D and the I)
> It would be nice to have the chance of setting some extra command line
> arguments to the call to the assembler - I think that is what Riley is
> is asking for.
The trick is that if you give FPC that info, it can check both code
generated and the assembler reader, and do the same AND provide a valid
source line. IOW, I don't see a good reason to do this in the backend
assembler, if it can be better done in the frontend.
For the rare (e.g. FPC development related) cases, simply make a few
scripts with systematic naming that call the assembler with the right
params, and then select the desired one using -XP.
IIRC the buildfaq has an example of this (for the -m params)
More information about the fpc-pascal