2025-09-08 11:35:30 +09:00
|
|
|
|
# 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 の相互作用(次段)。
|
|
|
|
|
|
|
2025-12-07 21:02:20 +09:00
|
|
|
|
## JoinIR / Selfhost 関連の入口
|
|
|
|
|
|
|
2025-12-11 00:21:29 +09:00
|
|
|
|
- 「JoinIR / Selfhost まわりで、まずどのドキュメントを読むべきか」は
|
|
|
|
|
|
`docs/development/current/main/01-JoinIR-Selfhost-INDEX.md` を入口として使ってね。
|
2025-12-14 18:27:24 +09:00
|
|
|
|
- 「docs が増えて迷子になる」問題のための置き場所ルール(SSOT)は
|
|
|
|
|
|
`docs/development/current/main/DOCS_LAYOUT.md` を参照してね。
|
2025-12-07 21:02:20 +09:00
|
|
|
|
- JoinIR 全体のアーキテクチャと箱の関係は
|
2025-12-11 00:21:29 +09:00
|
|
|
|
`docs/development/current/main/joinir-architecture-overview.md` を SSOT として参照するよ。
|
|
|
|
|
|
- selfhost / .hako 側から JoinIR を使うときも、この JoinIR 設計を前提にして設計・実装する方針だよ。
|