Re: ARM EABI port: minimum CPU choice
"Martin Guy" <firstname.lastname@example.org> wrote:
> So... is there a valid need for anyone to be able to include fragments
> of Thumb code in an otherwise wholly 32-bit Debian ARM system? A
> reason so pressing and of such widespread usefulness to outweigh the
> global disadvantages of including interworking?
Since you would call the port ARM EABI, I think it should be close to
what the EABI mandates. Otherwise people won't be able to run
pre-compiled third-party software (built with an EABI compiler). The
problem with this is that ARMv4(t) wouldn't be supported but there is
already a Debian ARM port which is pure 32bit.
Another reason would be to make life easier for people trying to
re-compile applications to Thumb on an ARM Debian machine. Without
interworking, they would have to use workarounds like scratchbox +
qemu (I'm not sure whether Qemu supports Thumb).
> Thumb emulation via illegal instruction traps? No, I'm only joking...
Not to entirely emulate Thumb but you could actually hack the kernel
to trap and dynamically replace the "BX LR" instruction with a "MOV
PC, LR" on ARMv4t. It would be a longer start-up time but will get
faster afterwards (this approach wouldn't work with XIP though).