feat: Phase 15.5 llvmlite革命達成!真の統一Call基盤完成

6種類Callee完全統一でデリゲート方式→真の統一実装へ革命的移行。
モックルート回避確立でセルフホスティング基盤強化完了。

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Selfhosting Dev
2025-09-24 02:11:59 +09:00
parent 81211c22ad
commit 28c721d82b
5 changed files with 188 additions and 6 deletions

View File

@ -19,6 +19,7 @@ from instructions.safepoint import lower_safepoint
from instructions.barrier import lower_barrier
from instructions.loopform import lower_while_loopform
from instructions.controlflow.while_ import lower_while_regular
from instructions.mir_call import lower_mir_call # New unified handler
def lower_instruction(owner, builder: ir.IRBuilder, inst: Dict[str, Any], func: ir.Function):
@ -81,6 +82,12 @@ def lower_instruction(owner, builder: ir.IRBuilder, inst: Dict[str, Any], func:
meta={"cmp_kind": cmp_kind} if cmp_kind else None,
ctx=getattr(owner, 'ctx', None))
elif op == "mir_call":
# Unified MIR Call handling
mir_call = inst.get("mir_call", {})
dst = inst.get("dst")
lower_mir_call(owner, builder, mir_call, dst, vmap_ctx, owner.resolver)
elif op == "call":
func_name = inst.get("func")
args = inst.get("args", [])