[fpc-devel] ARM4 and THUMB instruction sets
Daniël Mantione
daniel.mantione at freepascal.org
Thu Oct 18 08:36:34 CEST 2007
Op Wed, 17 Oct 2007, schreef Felipe Monteiro de Carvalho:
> Hello,
>
> I was reading about the difference between arm4 and thumb:
> http://wiki.forum.nokia.com/index.php/ARM4,_ARMI_&_THUMB
>
> Because I noted that all examples for Symbian OS use thumb and fpc
> supports only arm4.
>
> Acording to the nokia wiki using thumb would be produce smaller and
> faster code on the majority of mobiles,
It is not that black and white. Some ARM processors use 16-bit busses and
and therefore need 2 cycles to fetch normal 32-bit assembler instructions.
On the other hand in thumb mode your instructions and adressing modes are
much more limited, requiring you to write more instructions to do the job.
> so it may be useful to see of
> we can easely support thumb. Since we always use an external assembler
> for arm, I wounder: Wouldn't be supporting arm4/thumb just a question
> of switching a switch when calling the assembler?
No, thumb assembler code is different from generating normal assembler
code. You need serious code generator modifications.
Daniël
More information about the fpc-devel
mailing list