| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Graph cleanup | Cliff Click | 2026-09-22 | 2 | -2/+4 |
| | | | | | Phis stay with regions, stop sinks to bottom, | ||||
| * | Tidy up scope display | Cliff Click | 2026-09-22 | 1 | -1/+1 |
| | | |||||
| * | Add shared graph viewer to all chapters | Cliff Click | 2026-09-22 | 29 | -386/+26 |
| | | |||||
| * | Graph viewer on ch4 and25 | Cliff Click | 2026-09-22 | 4 | -370/+18 |
| | | |||||
| * | Switch over to the new ELK driver | Cliff Click | 2026-09-21 | 6 | -74/+170 |
| | | | | | Interact between compiler & browser now hooks several nbew places. | ||||
| * | Switch over to the ELK renderer | Cliff Click | 2026-09-21 | 1 | -337/+4 |
| | | |||||
| * | Change protocol between compiler and browser | Cliff Click | 2026-09-21 | 2 | -20/+34 |
| | | |||||
| * | Define a new graph interaction API | Cliff Click | 2026-09-21 | 1 | -0/+74 |
| | | |||||
| * | move the graph visualizer into shared code | Cliff Click | 2026-09-21 | 2 | -50/+122 |
| | | |||||
| * | Final reg-alloc across chapters cleanup | Cliff Click | 2026-09-20 | 81 | -30/+1417 |
| | | |||||
| * | Split self-conflict phis once at a loop head | Cliff Click | 2026-09-20 | 3 | -1/+31 |
| | | | | | if this works, saves a copy-per-loop. If it fails, next round split as normal | ||||
| * | Popular use grouping for RegAlloc | Cliff Click | 2026-09-20 | 8 | -66/+210 |
| | | | | | Fix arm BL encodings; ADD/SUB with reversed sign. | ||||
| * | Forward-port allocator bug fixes and test support through ch25 | Cliff Click | 2026-09-20 | 13 | -31/+268 |
| | | | | | Improved spilling | ||||
| * | Add back copy coaleascing in ch21 | Cliff Click | 2026-09-20 | 3 | -3/+34 |
| | | | | | Minor arm encoding fix. | ||||
| * | Backport TypeFunPtr normalization | Cliff Click | 2026-09-20 | 1 | -0/+8 |
| | | |||||
| * | Unify GCM across chapters | Cliff Click | 2026-09-20 | 10 | -186/+117 |
| | | | | | | | Remove the _anti field. Remove the isPinned() call. Add a copyEmpty call. | ||||
| * | Unify mixed-return checking and results | Cliff Click | 2026-09-19 | 15 | -50/+92 |
| | | | | | Unify dominator caching. | ||||
| * | Use isDead() instead of checking null inputs | Cliff Click | 2026-09-19 | 1 | -8/+8 |
| | | |||||
| * | Fixed st8 on arm/risc evals | Cliff Click | 2026-09-19 | 3 | -2/+30 |
| | | |||||
| * | debug printers no longer call self-optimizing accessors | Cliff Click | 2026-09-19 | 20 | -25/+272 |
| | | |||||
| * | Handle r/w <clinit> sections | Cliff Click | 2026-09-19 | 7 | -32/+144 |
| | | |||||
| * | Tighter recursive-struct test | Cliff Click | 2026-09-19 | 1 | -0/+21 |
| | | |||||
| * | Handle double-negation preserving not-null knowledge | Cliff Click | 2026-09-19 | 2 | -2/+68 |
| | | |||||
| * | Backport string escapes and many op-assign | Cliff Click | 2026-09-17 | 2 | -7/+113 |
| | | |||||
| * | Fix phi widening | Cliff Click | 2026-09-17 | 2 | -6/+4 |
| | | |||||
| * | up timeouts | Cliff Click | 2026-09-16 | 6 | -5/+8 |
| | | | | | add deps on dominance crawls | ||||
| * | Update FuzzerWrap.java | Cliff Click | 2026-09-14 | 1 | -1/+1 |
| | | |||||
| * | Handle dying escapenode | Cliff Click | 2026-09-14 | 1 | -1/+3 |
| | | |||||
| * | Update FuzzerWrap.java | Cliff Click | 2026-09-14 | 1 | -1/+1 |
| | | |||||
| * | Update FuzzerWrap.java | Cliff Click | 2026-09-14 | 1 | -1/+2 |
| | | |||||
| * | Fix parser lifetime bug | Cliff Click | 2026-09-14 | 2 | -9/+5 |
| | | |||||
| * | int-only ops force inputs to be int-only | Cliff Click | 2026-09-14 | 11 | -19/+52 |
| | | | | | | Lest an int-only op, having lifted result types to int, get a zero-fold (e.g. X^0) to their mode-not-set input and have types fall. Handle idepth-cache overflow | ||||
| * | Refinement on guard removal | Cliff Click | 2026-09-14 | 3 | -8/+17 |
| | | | | | | Fix keep/unkeep balance. Always fuzz small. | ||||
| * | Do BulkMemPhi splits one by one | Cliff Click | 2026-09-13 | 3 | -113/+41 |
| | | |||||
| * | Resolve numeric needs more Opto | Cliff Click | 2026-09-13 | 9 | -16/+32 |
| | | | | | | | Missing Arith mode picks high or low according to pre/post Opto FunPtr improves sig return based on Opto return type. Minus with missing mode is optimistic, same as Arith | ||||
| * | A few missing addDeps | Cliff Click | 2026-09-13 | 12 | -75/+160 |
| | | | | | | | | IterPeeps cnt does not reset. Faster schedulableIses, reuses ID Map. Test in Iter work if not GVN table ScheduableUses peeks through folding/dead Call/Fun | ||||
| * | Major bugfix around unscheduable graphs | Cliff Click | 2026-09-12 | 7 | -29/+268 |
| | | | | | | | | | Robust assert about all data ops are schedulable. Utiltiies for several places domionator-like stuff is used. Removing a Phi with matching null/not-null values is now more robust; removes a major source if scheduling misalignment. Big comments about what gets covered by a null check, or not. Permanent list of fuzzer seeds that used to fail | ||||
| * | More robust on broken inputs | Cliff Click | 2026-09-11 | 7 | -7/+37 |
| | | |||||
| * | Fix OR of 0 | Cliff Click | 2026-09-11 | 1 | -1/+1 |
| | | | | | Allowed only if the replacement does not fall, will be lifted by OR to an TypeInteger | ||||
| * | Removing a phi-of-guard, remove nested guards | Cliff Click | 2026-09-11 | 2 | -3/+9 |
| | | |||||
| * | Update LoadNode.java | Cliff Click | 2026-09-11 | 1 | -2/+1 |
| | | |||||
| * | typo | Cliff Click | 2026-09-11 | 1 | -1/+1 |
| | | |||||
| * | Optional reset Types so Fuzzer can work. | Cliff Click | 2026-09-11 | 10 | -41/+47 |
| | | | | | FunNodes never GVN. | ||||
| * | More code coverage cleanup | Cliff Click | 2026-09-10 | 4 | -99/+62 |
| | | |||||
| * | Cleanup coverage issues | Cliff Click | 2026-09-10 | 10 | -254/+158 |
| | | | | | A lot of tests become asserts; general cleanup in MemOps and PhiOps | ||||
| * | Merge branch 'main' of https://github.com/SeaOfNodes/Simple | Cliff Click | 2026-09-09 | 1 | -3/+3 |
| |\ | |||||
| | * | Fix stale copy-pasted comment on BoolNode's phiCon call (#249) | Symious | 2026-09-09 | 1 | -3/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The three comment lines above `AddNode.phiCon(this, ...)` in BoolNode were copy-pasted from MulNode and never adapted: they use `*` as the operator and describe the rotated shape `(x * (phi cons)) * con`. For BoolNode neither is right. The operator is a compare, and in chapters 6-9 `rotate` is hard-coded `false`, so the rotated shape is never matched; the shapes actually handled are `(phi cons) cmp con` and `(phi cons) cmp (phi cons)`. Reword the comment accordingly, and in chapters 6-9 add a line noting why rotate is off. Chapters 10-25 pass `this instanceof EQ`, so no such claim is made there. Comment-only change; no code is touched. Co-authored-by: Claude Opus 5 <noreply@anthropic.com> | ||||
| * | | Remove a bunch of dead or unused code | Cliff Click | 2026-09-09 | 12 | -162/+35 |
| |/ | |||||
| * | Fix some lattice bugs | Cliff Click | 2026-09-09 | 3 | -22/+37 |
| | | |||||
| * | Add some Type test cases | Cliff Click | 2026-08-21 | 2 | -2/+16 |
| | | |||||
