From 300d2a9c3672acacc8bdd8d5370a424651a00571 Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Sun, 18 Oct 2026 22:09:58 -0700 Subject: Cleanup & backport The phase rework, made new phases explicit and add them to the CodeGen driver. Fix the flag-spilling on X86 and ARM. Fix the GCM conservative anti-deps and backport. --- chapter10/README.md | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'chapter10') diff --git a/chapter10/README.md b/chapter10/README.md index e55d1057..db72c4cb 100644 --- a/chapter10/README.md +++ b/chapter10/README.md @@ -385,6 +385,14 @@ The single memory chain is correct but conservative. A store to `y` can prevent forwarding an earlier store to `x`, even when the objects are identical. This is a missed optimization and it motivates the next chapter. +## Checking the optimized graph + +Memory accesses can expose type errors only after their pointer types settle. +The post-parse pipeline therefore adds `TypeCheck` after iterative peepholes. +It walks the surviving graph and reports node errors; dead control has already +been removed. Here `StopNode.iterate()` runs both steps. Chapter 18 introduces +the `CodeGen` driver and explicit phase entry points. + ## Executing the graph The evaluator includes a small late scheduler. A load must execute before a -- cgit v1.2.3