From 61a3384bd23968e35d8fbd9973032f3f5161f4b1 Mon Sep 17 00:00:00 2001 From: tomoaki Date: Sun, 28 Dec 2025 06:32:46 +0900 Subject: [PATCH] docs(phase29aa): mark P8 complete --- docs/development/current/main/10-Now.md | 8 ++++++-- docs/development/current/main/30-Backlog.md | 4 ++-- docs/development/current/main/phases/phase-29aa/README.md | 2 +- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/docs/development/current/main/10-Now.md b/docs/development/current/main/10-Now.md index a6f89aef..082c6ec2 100644 --- a/docs/development/current/main/10-Now.md +++ b/docs/development/current/main/10-Now.md @@ -1,6 +1,6 @@ # Self Current Task — Now (main) -## Current Focus: Phase 29aa P8(Null propagation across CFG; Copy-only) +## Current Focus: Phase 29aa Complete(P0-P8 全完了) **2025-12-28: Phase 29aa P5 完了** ✅ - 目的: Return block が複数 predecessor のとき、incoming state が完全一致する場合のみ ReturnCleanup を成立させる @@ -25,9 +25,13 @@ - Selfcheck: Case 3.11(values が昇順であることを検証)PASS - 検証: quick 154/154 PASS / selfcheck PASS -**2025-12-28: Phase 29aa P8 進行中** +**2025-12-28: Phase 29aa P8 完了** ✅ - 目的: CFG を跨いだ null 伝播(Copy-only)で explicit drop(Store null)の精度を上げる - 入口: `docs/development/current/main/phases/phase-29aa/README.md` +- Contract: single-predecessor Jump-chain のみ null_values 伝播(multi-pred Return は合流しない) +- Non-goals: edge_args 経由の null 伝播(ValueId 同一性だけでは追えない) +- Selfcheck: Case 3.12(null 伝播で ReturnCleanup なし)PASS +- 検証: quick 154/154 PASS / selfcheck PASS **2025-12-27: Phase 29aa P4 完了** ✅ - 目的: Jump の直列チェーン(単一 predecessor)を通して ReturnCleanup を成立させる(cleanup は Return block のみ) diff --git a/docs/development/current/main/30-Backlog.md b/docs/development/current/main/30-Backlog.md index 0b0c6b83..e90a6bec 100644 --- a/docs/development/current/main/30-Backlog.md +++ b/docs/development/current/main/30-Backlog.md @@ -68,14 +68,14 @@ Related: - 入口: `docs/development/current/main/phases/phase-29z/README.md` - 指示書: `docs/development/current/main/phases/phase-29z/P0-RC_INSERTION_MINIMAL-INSTRUCTIONS.md` -- **Phase 29aa(P7 COMPLETE / P8 planned): RC insertion safety expansion(CFG-aware)** +- **Phase 29aa(✅ COMPLETE): RC insertion safety expansion(CFG-aware)** - 進捗: P2 ✅ 完了(Jump/Branch 終端で cleanup を入れない契約の SSOT 化) - 進捗: P3 ✅ 完了(Jump→Return single-predecessor state 伝播) - 進捗: P4 ✅ 完了(Jump-chain propagation to Return) - 進捗: P5 ✅ 完了(Multi-predecessor Return join: state完全一致のみ) - 進捗: P6 ✅ 完了(Multi-predecessor Return join: intersection) - 進捗: P7 ✅ 完了(Deterministic ReleaseStrong ordering) - - 次: P8(Null propagation across basic blocks; Copy-only first) + - 進捗: P8 ✅ 完了(Null propagation across CFG; Copy-only) - 入口: `docs/development/current/main/phases/phase-29aa/README.md` - **Phase 29x(planned, post self-host): De-Rust runtime for LLVM execution** diff --git a/docs/development/current/main/phases/phase-29aa/README.md b/docs/development/current/main/phases/phase-29aa/README.md index c1c2f40a..9eeee3e4 100644 --- a/docs/development/current/main/phases/phase-29aa/README.md +++ b/docs/development/current/main/phases/phase-29aa/README.md @@ -1,6 +1,6 @@ # Phase 29aa: RC insertion safety expansion(CFG-aware design) -Status: P8 Ready (Null propagation across CFG; Copy-only) +Status: P8 Complete (Null propagation across CFG; Copy-only) Scope: Phase 29z の単一block限定実装から、誤releaseを起こさない形で CFG-aware に拡張するための設計を固める。 Entry: