Phase 61: structural if-sum+break lowering (dev-only)

This commit is contained in:
nyash-codex
2025-12-12 22:15:41 +09:00
parent 6aba138950
commit acb6720d9b
13 changed files with 1140 additions and 39 deletions

View File

@ -230,7 +230,7 @@
14. **Phase 57-OWNERSHIP-ANALYZER-DEV完了✅ 2025-12-12**: OwnershipPlan を生成する解析箱の実装
- `OwnershipAnalyzer` を追加し、ネスト含む reads/writes/owned を集計→ carriers/relay/captures を plan 化。
- 既存 fixturespattern2/3, jsonparser, selfhostで plan の回帰テストを追加。
- 設計詳細: [phase57-ownership-analyzer.md](docs/development/current/main/phase57-ownership-analyzer.md)
- 設計詳細: [PHASE_57_SUMMARY.md](docs/development/current/main/PHASE_57_SUMMARY.md)
15. **Phase 58-OWNERSHIP-PLUMB-P2-DEV完了✅ 2025-12-12**: P2 conversion helper (dev-only)
- `plan_to_p2_inputs()` でOwnershipPlan→P2LoweringInputs変換
- Fail-Fast: relay_writes 未対応Phase 60で対応予定
@ -242,10 +242,19 @@
- Fail-Fast: relay_writes 未対応Phase 60で対応予定
- 4つのユニットテスト + 2つのintegrationテスト
- 設計詳細: [PHASE_59_SUMMARY.md](docs/development/current/main/PHASE_59_SUMMARY.md)
17. **Phase 60-OWNERSHIP-RELAY-IMPL次のフォーカス候補**: Relay support for P2/P3
- relay_writes対応実装
- P2/P3両方の変換器に統合
18. JoinIR Verify / 最適化まわり
17. **Phase 60-OWNERSHIP-RELAY-IMPL完了✅ 2025-12-12**: Relay support for P2/P3 (dev-only)
- `plan_to_p2_inputs_with_relay()` / `plan_to_p3_inputs_with_relay()` を追加単一hopのみ許可、multi-hopはFail-Fast
- P2 Break lowering を dev-only で ownership-with-relay に接続し、legacy 経路との VM 出力一致を比較テストで固定。
- shape_guard の selfhost family 分離を最小更新selfhost shapes 優先時の混線を遮断)。
18. **Phase 61-IFSUM-BREAK-STRUCTURAL完了✅ 2025-12-12**: if-sum + break を別箱で構造的に導入dev-only
- Break(P2) から P3 固有ロジックby-nameを撤去し、責務混線を解消。
- 新箱 `if_sum_break_pattern` を追加し、`return Var+Var` を含む if-sum+break を構造判定→Fail-Fast で lowering。
- OwnershipPlan を param order/carriers の SSOT に使い、carriers!=return vars の混線を遮断。
- 詳細: [PHASE_61_SUMMARY.md](docs/development/current/main/PHASE_61_SUMMARY.md)
19. **Phase 62-OWNERSHIP-P3-ROUTE-DESIGN次のフォーカス候補**: P3 本番ルートへ OwnershipPlan を渡す設計
- MIR→JoinIR の `pattern3_with_if_phi.rs` は OwnershipPlan を受け取らないため、AST-based ownership 解析の接続点を設計する。
- dev-only で段階接続し、legacy と stdout/exit 一致の比較で回帰を固定(既定挙動は不変)。
20. JoinIR Verify / 最適化まわり
- すでに PHI/ValueId 契約は debug ビルドで検証しているので、
必要なら SSADFA や軽い最適化Loop invariant / Strength reductionを検討。