aboutsummaryrefslogtreecommitdiffhomepage
path: root/ir
Commit message (Expand)AuthorAgeFilesLines
...
* bitset: better implementation of bsiter() and stufflemon2025-12-162-2/+2
* mem2reg: fix obvious inefficiencylemon2025-12-161-16/+10
* create distinct interned string typelemon2025-12-153-10/+10
* move intern() to mem.clemon2025-12-151-1/+0
* regalloc: fix lifetime construction for nested loopslemon2025-12-151-17/+34
* only put dats can in .text now when emitting itlemon2025-12-142-3/+3
* various relocation related optimizationlemon2025-12-141-4/+6
* regalloc: fixbug with phi move of stack <- stacklemon2025-12-132-6/+5
* Add -O optimization flaglemon2025-12-131-2/+4
* fix position independent loads of function symbols.lemon2025-12-133-6/+6
* rename arraylength macro -> countoflemon2025-12-115-22/+22
* ir: bump MAXINSTRlemon2025-12-101-1/+1
* parallel move; implement reg<->stack swplemon2025-12-101-3/+18
* regalloc: optimize a little edge case betterlemon2025-12-101-4/+6
* misc fixeslemon2025-12-101-1/+1
* rega: change assert for spilled callee. it's ok if nspill==1lemon2025-12-091-1/+1
* abi: fix aggregate passed by regs 2nd reg offsetlemon2025-12-062-24/+28
* add command-line predefined macros (-D, -U)lemon2025-12-061-2/+0
* ir: float fold div/0lemon2025-12-051-4/+3
* regalloc: kill dead defs of physical regslemon2025-12-041-8/+16
* c: make tentative definitions worklemon2025-12-021-1/+1
* abi/isel: aggregate args in stack wiplemon2025-11-271-9/+31
* regalloc: skip dead phislemon2025-11-261-1/+4
* ir: simplify some occurrences of single-argument phislemon2025-11-242-8/+17
* ir.h: tweak mkintrin() definition to work with tinycclemon2025-11-241-1/+1
* ir: implement cvtu64f. and other bug fixeslemon2025-11-231-2/+35
* implement cvtfXu64 by lowering it in builderlemon2025-11-231-9/+46
* c: check actual reachability for non-void func may not return valuelemon2025-11-232-0/+22
* implement float varargs, and some other fixeslemon2025-11-233-7/+17
* make sure indirect function call pointer does not end up in clobber reglemon2025-11-221-2/+2
* ir: freeblk: clear predslemon2025-11-221-0/+2
* ir/ir.c: fix assert in mkcallarglemon2025-11-221-1/+1
* ir/dump: initialize out buffer staticallylemon2025-11-221-3/+1
* regalloc: merge overlapping fixed intervals betterlemon2025-11-221-1/+12
* irdump: print alloca # byteslemon2025-11-211-0/+3
* ir: implement dominator tree computationlemon2025-11-213-0/+40
* ir: barebones IR passes checked contractslemon2025-11-217-2/+26
* remove umullemon2025-11-213-3/+1
* change op names to match 285063eba44lemon2025-11-218-142/+142
* rename IR classes to reflect bitsizelemon2025-11-219-46/+46
* regalloc: assert nops aren't being usedlemon2025-11-211-0/+1
* ir/builder: peephole optimize branch with constant conditionallemon2025-11-211-4/+14
* mem2reg: implement marker algorithm from Braun et allemon2025-11-211-8/+40
* mem2reg: store pending phis implicitlylemon2025-11-211-12/+8
* ir: fix delpred when npred becomes 1lemon2025-11-211-2/+12
* ir/dump: print block predecessorslemon2025-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 possiblelemon2025-11-203-21/+53
* mem2reg: fix edgecase..lemon2025-11-191-1/+1