From 5592a0661d397932b5bb012f785ceb7cac31f6d4 Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Sun, 13 Sep 2026 13:41:05 -0700 Subject: A few missing addDeps 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 --- skills/chapter25-codex-notes.md | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'skills') diff --git a/skills/chapter25-codex-notes.md b/skills/chapter25-codex-notes.md index 4753d2e9..6ebb84be 100644 --- a/skills/chapter25-codex-notes.md +++ b/skills/chapter25-codex-notes.md @@ -61,6 +61,10 @@ Consequences: - The parser carries one ordinary bulk-memory value. Precise alias partitioning belongs to the graph and optimizer, not nested parser Scope state. - Alias `#1` is bulk/unresolved memory. A precise alias is `#N`, with `N != 1`. +- Precise memory shapes always use `MemPhiNode`; bulk memory slices use + `BulkMemPhiNode`. Plain `PhiNode`s do not represent memory. If a memory bug + seems to require generic Phi memory state, suspect a representation/worklist + bug instead. - `MemMerge` inputs are disjoint slices whose union covers all memory. Its default input means all aliases not explicitly split out. - `BulkMemPhi` carries `All - exclusions`; parallel `MemPhiNode`s carry the -- cgit v1.2.3