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

@ -238,15 +238,16 @@ NYASH_DISABLE_PLUGINS=1 ./target/release/nyash --backend llvm program.nyash
- `NYASH_USING_PROFILE=dev|smoke|debug` でプロファイル化
- または `--using-mode=dev` CLIフラグで統合
## 📝 Update (2025-09-24) 🚀 MIR Call命令統一Phase 3.1-3.2完了!
## 📝 Update (2025-09-24) 🚀 MIR Call命令統一Phase 3.1-3.3完了!
-**Phase 1-2完了** - MIR基盤構築と統一メソッド実装
- **定義外部化**: `src/mir/definitions/call_unified.rs`297行
- **統一メソッド**: `emit_unified_call()`便利メソッド3種実装済み
- **環境変数制御**: `NYASH_MIR_UNIFIED_CALL=1`で切り替え可能
-**Phase 3.1-3.2完了** - 基本関数の統一Call移行成功
-**Phase 3.1-3.3完了** - 基本関数とBoxCallの統一Call移行成功
- **indirect call**: `build_indirect_call_expression``CallTarget::Value`使用
- **print関数**: `call_global print()`として統一ExternCall→Callee::Global
- **function call**: `build_function_call``CallTarget::Global`使用
- **BoxCall統一**: `emit_box_or_plugin_call``CallTarget::Method`使用
- **実行確認**: `env NYASH_MIR_UNIFIED_CALL=1 ./target/release/nyash --dump-mir`で動作確認済み
- 📊 **マスタープラン進捗** - 4つの実行器で完全統一へ
- **削減見込み**: 7,372行 → 5,468行**26%削減**