summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Restrict subtraction zero peepholes to integer operandspr254-fixesCliff Click2026-09-2541-110/+245
| | | | | | 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.
* Add testsfuhsnn2026-09-2522-0/+616
|
* Extend and backport SubNode peepholefuhsnn2026-09-2523-64/+357
|
* edge zoomingCliff Click2026-09-245-20/+155
|
* Bunch better layout optionsCliff Click2026-09-2416-88/+309
|
* Keyboard shortcutsCliff Click2026-09-2369-142/+876
| | | | | Fast forward/reverse, pick-a-frame. Shorter type names.
* int fallbacks for int opsCliff Click2026-09-2280-128/+245
| | | | all chapters, a little sharper for int ops
* Graph cleanupCliff Click2026-09-2247-42/+135
| | | | Phis stay with regions, stop sinks to bottom,
* Tidy up scope displayCliff Click2026-09-2232-75/+274
|
* Add shared graph viewer to all chaptersCliff Click2026-09-22715-14968/+3639
|
* Graph viewer on ch4 and25Cliff Click2026-09-2219-404/+540
|
* Switch over to the new ELK driverCliff Click2026-09-2114-120/+361
| | | | Interact between compiler & browser now hooks several nbew places.
* Switch over to the ELK rendererCliff Click2026-09-2114-400/+7177
|
* Change protocol between compiler and browserCliff Click2026-09-215-33/+179
|
* Define a new graph interaction APICliff Click2026-09-2110-10/+345
|
* move the graph visualizer into shared codeCliff Click2026-09-2160-16155/+1270
|
* Final reg-alloc across chapters cleanupCliff Click2026-09-20131-1127/+2135
|
* Split self-conflict phis once at a loop headCliff Click2026-09-2033-183/+942
| | | | if this works, saves a copy-per-loop. If it fails, next round split as normal
* Popular use grouping for RegAllocCliff Click2026-09-2051-345/+1536
| | | | Fix arm BL encodings; ADD/SUB with reversed sign.
* Forward-port allocator bug fixes and test support through ch25Cliff Click2026-09-2065-425/+2070
| | | | Improved spilling
* Add back copy coaleascing in ch21Cliff Click2026-09-2035-1069/+1888
| | | | Minor arm encoding fix.
* Missed fileCliff Click2026-09-201-71/+106
|
* Ch 20 Reg AllocCliff Click2026-09-2013-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 normalizationCliff Click2026-09-205-3/+72
|
* Unify GCM across chaptersCliff Click2026-09-20113-1182/+1627
| | | | | | Remove the _anti field. Remove the isPinned() call. Add a copyEmpty call.
* Unify mixed-return checking and resultsCliff Click2026-09-19189-570/+1381
| | | | Unify dominator caching.
* Fix ch21 MulIX86 encodingCliff Click2026-09-192-6/+53
|
* Use isDead() instead of checking null inputsCliff Click2026-09-1921-34/+57
|
* Fixed st8 on arm/risc evalsCliff Click2026-09-1916-11/+182
|
* debug printers no longer call self-optimizing accessorsCliff Click2026-09-19141-144/+2272
|
* Handle r/w <clinit> sectionsCliff Click2026-09-198-32/+159
|
* AI skills updateCliff Click2026-09-192-267/+169
|
* Tighter recursive-struct testCliff Click2026-09-195-2/+65
|
* Handle double-negation preserving not-null knowledgeCliff Click2026-09-1940-25/+1185
|
* Backport string escapes and many op-assignCliff Click2026-09-1725-73/+1300
|
* Parser fix OR tempsCliff Click2026-09-175-4/+86
|
* Backport x86 Not encodingCliff Click2026-09-179-41/+225
|
* x86 mul reg reg encoding fixCliff Click2026-09-1715-117/+249
|
* Back point cmpmem encodingCliff Click2026-09-1710-14/+144
|
* Get makefiles and fuzzer testing uniform across chaptersCliff Click2026-09-1765-197/+1042
|
* Fix phi wideningCliff Click2026-09-172-6/+4
|
* up timeoutsCliff Click2026-09-166-5/+8
| | | | add deps on dominance crawls
* Update FuzzerWrap.javaCliff Click2026-09-141-1/+1
|
* Handle dying escapenodeCliff Click2026-09-142-1/+19
|
* Update FuzzerWrap.javaCliff Click2026-09-141-1/+1
|
* Update FuzzerWrap.javaCliff Click2026-09-141-1/+2
|
* Fix parser lifetime bugCliff Click2026-09-142-9/+5
|
* int-only ops force inputs to be int-onlyCliff Click2026-09-1411-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 removalCliff Click2026-09-144-9/+18
| | | | | Fix keep/unkeep balance. Always fuzz small.
* Do BulkMemPhi splits one by oneCliff Click2026-09-133-113/+41
|