Files
hakorune/docs/development/current/main/phases/phase-281/P0-COMPLETION.md

970 B
Raw Blame History

Phase 281 P0 Completion (2025-12-23)

Target:

  • Pattern7SplitScanの hand-rolled Frag を、body 分岐cond_matchについて compose::if_() に置換する。

Change Summary

  • Modified: src/mir/builder/control_flow/plan/normalizer.rs
    • body_bb の cond_match 分岐then/else→step joincompose::if_() に置換
    • header_bb の cond_loop 分岐、および step_bb の back-edgestep→headerは手組みのまま維持
    • EdgeArgsempty_args を明示的に維持implicit 省略をしない)

Verification

  • VM smoke: tools/smokes/v2/profiles/integration/apps/phase256_p0_split_vm.sh PASSexit=3
  • LLVM smoke: tools/smokes/v2/profiles/integration/apps/phase256_p0_split_llvm_exe.sh PASSexit=3

Notes

  • Phase 280 の “行動は最小” 方針に従い、差分は Pattern7 の body 分岐に限定した。
  • Pattern6early exitは Phase 281 P1 以降で段階移行する。