neetche / qhasm

Bugfixed version for ARM11 of DJBs qhasm. nostack branch ditches the stack pointer.

Home Page:https://thomwiggers.nl/project/bachelors-thesis/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

QHASM

Modified version of qhasm for ARM11. This was done to support my implementation of Prøst on ARM11.

Notes and changes

  • Since the machine description is a shell script, and the Raspberry Pi on which I was running this was quite slow, it has a small modification to cache the output the machine description shell script. commit

  • it has a flag-setting 'and' and support for the = flag

  • Some syntax fixes in generated code

  • Some hacks to overcome register allocator limitations (>32 bit loads have restrictions the allocator doesn't understand) e.g. commit

  • Some bespoke modifications to have even wider stores.

There is also a 'stackless' branch, where the stack pointer is made available to the register allocator. This is the version used by my Prøst implementation. This modification does of course mean that you can't use the stack anymore, and need to store/load the stack pointer somewhere (as in this line).

If you have any further questions, feel free to ask me.

Cheers,

Thom Wiggers

About

Bugfixed version for ARM11 of DJBs qhasm. nostack branch ditches the stack pointer.

https://thomwiggers.nl/project/bachelors-thesis/


Languages

Language:Shell 58.0%Language:C 41.8%Language:C++ 0.2%Language:Makefile 0.0%