aboutsummaryrefslogtreecommitdiffhomepage
path: root/ir
Commit message (Expand)AuthorAgeFilesLines
* abi: fix aggregate passed by regs 2nd reg offset lemon2025-12-062-24/+28
* add command-line predefined macros (-D, -U) lemon2025-12-061-2/+0
* ir: float fold div/0 lemon2025-12-051-4/+3
* regalloc: kill dead defs of physical regs lemon2025-12-041-8/+16
* c: make tentative definitions work lemon2025-12-021-1/+1
* abi/isel: aggregate args in stack wip lemon2025-11-271-9/+31
* regalloc: skip dead phis lemon2025-11-261-1/+4
* ir: simplify some occurrences of single-argument phis lemon2025-11-242-8/+17
* ir.h: tweak mkintrin() definition to work with tinycc lemon2025-11-241-1/+1
* ir: implement cvtu64f. and other bug fixes lemon2025-11-231-2/+35
* implement cvtfXu64 by lowering it in builder lemon2025-11-231-9/+46
* c: check actual reachability for non-void func may not return value lemon2025-11-232-0/+22
* implement float varargs, and some other fixes lemon2025-11-233-7/+17
* make sure indirect function call pointer does not end up in clobber reg lemon2025-11-221-2/+2
* ir: freeblk: clear preds lemon2025-11-221-0/+2
* ir/ir.c: fix assert in mkcallarg lemon2025-11-221-1/+1
* ir/dump: initialize out buffer statically lemon2025-11-221-3/+1
* regalloc: merge overlapping fixed intervals better lemon2025-11-221-1/+12
* irdump: print alloca # bytes lemon2025-11-211-0/+3
* ir: implement dominator tree computation lemon2025-11-213-0/+40
* ir: barebones IR passes checked contracts lemon2025-11-217-2/+26
* remove umul lemon2025-11-213-3/+1
* change op names to match 285063eba44 lemon2025-11-218-142/+142
* rename IR classes to reflect bitsize lemon2025-11-219-46/+46
* regalloc: assert nops aren't being used lemon2025-11-211-0/+1
* ir/builder: peephole optimize branch with constant conditional lemon2025-11-211-4/+14
* mem2reg: implement marker algorithm from Braun et al lemon2025-11-211-8/+40
* mem2reg: store pending phis implicitly lemon2025-11-211-12/+8
* ir: fix delpred when npred becomes 1 lemon2025-11-211-2/+12
* ir/dump: print block predecessors lemon2025-11-211-2/+10
* cfg: sortrpo delete unreachable blocks with allocas by hoisting them to the e... lemon2025-11-211-6/+7
* isel: lower allocas a different way, such that stk address gets materialized ... lemon2025-11-201-1/+1
* ir: for easier debugging, keep ctype in dats, print as literal when possible lemon2025-11-203-21/+53
* mem2reg: fix edgecase.. lemon2025-11-191-1/+1
* debug output to stdout lemon2025-11-195-75/+79
* factor type stuff into type.h lemon2025-11-161-0/+14
* ir: 'trap' jump; c: __builtin_trap; lex: __has_builtin lemon2025-11-154-4/+13
* abi0: remove debugging leftover sortpo. but do number blks (free) lemon2025-11-141-1/+2
* preeliminary va_list support lemon2025-11-146-25/+68
* mem2reg: handle uses in branches in cmpuse() lemon2025-11-121-0/+2
* ir: fix addcon equality check.. lemon2025-11-121-1/+1
* revert b55005e5c08. correct fix was in c.c lemon2025-11-121-1/+0
* fold: clamp int to 32bits when required lemon2025-11-121-0/+1
* mem2reg: sort variable uses to match source order.. lemon2025-11-121-0/+21
* ir: free uses lemon2025-11-121-0/+4
* irdump: don't print fn ret type in non return branches lemon2025-11-121-1/+1
* implement argument passing in stack lemon2025-11-122-0/+2
* fixup! amd64: get rid of xinc/xdec. handle those at emit stage lemon2025-11-091-0/+1
* amd64: get rid of xinc/xdec. handle those at emit stage lemon2025-11-091-2/+0
* abi: fix unaligned & overflowing loads/stores, for small size/aligned structs... lemon2025-11-091-48/+84