On Monday, 3 July 2017 at 23:16:07 UTC, solidstate1991 wrote:
While I currently don't have an ARM based hardware that would
be easy to develop on, I'm planning to use QEMU to emulate some
form of ARMv6 CPU, as it'll be the main target, as it's still
being used in devices like the Raspberry Pi. ARMv5 is being
considered if it doesn't need a lot of work, although I don't
see a lot of reason behind doing it besides of the possibility
of enabling the development of homebrew GBA, NDS, GP32, etc
stuff.
As I became unemployed recently, I have a lot more time for
development, so time now isn't an issue. Or at least until I
find a job, which is hard due to my state as a college student,
which I'm on the verge of losing it.
I would accept your input on various things, like if I should
do some adjustments to the in-line assembly stuff, whether I
should care about thumb (reduced size instruction set, not
available on some newer targets) or not, etc. Got my hands on
some official reference manual, it wouldn't hurt if I could
research other ones too.
Far be it from be to discourage such efforts.
But you should be aware that writing a backend for dmd from
scratch is not an easy task.
It will take time alot of time. Even if you have previous
experience with codegen.
And it is unlikely to yield satisfactory results.
Most arm implementation are not as forgiving as contemporary x86
processors when it comes to bad register scheduling and the like.
What exactly is your motivation for doing this ?