diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 19 |
1 files changed, 14 insertions, 5 deletions
@@ -2,7 +2,9 @@ A mini assembler for x86_64, written for fun and learning. -Goals: +Although mini, minias can assemble itself and most things compiled with the [cproc](https://github.com/michaelforney/cproc) C compiler. + +Project Goals: - A simple, tiny, fast implementation (in that order). - Assemble the output of [cproc](https://github.com/michaelforney/cproc)/[qbe](https://c9x.me/compile/) and [chibicc](https://github.com/rui314/chibicc). @@ -29,15 +31,22 @@ leg asm.peg > asm.peg.inc cc -O2 *.c -o minias ``` +# Roadmap + +- [x] Self host, feature complete for goals. +- [ ] Two pass jump relaxing. +- [ ] Immediate relaxing. +- [ ] Bonus features. + # Notes - Minias deliberately does not free data as it all is - freed by the OS at the end of execution. In the future - we one ould use an arena allocator for minias and still - avoid manual calls to free. + freed by the OS at the end of execution. Memory usage is still + quite light as it uses string and value interning. In the future + we could use an arena allocator for minias and still avoid manual calls to free. - Minias deliberately kept the peg grammar quite repetitive - and simple, please keep it this. + and simple, please keep it this way. - Our performance is quite fast, but with the current design it is limited by the parser, it would be interesting |
