3 ms·
I wonder if such a direct translation from ARM to another architecture would even be possible given that the instruction set can be changed at runtime (thumb mo
by 0x000xca0xfe 4y ago
I wonder if such a direct translation from ARM to another architecture would even be possible given that the instruction set can be changed at runtime (thumb mode).
Does anybody know how often typical ARM32 programs execute this mode switching or if such sections can be recognized statically?
- anyfoo 4y agoIf that's really an issue (most code probably sticks to one mode, but I have no data), just translate twice, once in either mode. ¯\_(ツ)_/¯
- saagarjha 4y agoShouldn’t be hard under this scheme, it tracks indirect branches anyways. Just swap which table you do lookups based on whether you’re in thumb mode or not.
- astrange 4y agox86 is worse because you can jump into the middle of instructions. In that case you just fall back to JIT though. And luckily AArch64 doesn't have Thumb.