aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Chambers <[email protected]>2021-10-16 13:46:40 +1300
committerAndrew Chambers <[email protected]>2021-10-16 13:46:40 +1300
commite426b0ba589b6780546e712354dfd6e9880a5ee5 (patch)
treec90e6fe03c06636571e2bf21e034019b1f53a975
parent75da6e3498f7ddc4f701fac77a3d8b9d6e96ca8d (diff)
Update readme.
-rw-r--r--README.md19
1 files changed, 14 insertions, 5 deletions
diff --git a/README.md b/README.md
index 1f960e5..4c2ec6e 100644
--- a/README.md
+++ b/README.md
@@ -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