[Openmcl-devel] Challenge: CCL port to the RPi Pico (RP2040)
Ron Garret
ron at flownet.com
Sun Jul 28 11:10:19 PDT 2024
> On Jul 28, 2024, at 10:43 AM, Carl Shapiro <carl.shapiro at gmail.com> wrote:
>
> On Sun, Jul 28, 2024 at 7:54 AM Tim McNerney <mc at media.mit.edu <mailto:mc at media.mit.edu>> wrote:
> CCL already has 32-bit ARM support. There is no OS interfacing work to do here (only work to make up for the lack of OS).
>
> The Cortex-M processors execute Thumb-1 or Thumb-2 instructions which are different from 32-bit ARM instructions. The Cortex-A designs and older designs from ARM with a "T" in their name support both the 32-bit ARM and Thumb instructions.
>
> On a Cortex-A and other processors that support both ISAs, code can switch between ISA states with the BX or BLX instruction setting the lower bit of the destination to 1 or 0 to specify either the Thumb or ARM ISA. If someone wants to add a backend to the Cortex-M, starting with a working ARM backend and switching the code generator to using Thumb would seem like a possible way to start.
Doesn't seem like it would be very hard. They are the same ISA, just different encodings.
https://stackoverflow.com/questions/28669905/what-is-the-difference-between-the-arm-thumb-and-thumb-2-instruction-encodings
rg
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20240728/34a2c665/attachment-0001.htm>
More information about the Openmcl-devel
mailing list