phase29z(p1): handle explicit drop in rc insertion
This commit is contained in:
@ -2,8 +2,8 @@
|
||||
|
||||
## Current Focus: Phase 29z P0(RC insertion minimal)
|
||||
|
||||
**2025-12-27: Phase 29z P0 完了** ✅
|
||||
- `src/mir/passes/rc_insertion.rs`: `Store` 上書きの最小 release 挿入を実装(単一block・安全ガード)
|
||||
**2025-12-27: Phase 29z P1 完了** ✅
|
||||
- `src/mir/passes/rc_insertion.rs`: `Store` 上書き + `Store null`(explicit drop)の最小 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`
|
||||
|
||||
@ -57,8 +57,8 @@ Related:
|
||||
- 入口: `docs/development/current/main/phases/phase-29y/README.md`
|
||||
- 次: Phase 29z(RC insertion minimal)または Phase 29x(De-Rust runtime)候補
|
||||
|
||||
- **Phase 29z(✅ P0 COMPLETE, implementation-minimal): RC insertion minimal**
|
||||
- 成果: `MirInstruction::Store` の上書きで `ReleaseStrong` を挿入する最小pass(単一block・安全ガード付き)
|
||||
- **Phase 29z(✅ P1 COMPLETE, implementation-minimal): RC insertion minimal**
|
||||
- 成果: `MirInstruction::Store` の上書き + `Store null`(explicit drop)で `ReleaseStrong` を挿入(単一block・安全ガード付き)
|
||||
- ガード: Cargo feature `rc-insertion-minimal`(既定OFF、env var 新設なし)
|
||||
- 検証: quick 154/154 PASS 維持 + `rc_insertion_selfcheck`(opt-in)
|
||||
- 入口: `docs/development/current/main/phases/phase-29z/README.md`
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# Phase 29z: RC insertion minimal(Phase 29y follow-up)
|
||||
|
||||
Status: P0 Complete
|
||||
Status: P1 Complete
|
||||
Scope: Phase 29y の SSOT(RC insertion / ABI / observability)を前提に、**RC insertion pass を最小動作**まで進める。
|
||||
|
||||
Entry:
|
||||
@ -13,3 +13,7 @@ Opt-in:
|
||||
Verification:
|
||||
- `cargo build --release` / `./tools/smokes/v2/run.sh --profile quick`
|
||||
- `cargo run --bin rc_insertion_selfcheck --features rc-insertion-minimal`
|
||||
|
||||
Progress:
|
||||
- P0: overwrite release(Store 上書き)
|
||||
- P1: explicit drop(Store null)を最小対応
|
||||
|
||||
Reference in New Issue
Block a user