phase29aa(p1): rc insertion plan/apply refactor
This commit is contained in:
@ -1,18 +1,17 @@
|
||||
# Self Current Task — Now (main)
|
||||
|
||||
## Current Focus: Phase 29aa P0(RC insertion safety expansion, design-first)
|
||||
## Current Focus: Phase 29aa P1(RcPlan 2-stage, meaning-preserving)
|
||||
|
||||
**2025-12-27: Phase 29aa P0 Ready(design-first)**
|
||||
- 目的: rc_insertion を CFG-aware に拡張する前提設計を固定(誤release防止)
|
||||
- 入口: `docs/development/current/main/phases/phase-29aa/P0-RC_INSERTION_CFG_AWARE_DESIGN-INSTRUCTIONS.md`
|
||||
- 次: Phase 29aa P1(RcPlan 2-stage, meaning-preserving)※実装反映待ち
|
||||
**2025-12-27: Phase 29aa P1 完了** ✅
|
||||
- 目的: rc_insertion を RcPlan に閉じ込め、Plan→Apply 2-stage 化(挙動不変)
|
||||
- 入口: `docs/development/current/main/phases/phase-29aa/README.md`
|
||||
|
||||
**2025-12-27: Phase 29z P2 closeout** ✅
|
||||
- `src/mir/passes/rc_insertion.rs`: `Store` 上書き + `Store null`(explicit drop)+ Return終端cleanup の最小 release 挿入(単一block・安全ガード)
|
||||
- 既定OFF: Cargo feature `rc-insertion-minimal`(env var 新設なし)
|
||||
- 検証: quick 154/154 PASS 維持 + `cargo run --bin rc_insertion_selfcheck --features rc-insertion-minimal`
|
||||
- 入口: `docs/development/current/main/phases/phase-29z/README.md`
|
||||
- 次: Phase 29aa P0(CFG-aware design)
|
||||
- 次: Phase 29aa P2(CFG-aware の最小ターゲット選定)
|
||||
|
||||
**2025-12-27: Phase 29y P0 完了** ✅
|
||||
- docs-first SSOT finalized(ABI/RC insertion/Observability)
|
||||
@ -20,7 +19,7 @@
|
||||
- pilot 実装(Phase 29y.1)の入口を固定
|
||||
- Next steps(実装タスク3つ)を明文化
|
||||
- 入口: `docs/development/current/main/phases/phase-29y/README.md`
|
||||
- **Next**: Phase 29z(RC insertion minimal)または Phase 29x(De-Rust runtime)候補
|
||||
- **Next**: Phase 29aa(CFG-aware RC insertion)または Phase 29x(De-Rust runtime)候補
|
||||
|
||||
**2025-12-27: Phase 287 完了** ✅
|
||||
- P0-P9完了(big files modularization / facade pattern / SSOT establishment / closeout)
|
||||
|
||||
@ -68,9 +68,9 @@ 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(P0 design-first): RC insertion safety expansion(CFG-aware)**
|
||||
- 目的: rc_insertion を CFG-aware に拡張する前提設計を固定(誤release防止)
|
||||
- P0最小成果: RcPlan(block/edge)構造、PHI/loop/early-exit 危険パターン整理、release安全条件の契約
|
||||
- **Phase 29aa(P1 COMPLETE): RC insertion safety expansion(CFG-aware)**
|
||||
- 進捗: P1 ✅ 完了(RcPlan 導入+Plan→Apply 2-stage化、挙動不変)
|
||||
- 次(P2): CFG-aware の最小ターゲットを 1 個に絞る(例: edge cleanup を Return 以外でどう扱うか)
|
||||
- 入口: `docs/development/current/main/phases/phase-29aa/README.md`
|
||||
|
||||
- **Phase 29x(planned, post self-host): De-Rust runtime for LLVM execution**
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# Phase 29aa: RC insertion safety expansion(CFG-aware design)
|
||||
|
||||
Status: P0 Ready (design-first)
|
||||
Status: P1 Complete (RcPlan 2-stage)
|
||||
Scope: Phase 29z の単一block限定実装から、誤releaseを起こさない形で CFG-aware に拡張するための設計を固める。
|
||||
|
||||
Entry:
|
||||
@ -20,4 +20,4 @@ Deliverables (P0):
|
||||
|
||||
Progress:
|
||||
- P0: CFG-aware 設計の固定(RcPlan/危険パターン/安全条件の契約)
|
||||
- P1: rc_insertion を RcPlan の Plan→Apply 2-stage へ分離(挙動不変、実装待ち)
|
||||
- P1: rc_insertion を RcPlan の Plan→Apply 2-stage へ分離(挙動不変)
|
||||
|
||||
@ -24,5 +24,5 @@ Next Phase:
|
||||
|
||||
Residuals(分類):
|
||||
- Design: CFG-aware RcPlan(block/edge 単位)の契約と Fail-Fast 方針、PHI/loop/early-exit の危険パターン整理、Branch/Jump 終端 cleanup 設計
|
||||
- Implementation: rc_insertion の解析→挿入(二段階)分離、null 伝搬の精度向上(copy以外の伝搬パターン追加)、Return 終端 cleanup の RcPlan 経由化
|
||||
- Implementation: null 伝搬の精度向上(copy以外の伝搬パターン追加)
|
||||
- Verification: quick 154/154 PASS 維持(既定OFF)+ `rc_insertion_selfcheck` opt-in 確認
|
||||
|
||||
Reference in New Issue
Block a user