summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorP. J. McDermott <pj@pehjota.net>2017-02-08 09:02:36 (EST)
committer P. J. McDermott <pj@pehjota.net>2017-02-08 09:02:36 (EST)
commitd003293b6d214e31126b1dde47c755004688ce63 (patch)
tree4fae133b54f2a122efd5ffda8910018c033f85f1
parent4349a6531ab32cedfe3e0c765a361db49f4efa23 (diff)
downloadeggshell-d003293b6d214e31126b1dde47c755004688ce63.zip
eggshell-d003293b6d214e31126b1dde47c755004688ce63.tar.gz
eggshell-d003293b6d214e31126b1dde47c755004688ce63.tar.bz2
TODO: Add more ctxsw optimization notes
-rw-r--r--TODO9
1 files changed, 6 insertions, 3 deletions
diff --git a/TODO b/TODO
index 45d522d..10f8bda 100644
--- a/TODO
+++ b/TODO
@@ -8,13 +8,16 @@
Example: array `arr` and index `_ind`: stored as `__arr_arr__x___ind`
Example: array `arr_` and index `_ind`: stored as `__arr_arr___x___ind`
* Consider ctxsw optimization:
- - In backend, prefix parameter names (in assignments and expansions) with TU
- and function
+ - In backend, prefix static parameter names (in assignments and expansions)
+ and static function names (in definitions and calls) with TU and function
+ - Replace non-static parameter names with eval to prefix names with SP
+ - Symbol table needed to track global vs local and static vs non-static
+ symbols
- In eshrt, remove variable updating code
- Caveat: breaks variable parameter names in eval
- If arrays are implemented, would anyone still need variable parameter
names?
- - Maybe add -fno-mangle-vars option to eshtrans to disable prefixing and
+ - Maybe add -fno-mangle-symbols option to eshtrans to disable prefixing and
insert a flag in generated code to enable eshrt to update variables
* Build system
- Pre-built toolchain in source tree