refactor(joinir): make jump_args layout explicit (Phase 256)
This commit is contained in:
@ -10,6 +10,12 @@
|
||||
- Call/MethodCall は effects + typing の論点が増えるため、pure とは分離して Phase 141+ で段階投入する。
|
||||
- out-of-scope は `Ok(None)` で既存経路へフォールバックし、既定挙動不変を維持する(strict は “close-but-unsupported” のみ fail-fast)。
|
||||
|
||||
2025‑12‑20
|
||||
- Phase 256 の詰まり(Jump/continuation/params/jump_args)を「暗黙 ABI の分裂」と捉え、契約を `JoinIR ABI/Contract` として明文化していく(SSOT を 1 箇所へ集約)。
|
||||
- continuation の識別は ID を SSOT(String は debug/serialize 用)とし、`join_func_N` の legacy は alias で隔離する。
|
||||
- `jump_args` は意味論の SSOT なので、最終的には MIR terminator operand に統合して DCE/CFG から自然に追える形へ収束させる(Phase 256 を緑に戻した後に段階導入)。
|
||||
- 上記の収束先(north star)を “Join-Explicit CFG Construction” と命名し、段階移行(案1→案2→必要なら案3)で進める。
|
||||
|
||||
2025‑09‑08
|
||||
- ループ制御は既存命令(Branch/Jump/Phi)で表現し、新命令は導入しない。
|
||||
- Builder に loop_ctx({head, exit})を導入し、continue/break を分岐で降ろす。
|
||||
|
||||
Reference in New Issue
Block a user