| Age | Commit message (Expand) | Author |
| 2025-10-21 | almost there... | WormHeamer |
| 2025-09-02 | begin work on tracking scope changes instead of merging | WormHeamer |
| 2025-08-31 | thoughts about arenas | WormHeamer |
| 2025-08-30 | separate IR graph parts of Proc into a Graph struct | WormHeamer |
| 2025-08-30 | fix clang unsequenced warning | WormHeamer |
| 2025-08-30 | old, new -> oldsz, newsz | WormHeamer |
| 2025-08-30 | add xar.h | WormHeamer |
| 2025-08-27 | add scratch arena to Proc | WormHeamer |
| 2025-08-22 | bitshift zero peepholes, recognize known (a = b) <> (a <> b) etc | WormHeamer |
| 2025-08-11 | replace separate type checks with non-NULL parse_expr twant | WormHeamer |
| 2025-08-10 | it's commutative, not communative | WormHeamer |
| 2025-08-10 | add idempotent optimizations | WormHeamer |
| 2025-08-10 | idempotent operation (& and |) peepholes | WormHeamer |
| 2025-08-10 | remove some debug printfs | WormHeamer |
| 2025-08-10 | add peephole op(op(X,Y) | op(Y,X), X) -> op(op(X, X), Y) | WormHeamer |
| 2025-08-10 | allow func foo T {} | WormHeamer |
| 2025-08-10 | specify that < and > are incompatible with = | WormHeamer |
| 2025-08-10 | reenable region peepholes | WormHeamer |
| 2025-08-10 | better error reporting around uninitialized values | WormHeamer |
| 2025-08-10 | fix peephole bug (communative(phi(a,b), phi(a,b)) =/= communative(a,b)) | WormHeamer |
| 2025-08-10 | add type-specifiers to let, N_UNINIT for uninitialized values | WormHeamer |
| 2025-08-10 | thinking about known-relations | WormHeamer |
| 2025-08-10 | remove some commented out code, unused var | WormHeamer |
| 2025-08-10 | convert node_op_* to just NodeMask #defines | WormHeamer |
| 2025-08-10 | separate peephole optimization out | WormHeamer |
| 2025-08-09 | add N_DEAD node type, and assert to help prevent use-after-free | WormHeamer |
| 2025-08-08 | slightly tweak node_set_in | WormHeamer |
| 2025-08-08 | attempt at optimizing regions after graph generation.... | WormHeamer |
| 2025-08-08 | rework some stuff, maybe bugfix, loosen associative typechecking | WormHeamer |
| 2025-08-08 | some comments &c | WormHeamer |
| 2025-08-07 | hopefully make multiple returns form sensible graphs | WormHeamer |
| 2025-08-07 | i thiiiink if statement peepholes work now? | WormHeamer |
| 2025-08-07 | fix region nodes being culled prematurely | WormHeamer |
| 2025-08-07 | preliminary peephole optimization of if statements | WormHeamer |
| 2025-08-07 | no_opt = 0 | WormHeamer |
| 2025-08-07 | add if statements | WormHeamer |
| 2025-08-05 | more goals | WormHeamer |
| 2025-08-05 | write some stuff about language goals | WormHeamer |
| 2025-08-05 | more convenience macros | WormHeamer |
| 2025-08-05 | fix params being pushed in reverse order | WormHeamer |
| 2025-08-05 | cmp(a - b, b - a) -> cmp(a, b) [dubious] | WormHeamer |
| 2025-08-05 | add a bunch of rules to simplify comparisons | WormHeamer |
| 2025-08-05 | test up | WormHeamer |
| 2025-08-05 | add N_NONE | WormHeamer |
| 2025-08-05 | better node_equiv for associative ops; not(cmp(a,b)) -> oppcmp(a,b) | WormHeamer |
| 2025-08-05 | convert divisions to right-shifts | WormHeamer |
| 2025-08-05 | correction! equality is communative, but not _associative_ | WormHeamer |
| 2025-08-05 | tragic realization: = and <> aren't communative at all | WormHeamer |
| 2025-08-05 | allow `proc main(a, b, c i64)` and such | WormHeamer |
| 2025-08-05 | convert a + -lit -> a - lit; some add/sub inequivalence identities | WormHeamer |