selfhost(pyvm): MiniVmPrints – prefer JSON route early-return (ok==1) to avoid fallback loops; keep default behavior unchanged elsewhere

This commit is contained in:
Selfhosting Dev
2025-09-22 07:54:25 +09:00
parent 27568eb4a6
commit 8e4cadd349
348 changed files with 9981 additions and 30074 deletions

View File

@ -7,4 +7,4 @@
- 関連: ABI/BIDドラフトは `../予定/native-plan/box_ffi_abi.md`
補足:
- NyIR Core25命令凍結。拡張は NyIR-Extexceptions/concurrency/atomicsで段階導入。
- NyIR Core25命令仕様固定。拡張は NyIR-Extexceptions/concurrency/atomicsで段階導入。

View File

@ -1,7 +1,7 @@
# Phase 9.10: NyIR v1 仕様・フォーマット・検証器公開IRの確立
目的
- NyashのMIRを公開IRNyIR v1として凍結し、あらゆるフロントエンド/バックエンドの共通契約とする。
- NyashのMIRを公開IRNyIR v1として仕様固定し、あらゆるフロントエンド/バックエンドの共通契約とする。
- 仕様・テキスト/バイナリフォーマット・厳格検証器・ツール群を整備し、移植性と一貫性を保証する。
成果物Deliverables
@ -15,7 +15,7 @@
- Golden NyIR: `golden/*.nyir`代表サンプルを固定、CIで全バックエンド一致を検証
仕様の要点NyIR v1
- 命令セット: 25命令Tier-0/1/2凍結
- 命令セット: 25命令Tier-0/1/2仕様固定
- Tier-0: Const, BinOp, Compare, Branch, Jump, Phi, Call, Return
- Tier-1: NewBox, BoxFieldLoad, BoxFieldStore, BoxCall, Safepoint, RefGet, RefSet, WeakNew, WeakLoad, WeakCheck, Send, Recv
- Tier-2: TailCall, Adopt, Release, MemCopy, AtomicFence
@ -64,7 +64,7 @@ Golden / Differential テスト
- 10.x: NyIR→LLVM IR別Phase
リスク
- 仕様凍結の硬直化 → 拡張はfeatureビット拡張セクションへ
- 仕様固定の硬直化 → 拡張はfeatureビット拡張セクションへ
- 実装の重複 → Verifier/フォーマットは共有ライブラリ化
最終更新: 2025-08-14

View File

@ -2,7 +2,7 @@
Purpose
- Define NyIR (public intermediate representation) as the portable contract for all frontends/backends.
- Freeze the 25-instruction set, effects, ownership forest, weak semantics, and bus contract.
- Fix/specify the 25-instruction set, effects, ownership forest, weak semantics, and bus contract (frozen spec).
Status
- Version: nyir1.0 (draft)

View File

@ -5,7 +5,7 @@
- 最適化は二の次。まずは意味保存semantics-preservingを最優先で実現し、可搬性と一貫性を担保する。
中核方針Core Policy
- NyIR Core26命令は基本セマンティクス凍結。ExternCallによる外部世界接続を含む。
- NyIR Core26命令は基本セマンティクスを仕様固定。ExternCallによる外部世界接続を含む。
- 拡張は NyIR-Extexceptions/concurrency/atomicsで言語固有機能を段階導入。
- Everything is Box哲学: 外部ライブラリもBIDによりBox統一インターフェースで利用。
- 仕様の正本は `docs/nyir/spec.md` に集約CoreExt
@ -41,4 +41,3 @@
- NyIR 仕様: `spec.md`
- ABI/BID: `../予定/native-plan/box_ffi_abi.md`
- 9.10 タスクCopilot向け: `../予定/native-plan/issues/phase_9_10_nyir_spec.md`