feat(joinir): Phase 256 P1.5 - JoinInst::Select 命令サポート(根治)
## 変更内容 Task 1(既完了): boundary パラメータを bridge 経路全体に伝播 - conversion_pipeline.rs, bridge.rs(複数箇所), meta.rs, routing_legacy_binding.rs, execute_box.rs Task 2-A~2-D: Select 命令の実装 - 2-A: MirInstruction::Select バリアント追加 - 2-B: JoinIR Select → MIR Select 直接変換(branch+phi展開廃止) - 2-C: ⭐ joinir_id_remapper に Select remap case(ValueId変換の根治) - 2-D: value_collector に Select case ## 根本原因解決 Pattern7 の JoinInst::Select が JoinIR→MIR で未対応 → ValueId(1002) → ValueId(57) のリマップが行われず → "use of undefined value ValueId(57)" エラー ## 現在地 ✅ cargo check: 0 errors ⏳ Pattern7/6 VM test(Task 2-E LLVM実装後) 🧠 Generated with Claude Code Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@ -369,7 +369,8 @@ impl NormalizationExecuteBox {
|
||||
bridge_module.phase = crate::mir::join_ir::JoinIrPhase::Structured;
|
||||
}
|
||||
let empty_meta: JoinFuncMetaMap = BTreeMap::new();
|
||||
let mir_module = bridge_joinir_to_mir_with_meta(&bridge_module, &empty_meta)
|
||||
// Phase 256 P1.5: Pass boundary to bridge for ValueId remapping
|
||||
let mir_module = bridge_joinir_to_mir_with_meta(&bridge_module, &empty_meta, Some(&boundary))
|
||||
.map_err(|e| format!("[normalization/execute] MIR conversion failed: {:?}", e))?;
|
||||
|
||||
// Merge with boundary
|
||||
|
||||
Reference in New Issue
Block a user