aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Expand)AuthorAgeFilesLines
* c: move codegen code after decl parser lemon2023-06-261-748/+748
* frontend: add static assert lemon2023-06-262-2/+38
* regalloc: remove unused variable lemon2023-06-261-5/+0
* backend: fix mem2reg & regalloc lemon2023-06-267-61/+206
* frontend: add labels and goto statement lemon2023-06-262-8/+120
* fix some warnings lemon2023-06-253-11/+2
* lex: use a circular buffer cache for pre-pre-processed chars lemon2023-06-252-56/+67
* regalloc: fix temporary rename clobbering return register with multiple returns lemon2023-06-251-2/+13
* regalloc add sources lemon2023-06-251-1/+3
* abi0: fix agg return by pointer not updating arg count lemon2023-06-241-0/+1
* fix regalloc thinking some ins are dead by adding ins.keep lemon2023-06-243-3/+8
* update todo.txt lemon2023-06-241-1/+1
* ir: dattab shouldn't reset for every function lemon2023-06-241-1/+1
* amd64/emit: more float fixes lemon2023-06-241-21/+24
* backend: don't mixup float and int temps lemon2023-06-244-11/+29
* fix replcuses lemon2023-06-243-19/+19
* backend: fix regalloc to work with more complex dataflow lemon2023-06-2412-225/+748
* change RMORE -> RADDR; use RXXX (RNONE) for special args,also undef lemon2023-06-229-74/+73
* Add .editorconfig lemon2023-06-221-0/+14
* misc fix lemon2023-06-223-18/+55
* mem2reg: implement ssa construction; this breaks regalloc right now lemon2023-06-219-159/+300
* explicitly store predecessors in each block lemon2023-06-218-115/+135
* amd64: fix aggregate return in regs lemon2023-06-201-3/+3
* amd64: conform to ABI for varargs func calls lemon2023-06-202-1/+9
* elf: fix emitting small dats lemon2023-06-201-3/+3
* fix type of undeclared functions lemon2023-06-201-0/+1
* improve codegen for div a little (bikeshedding) lemon2023-06-202-1/+7
* amd64/emit: ensure stack is 16-byte aligned lemon2023-06-203-10/+34
* add basic mem2reg lemon2023-06-208-14/+221
* fix regression wiht ret args not being fixed lemon2023-06-201-2/+7
* fix out of bounds read lemon2023-06-201-0/+1
* regalloc: fix bug in spilling code lemon2023-06-201-7/+24
* another emit() errata lemon2023-06-201-1/+1
* fix regression lemon2023-06-201-4/+4
* don't lower params and args to registers in abi0 lemon2023-06-206-57/+101
* fix cls logic for comparison instrs lemon2023-06-206-17/+23
* errata lemon2023-06-201-2/+2
* elf: fix type mismatch from bfore lemon2023-06-191-3/+3
* regalloc: alloc extra memory for alloc map lemon2023-06-191-1/+1
* backend: compile comparison instrs and branches lemon2023-06-198-40/+370
* amd64/emit: fix mov(zx/sx)w lemon2023-06-191-6/+6
* oops lemon2023-06-191-1/+1
* frontend: disallow non-local decls in for initializer lemon2023-06-191-6/+14
* frontend: rename parser -> lexer and document c.c lemon2023-06-193-233/+251
* frontend: separate compiler & lexer lemon2023-06-197-381/+386
* frontend: add for, break, continue statements lemon2023-06-193-75/+202
* fix isel & emit for sym constants lemon2023-06-193-9/+11
* add %y symbol printing lemon2023-06-192-4/+14
* move ctype to common.h lemon2023-06-192-11/+7
* don't try to compile when debugging IR lemon2023-06-193-8/+13