| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Backport lazy memory splits to ch10, split into ch10a and bch10ab | Cliff Click | 2026-09-29 | 30 | -1262/+1625 |
| | | |||||
| * | Reverse edges | Cliff Click | 2026-09-29 | 18 | -340/+340 |
| | | |||||
| * | Split ch10 | Cliff Click | 2026-09-29 | 173 | -2698/+12091 |
| | | | | | Basic memory introduction in 10a, then precise aliases in 10b. | ||||
| * | Extend smaller-width C results to full width | Cliff Click | 2026-09-28 | 49 | -73/+1027 |
| | | |||||
| * | Backport FunPtr | Cliff Click | 2026-09-28 | 45 | -96/+446 |
| | | | | | | Helps keep functions alive via ptr only (no calls). A few RISC 5 TFP encoding fixes. | ||||
| * | Support extern C ver direct updates | Cliff Click | 2026-09-28 | 35 | -90/+469 |
| | | | | | FIx minor RISC encodings. | ||||
| * | Check un-init not-null constructor fields | Cliff Click | 2026-09-28 | 57 | -174/+318 |
| | | | | | | | | | Propagate BOT inputs; Arith, Load. CallEnd inlining, the FUnPtr dies early. Load asserts when loading against uninit not-null field. Keep not-nill state for storage class. Clean up Node.peep as constant. | ||||
| * | minor fixes | Cliff Click | 2026-09-27 | 9 | -41/+16 |
| | | | | | | Fix CI build Backport ch 23 fix to ch 22. | ||||
| * | Remove excessive spaces in test code (#256) | Hsiang-Ying Fu | 2026-09-27 | 6 | -25/+50 |
| | | | | Co-authored-by: Cliff Click <cliffc@acm.org> | ||||
| * | Use consistent implementation for Node::peephole() (#255) | Hsiang-Ying Fu | 2026-09-27 | 1 | -3/+3 |
| | | |||||
| * | Remove -disablePeephole | Cliff Click | 2026-09-27 | 179 | -1825/+248 |
| | | |||||
| * | bug fix widen | Cliff Click | 2026-09-26 | 24 | -181/+210 |
| | | | | | Failed lattice law tests mixing constants and have wide type ints; or mixing wide ints and constant arrays. | ||||
| * | Extend and backport SubNode peephole (#254) | Hsiang-Ying Fu | 2026-09-25 | 64 | -64/+1108 |
| | | | | | | | | | | | | | | | | * Extend and backport SubNode peephole * Add tests * Restrict subtraction zero peepholes to integer operands Require resolved integer mode in chapter 25 so zero subtraction preserves floating-point signed zero. Keep nonnumeric operands in the graph for subtraction diagnostics. Add signed-zero coverage from chapter 12 and null-subtraction diagnostics from chapter 22. Confirmed the regressions fail on the original PR. Full Make suites pass in chapters 4-25 (5462 tests), including fresh chapter 25 sys.o compilation. --------- Co-authored-by: Cliff Click <cliffc@acm.org> | ||||
| * | Skills updates | Cliff Click | 2026-09-25 | 2 | -0/+160 |
| | | |||||
| * | Merge branch 'main' of https://github.com/SeaOfNodes/Simple | Cliff Click | 2026-09-25 | 6 | -6/+6 |
| |\ | |||||
| | * | Update test result for sysV (#253) | Hsiang-Ying Fu | 2026-09-25 | 6 | -6/+6 |
| | | | |||||
| | * | Fix ch25 pom.xml (#252) | Hsiang-Ying Fu | 2026-09-25 | 1 | -2/+2 |
| | | | |||||
| * | | Bunch more animation work | Cliff Click | 2026-09-25 | 70 | -120/+951 |
| |/ | |||||
| * | edge zooming | Cliff Click | 2026-09-24 | 5 | -20/+155 |
| | | |||||
| * | Bunch better layout options | Cliff Click | 2026-09-24 | 16 | -88/+309 |
| | | |||||
| * | Keyboard shortcuts | Cliff Click | 2026-09-23 | 69 | -142/+876 |
| | | | | | | Fast forward/reverse, pick-a-frame. Shorter type names. | ||||
| * | int fallbacks for int ops | Cliff Click | 2026-09-22 | 80 | -128/+245 |
| | | | | | all chapters, a little sharper for int ops | ||||
| * | Graph cleanup | Cliff Click | 2026-09-22 | 47 | -42/+135 |
| | | | | | Phis stay with regions, stop sinks to bottom, | ||||
| * | Tidy up scope display | Cliff Click | 2026-09-22 | 32 | -75/+274 |
| | | |||||
| * | Add shared graph viewer to all chapters | Cliff Click | 2026-09-22 | 715 | -14968/+3639 |
| | | |||||
| * | Graph viewer on ch4 and25 | Cliff Click | 2026-09-22 | 19 | -404/+540 |
| | | |||||
| * | Switch over to the new ELK driver | Cliff Click | 2026-09-21 | 14 | -120/+361 |
| | | | | | Interact between compiler & browser now hooks several nbew places. | ||||
| * | Switch over to the ELK renderer | Cliff Click | 2026-09-21 | 14 | -400/+7177 |
| | | |||||
| * | Change protocol between compiler and browser | Cliff Click | 2026-09-21 | 5 | -33/+179 |
| | | |||||
| * | Define a new graph interaction API | Cliff Click | 2026-09-21 | 10 | -10/+345 |
| | | |||||
| * | move the graph visualizer into shared code | Cliff Click | 2026-09-21 | 60 | -16155/+1270 |
| | | |||||
| * | Final reg-alloc across chapters cleanup | Cliff Click | 2026-09-20 | 131 | -1127/+2135 |
| | | |||||
| * | Split self-conflict phis once at a loop head | Cliff Click | 2026-09-20 | 33 | -183/+942 |
| | | | | | 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 | 51 | -345/+1536 |
| | | | | | Fix arm BL encodings; ADD/SUB with reversed sign. | ||||
| * | Forward-port allocator bug fixes and test support through ch25 | Cliff Click | 2026-09-20 | 65 | -425/+2070 |
| | | | | | Improved spilling | ||||
| * | Add back copy coaleascing in ch21 | Cliff Click | 2026-09-20 | 35 | -1069/+1888 |
| | | | | | Minor arm encoding fix. | ||||
| * | Missed file | Cliff Click | 2026-09-20 | 1 | -71/+106 |
| | | |||||
| * | Ch 20 Reg Alloc | Cliff Click | 2026-09-20 | 13 | -106/+537 |
| | | | | | | | | Includes all bug fixes from later chapters, so its at least correct. Skips a lot of improvement heuristics, these get added in later chapters. Includes spill-stats, to more easily track improvements. Includes targeted tests. | ||||
| * | Backport TypeFunPtr normalization | Cliff Click | 2026-09-20 | 5 | -3/+72 |
| | | |||||
| * | Unify GCM across chapters | Cliff Click | 2026-09-20 | 113 | -1182/+1627 |
| | | | | | | | Remove the _anti field. Remove the isPinned() call. Add a copyEmpty call. | ||||
| * | Unify mixed-return checking and results | Cliff Click | 2026-09-19 | 189 | -570/+1381 |
| | | | | | Unify dominator caching. | ||||
| * | Fix ch21 MulIX86 encoding | Cliff Click | 2026-09-19 | 2 | -6/+53 |
| | | |||||
| * | Use isDead() instead of checking null inputs | Cliff Click | 2026-09-19 | 21 | -34/+57 |
| | | |||||
| * | Fixed st8 on arm/risc evals | Cliff Click | 2026-09-19 | 16 | -11/+182 |
| | | |||||
| * | debug printers no longer call self-optimizing accessors | Cliff Click | 2026-09-19 | 141 | -144/+2272 |
| | | |||||
| * | Handle r/w <clinit> sections | Cliff Click | 2026-09-19 | 8 | -32/+159 |
| | | |||||
| * | AI skills update | Cliff Click | 2026-09-19 | 2 | -267/+169 |
| | | |||||
| * | Tighter recursive-struct test | Cliff Click | 2026-09-19 | 5 | -2/+65 |
| | | |||||
| * | Handle double-negation preserving not-null knowledge | Cliff Click | 2026-09-19 | 40 | -25/+1185 |
| | | |||||
| * | Backport string escapes and many op-assign | Cliff Click | 2026-09-17 | 25 | -73/+1300 |
| | | |||||
