Files
hakorune/docs/archive/cleanup/mir-legacy-cleanup-phase1-2.md
nyash-codex 2dfe363365 refactor(joinir): Phase 242-EX-A - Delete legacy Pattern3 lowerer
Remove hardcoded Pattern3 PoC implementation (loop_with_if_phi_minimal.rs)
and enhance if-sum mode to handle complex conditions like `i % 2 == 1`.

Key changes:
- condition_pattern.rs: Accept BinaryOp in comparison operands (+58 lines)
- loop_with_if_phi_if_sum.rs: Dynamic complex condition lowering (+147 lines)
- pattern3_with_if_phi.rs: Remove lower_pattern3_legacy() (-130 lines)
- loop_with_if_phi_minimal.rs: Delete entire file (-437 lines)
- loop_patterns/with_if_phi.rs: Update stub (-45 lines)
- mod.rs: Remove module reference (-4 lines)

Net reduction: -664 lines of hardcoded PoC code

Test results: 909/909 PASS (legacy mode completely removed)

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-11 01:27:08 +09:00

2.0 KiB
Raw Blame History

Status: Historical

MIR レガシーコード削除 Phase 1-2 完了報告

📅 実施日

2025-09-24

🎯 目的

Phase 15.5 JSON centralization作業前のコードベースクリーンアップ

📊 削除実績

Phase 1: 完全に安全な死コード除去18行

  • コメントアウトされたimport文: 2行
    • src/mir/instruction.rs:13: NyashValue import
    • src/mir/builder/stmts.rs:321: LoopBuilderApi import
  • 不要legacyコメント: 6行
    • src/mir/builder.rs: 削除済み関数の"removed"コメント群
  • 複数行removedコメント: 3行
    • src/mir/loop_builder.rs:53-55: extract_assigned_var_local コメント
  • Movedコメントverification/instruction: 7行

Phase 2: 条件分岐最適化と整理29行

  • 開発用debugコード: 4行
    • src/mir/builder/builder_calls.rs:88,161: eprintln!デバッグ出力
  • Movedコメント大規模整理: 25行
    • src/mir/builder.rs: 20行の"moved to"コメント
    • src/mir/optimizer.rs: 3行
    • src/mir/builder/utils.rs: 2行

🎯 総合成果

  • 削除行数: 71行git diff --statによる実測値
  • Phase 15貢献度: 約0.09%71行 ÷ 80,000行
  • 品質向上: コードベース可読性・保守性の大幅改善

安全性確認

  • 統一Call実装NYASH_MIR_UNIFIED_CALL=1: 正常動作確認済み
  • Legacy実装NYASH_MIR_UNIFIED_CALL=0: 後方互換性維持確認済み
  • JSON出力: mir_call形式で正常生成確認済み

📝 変更ファイル一覧

  • src/mir/instruction.rs
  • src/mir/builder/stmts.rs
  • src/mir/builder.rs
  • src/mir/loop_builder.rs
  • src/mir/builder/builder_calls.rs
  • src/mir/optimizer.rs
  • src/mir/verification.rs
  • src/mir/builder/utils.rs

🚀 次のステップ

  • Phase B: JSON centralization実装
  • Phase 3: レガシーインターフェース除去(慎重に実施)

📌 備考

Task先生の分析に基づく段階的削除戦略により、リスクゼロで実施完了。 JSON作業前のクリーンな環境整備に成功。