nyash-codex
5f06d82ee5
Phase 25.1b: Step B完了(multi-carrier LoopForm対応)
Step B実装内容(fibonacci風マルチキャリアループ対応):
- LoopFormBox拡張:
- multi_count mode追加(build2メソッド)
- build_loop_multi_carrierメソッド実装(4-PHI, 5 blocks)
- 3変数(i, a, b)同時追跡のfibonacci構造生成
- LowerLoopMultiCarrierBox新規実装:
- 複数Local/Assign検出(2+変数)
- キャリア変数抽出
- mode="multi_count"でLoopOptsBox.build2呼び出し
- Fail-Fast: insufficient_carriersタグ出力
- FuncBodyBasicLowerBox拡張:
- _try_lower_loopに呼び出し導線追加
- 優先順位: sum_bc → multi_carrier → simple
- [funcs/basic:loop.multi_carrier]タグ出力
- Module export設定:
- lang/src/mir/hako_module.toml: sum_bc/multi_carrier追加
- nyash.toml: 対応するmodule path追加
既存mode完全保持(Rust Freeze遵守):
- count, sum_bcは一切変更なし
- multi_countは完全に独立して追加
- 既存テストへの影響ゼロ
Technical Details:
- PHI構造: 3-PHI (i, a, b) in Header
- Block構成: Preheader → Header → Body → Latch → Exit
- Fibonacci計算: t = a+b, a' = b, b' = t
- copy命令でLatchから Headerへ値を渡す
Task先生調査結果を反映:
- Rust層のパターンC(4-PHI, multi-carrier)に対応
- MirSchemaBox経由で型安全なMIR生成
Next: スモークテスト追加、既存テスト全通確認
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-16 03:11:49 +09:00
..
2025-11-06 15:41:52 +09:00
2025-08-21 00:41:26 +09:00
2025-08-21 00:41:26 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-09-03 01:37:38 +09:00
2025-09-04 11:34:15 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-08-21 00:41:26 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-09-02 09:26:09 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-11-06 15:41:52 +09:00
2025-09-08 03:30:35 +09:00
2025-09-08 03:30:35 +09:00
2025-11-06 15:41:52 +09:00
2025-11-14 15:18:14 +09:00
2025-11-14 15:18:14 +09:00
2025-11-13 16:40:58 +09:00
2025-11-13 16:40:58 +09:00
2025-11-14 20:19:00 +09:00
2025-11-06 15:41:52 +09:00
2025-11-15 05:42:32 +09:00
2025-11-15 05:42:32 +09:00
2025-11-15 22:32:13 +09:00
2025-11-16 03:11:49 +09:00
2025-11-15 05:42:32 +09:00
2025-11-15 22:32:13 +09:00
2025-09-11 00:21:11 +09:00
2025-11-04 16:33:04 +09:00
2025-11-06 15:41:52 +09:00