aboutsummaryrefslogtreecommitdiffhomepage
path: root/todo.txt
diff options
context:
space:
mode:
authorlemon <lsof@mailbox.org>2023-06-12 22:39:26 +0200
committerlemon <lsof@mailbox.org>2023-06-12 22:41:51 +0200
commit7ff4c64c10e4a4c6acccdd8369f36f146139fbe5 (patch)
treee9cafcf5eeed148d77cb5cd7956cd5f7c7a212ae /todo.txt
parentafa1cec439c370111cfd2c32d9fbb5c88acd6c7a (diff)
add todo.txt
Diffstat (limited to 'todo.txt')
-rw-r--r--todo.txt11
1 files changed, 11 insertions, 0 deletions
diff --git a/todo.txt b/todo.txt
new file mode 100644
index 0000000..fdb7cf0
--- /dev/null
+++ b/todo.txt
@@ -0,0 +1,11 @@
+Things to finish before moving onto compiler optimizations, C extensions, other nice features
+
+- regalloc: fix phi-eliminating moves
+- regalloc: implement spilling
+- frontend: try to repr vars as ssa temps until they have their address taken or are mutated (to reduce no. of mem instrs)??
+- ir: implement mem2reg
+- backend: implement ELF object output (ELF header, relocations, etc)
+- backend: figure out how and when to lower intrinsincs (currently just structcopy..)
+- frontend: finish C impl: initializers, preprocessor (#include, fn-like macros, etc), forward declarations, for, switch, break-continue, goto
+
+at some point add another backend like arm64 to make sure the non target specific stuff is generic enough..