summaryrefslogtreecommitdiff
path: root/chapter12/src/main/java/com
Commit message (Collapse)AuthorAgeFilesLines
* Major overhaul debug printingCliff Click2026-09-172-213/+365
|
* Fix stale copy-pasted comment on BoolNode's phiCon call (#249)Symious2026-09-091-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>
* Backport renaming of `Type::_print()` in Chapter13 to earlier chapters (#244)Hsiang-Ying Fu2026-07-039-17/+17
|
* Move `addUse()` return statement to `keep()` (#243)Hsiang-Ying Fu2026-07-031-6/+3
|
* Cleanup (#162)RobertObkircher2025-02-163-7/+6
| | | | | | | | | * remove unused method lazyFRef * remove unused method copyF(Node, Node) * make TypeMemPtr constants final * make ConstantNode value final
* New evaluator, more Compiler Driver cleanupCliff Click2025-01-151-1/+1
| | | | | | | | | | More compiler driver cleanup: Stop only has Return inputs, never an expr. Drop extra lexical scope. Linker table moves to CodeGen. Replace evaluator with a simpler design; I was unable to get the current design to work with the other changes. Updates to old eval; proper idoms; forced type checks; extensions for Fun, Return, Call, CallEnd. Accessor find next control to execute. Accessor for deciding when its ok to optimize a Function/Return, Call/CallEnd, Stop, ScopeMin (merge) Add local scheduling pass. IRPrinter uses SB instead of StringBuilder Spelling SubF comment
* Fix commentCliff Click2025-01-151-1/+1
|
* remove peephole from ProjNode::idealize that is already handled by computeRobert Obkircher2024-09-161-10/+7
|
* move x-x check up frontCliff Click2024-09-131-3/+4
|
* x-x==0Cliff Click2024-09-132-5/+10
| | | | | | Move x-x==0 to compute. Add x/1 ==> x All chapters
* Fix GCM of CSE storesCliff Click2024-09-124-11/+7
| | | | | Stop CSE of stores. Backports to ch11,12,13,14
* Backport empty statement fixCliff Click2024-09-071-0/+1
| | | | | Split Ch13 tests from Chapter12Test.java Handle forward refs never defined.
* Unify type parsingCliff Click2024-08-051-48/+22
|
* Fuzzer nit picksCliff Click2024-08-052-1/+2
|
* auto-widen on assignCliff Click2024-08-051-5/+5
|
* missing null checkCliff Click2024-08-051-1/+1
|
* A series of minor fuzzer bugsCliff Click2024-08-054-14/+25
|
* Better filter on Load cloneCliff Click2024-08-051-3/+7
|
* Float bugsCliff Click2024-08-0515-22/+76
| | | | | | | | Fix bug infinite loop finding. Fix inf loops before printing graph. Missing float unary negate . Generator makes float exprs Fix missing dep in LCA finding
* Clean up floatsCliff Click2024-08-057-53/+48
| | | | Better pattern in the compiler.
* a little FP cleanupCliff Click2024-08-052-7/+6
|
* more fp bugfixesCliff Click2024-08-052-3/+3
|
* minor FP bugsCliff Click2024-08-055-17/+12
| | | | | Fix bug AddF+0, SubF+0 Fix bug flipping EQ sides.
* Add Float supportCliff Click2024-08-0510-37/+421
| | | | Parsing float constants; float +-*/, auto-widening float expressions.
* #92 chapter 12 start from chapter 11dibyendumajumdar2024-08-0542-0/+5232