Docs: mark PoC features as deprecated (unified ops are default)

- mir_typeop_poc / mir_refbarrier_unify_poc are no-op now; Builder emits
  TypeOp/WeakRef/Barrier by default; Optimizer normalizes legacy ops.
- Update CURRENT_TASK and architecture/proposal docs accordingly.
This commit is contained in:
Moe Charm
2025-08-26 06:41:30 +09:00
parent e16c64f6ae
commit f1a4a78379
3 changed files with 11 additions and 6 deletions

View File

@ -282,7 +282,7 @@ nyash --backend vm local_tests/and_or_truthy_vm.nyash # 期待: false,true,fals
- プリンタ拡張: `TypeOp/WeakRef/Barrier``--mir-verbose` に明示表示 - プリンタ拡張: `TypeOp/WeakRef/Barrier``--mir-verbose` に明示表示
- スナップショット整備: 代表ケースで flag ON/OFF のMIR差分固定化 - スナップショット整備: 代表ケースで flag ON/OFF のMIR差分固定化
- vm-stats差分: `weak_field_poc.nyash` 等で JSON 取得・比較(キー: TypeOp/WeakRef/Barrier - vm-stats差分: `weak_field_poc.nyash` 等で JSON 取得・比較(キー: TypeOp/WeakRef/Barrier
- : `mir_typeop_poc`TypeCheck/Cast→TypeOp`mir_refbarrier_unify_poc`Weak*/Barrier→統合 - : `mir_typeop_poc` / `mir_refbarrier_unify_poc` は非推奨no-op。Builderは統合命令TypeOp/WeakRef/Barrierを常に生成する。Optimizerに旧命令→統合命令の正規化パスあり。
2) Builder適用拡大短期〜中期 2) Builder適用拡大短期〜中期
- 言語 `is/as` 導線(最小でも擬似ノード)→ `emit_type_check/emit_cast` へ配線 - 言語 `is/as` 導線(最小でも擬似ノード)→ `emit_type_check/emit_cast` へ配線

View File

@ -17,8 +17,12 @@ Last Updated: 2025-08-23
- Remove legacy instructions permanently (kept behind feature flags) - Remove legacy instructions permanently (kept behind feature flags)
## Feature Flags (Cargo) ## Feature Flags (Cargo)
- `mir_typeop_poc`: enable TypeOp and map TypeCheck/Cast to it during build Note: 2025-08 Phase 9.78h 時点で統合命令はデフォルトとなり、以下のflagsは非推奨no-opだよ
- `mir_refbarrier_unify_poc`: enable WeakRef/Barrier unified ops and map legacy calls
- `mir_typeop_poc`: Builderは常に`TypeOp(Check/Cast)`を生成(旧`TypeCheck/Cast`は使わない)。
- `mir_refbarrier_unify_poc`: Builderは常に`WeakRef/Barrier`を生成(旧`WeakNew/WeakLoad/BarrierRead/Write`は使わない)。
互換性のため、Optimizerに旧命令→統合命令への正規化パスPass 0が入っているにゃ。
## Mapping (Current → PoC) ## Mapping (Current → PoC)
- TypeCheck { value, expected_type } → TypeOp { op: Check, value, type } (bool) - TypeCheck { value, expected_type } → TypeOp { op: Check, value, type } (bool)
@ -78,4 +82,3 @@ Last Updated: 2025-08-23
- Add builder mapping behind flags - Add builder mapping behind flags
- Add VM execution behind flags - Add VM execution behind flags
- Gate CI job to run PoC flags on Linux - Gate CI job to run PoC flags on Linux

View File

@ -87,8 +87,10 @@ Appendix: Rationale
--- ---
Feature Flags (Cargo) Feature Flags (Cargo)
- `mir_typeop_poc`: enable TypeOp PoC mapping (builder emits TypeOp instead of TypeCheck/Cast) - Deprecated flags (unified by default):
- `mir_refbarrier_unify_poc`: enable WeakRef/Barrier PoC mapping (builder emits unified ops) - `mir_typeop_poc`: no-op now. Builder always emits `TypeOp(Check/Cast)` instead of legacy `TypeCheck/Cast`
- `mir_refbarrier_unify_poc`: no-op now. Builder always emits `WeakRef/Barrier` instead of legacy `WeakNew/WeakLoad/BarrierRead/Write`
- Optimizer has a Pass 0 that normalizes any残存の旧命令 → 統合命令(安全ネット)。
Status (2025-08-23) Status (2025-08-23)
- Flags declared in `Cargo.toml` (off by default) - Flags declared in `Cargo.toml` (off by default)