c64-livecoding/wip-duuqnd/user-side-compiler
John Lorentzson 9e643e6c6d Add compiler middle stage
The compiler middle stage takes high level nodes and produces code in
an intermediate representation more closely resembling assembly code.

Optimizations and the tools for making those are also included. It's
significantly easier to optimize IR than syntax trees or assembly.

Several things need cleaning up, in particular there are things in
jigs.lisp that really should be documented tools, not
jigs (specifically the compilation setup and finalization).
2025-06-26 13:41:43 +02:00
..
middle Add compiler middle stage 2025-06-26 13:41:43 +02:00
asm-function.lisp Add stub ASM-FUNCTION class 2025-05-22 13:14:55 +02:00
bytesquash.lisp Add bytesquashing (turning instructions etc. into dead bytes) 2025-05-08 22:18:57 +02:00
example-0.c6l Move and rename syntax-example.txt 2025-05-22 13:14:55 +02:00
example-1.c6l Add two more code examples 2025-05-22 13:14:55 +02:00
example-2.c6l Add two more code examples 2025-05-22 13:14:55 +02:00
high-level.lisp Move NODE-CONDITIONAL definition to proper place 2025-06-19 15:07:23 +02:00
instruction-list.txt Replace the text assembly in high-level with instruction objects 2025-05-08 17:11:57 +02:00
instruction.lisp Add missing RELATIVE-MIXIN 2025-05-16 12:31:18 +02:00
label.lisp Add offset label class 2025-05-08 22:18:57 +02:00
package.lisp Add tool for quickly defining common PRINT-OBJECT methods 2025-06-26 12:44:43 +02:00
parser.lisp Reorder parsing so calls get properly parsed inside expressions 2025-06-21 21:04:26 +02:00
reference.lisp Add various transformation rules 2025-05-22 13:14:55 +02:00
s-print.lisp Add user-side compiler's parser 2025-05-22 13:14:55 +02:00
symbol-table.lisp Add symbol table 2025-05-16 21:00:57 +02:00
test-programs.lisp Add a USC test program 2025-05-16 10:39:03 +02:00
tokenizer.lisp Add PRINT-OBJECT method to TOKEN-NUMBER 2025-05-22 13:14:55 +02:00
toolkit.lisp Add tool for quickly defining common PRINT-OBJECT methods 2025-06-26 12:44:43 +02:00
transform.lisp Make TRANSFORM return OBJ if it's already TO-TYPE 2025-05-22 13:14:55 +02:00
user-side-compiler.asd Add compiler middle stage 2025-06-26 13:41:43 +02:00