aboutsummaryrefslogtreecommitdiffhomepage
path: root/ir/optmem.c
Commit message (Collapse)AuthorAgeFilesLines
* ir: move some filluses() to ir.c, rename optmem.c -> mem2reg.clemon2025-12-191-345/+0
|
* bitset: better implementation of bsiter() and stufflemon2025-12-161-1/+1
| | | | Also changed the type to size_t for portability
* mem2reg: fix obvious inefficiencylemon2025-12-161-16/+10
| | | | | | | deltrivialphis() was iterating over every variably instead of just looking at the variable being examined. And I'd been wondering why mem2reg was such a bottleneck for a testcase like sqlite3 amalgamation.. it's easy to miss the forest for the trees.
* rename arraylength macro -> countoflemon2025-12-111-1/+1
|
* ir: barebones IR passes checked contractslemon2025-11-211-1/+2
|
* change op names to match 285063eba44lemon2025-11-211-21/+21
|
* rename IR classes to reflect bitsizelemon2025-11-211-7/+7
|
* mem2reg: implement marker algorithm from Braun et allemon2025-11-211-8/+40
|
* mem2reg: store pending phis implicitlylemon2025-11-211-12/+8
|
* mem2reg: fix edgecase..lemon2025-11-191-1/+1
|
* debug output to stdoutlemon2025-11-191-1/+1
|
* mem2reg: handle uses in branches in cmpuse()lemon2025-11-121-0/+2
|
* mem2reg: sort variable uses to match source order..lemon2025-11-121-0/+21
|
* amd64: fix aggregate abi stuff;; ir: fold, peephole optimizing constructorslemon2025-11-051-0/+14
|
* mem2reg ssa construction silly optimizationlemon2025-10-241-1/+1
|
* Organize source files into directorieslemon2025-10-191-0/+285