## 追加内容 - CLAUDE.md にドキュメント配置ルール(SSOT)セクション追加 - DOCS_LAYOUT.md (SSOT): 置き場所ルール定義 - phases/README.md: Phase ドキュメント説明 - design/README.md: 設計図ドキュメント説明 - investigations/README.md: 調査ログ説明 ## ルール概要 1. **Phase 文書** → phases/phase-<N>/ 2. **設計図** → design/ 3. **調査ログ** → investigations/ (結論を 10-Now/20-Decisions に反映) ## 導線 - CLAUDE.md で概要説明 - DOCS_LAYOUT.md で詳細定義(SSOT) - 各フォルダ README で参照方法 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
1.5 KiB
1.5 KiB
Self Current Task — Overview (main)
目的
- main ブランチで Core‑13(MIR13)前提の制御フローを整備し、LLVM/Cranelift(EXE)/VM に綺麗に降ろす土台を完成させる。
- 箱言語の既存命令セット(Branch/Jump/Phi 他)を活かし、continue/break を新命令なしで表現する。
前提と指針
- MIR13 前提(純化モードを含む)。
- ループは canonical 形(preheader → header → body → latch → header、exit は単一)。
- continue/break は分岐のみで表現(continue→ヘッダ/ラッチ、break→単一 exit)。
- Verifier(支配関係/SSA)緑を最優先。post‑terminated 後の emit 禁止、合流点を明確化。
スコープ外
- 新規 MIR 命令の追加。
- try/finally と continue/break の相互作用(次段)。
JoinIR / Selfhost 関連の入口
- 「JoinIR / Selfhost まわりで、まずどのドキュメントを読むべきか」は
docs/development/current/main/01-JoinIR-Selfhost-INDEX.mdを入口として使ってね。 - 「docs が増えて迷子になる」問題のための置き場所ルール(SSOT)は
docs/development/current/main/DOCS_LAYOUT.mdを参照してね。 - JoinIR 全体のアーキテクチャと箱の関係は
docs/development/current/main/joinir-architecture-overview.mdを SSOT として参照するよ。 - selfhost / .hako 側から JoinIR を使うときも、この JoinIR 設計を前提にして設計・実装する方針だよ。