feat(llvm): Phase 87 - LLVM exe line SSOT + integration smoke
Established single pipeline for .hako → executable generation.
SSOT: tools/build_llvm.sh
- Standard procedure: build_llvm.sh input.hako -o output_exe
- Prerequisites: llvm-config-18, llvmlite, LLVM features enabled
- Pipeline: .hako → MIR → LLVM IR → .o → executable
New files:
- docs: phase87-selfhost-llvm-exe-line.md (SSOT procedure doc)
* Full troubleshooting guide (llvm-config, llvmlite, linking)
* Advanced usage (custom output, debugging, performance notes)
* Anti-patterns documentation (no duplication/fragmentation)
- fixture: apps/tests/phase87_llvm_exe_min.hako (5 lines, return 42)
- smoke: integration/apps/phase87_llvm_exe_min.sh
* Exit code verification (stdout-independent testing)
* SKIP if LLVM unavailable (graceful degradation)
* Integration profile only (not in quick)
- index: 10-Now.md, 01-JoinIR-Selfhost-INDEX.md (Phase 87 entries)
- task: CURRENT_TASK.md (Phase 74-87 status update)
Integration smoke: demonstrates full pipeline
- Build: .hako → .o → exe (successful ✅)
- Runtime: Ring0 initialization issue (known limitation, out of scope)
Quick profile: unchanged (integration only, per policy)
Policy: No duplicate build paths, SSOT maintained
987/987 tests PASS (production stable)
This commit is contained in:
@ -49,7 +49,16 @@ JoinIR の箱構造と責務、ループ/if の lowering パターンを把握
|
||||
- `src/mir/join_ir/lowering/error_tags.rs` (+5 tests)
|
||||
- **Achievements**: SSOT 確立(CarrierInit → ValueId 生成統一、エラータグ中央化、DebugOutputBox 完全移行)
|
||||
- **Impact**: 987/987 tests PASS, +13 unit tests, Single Responsibility validated
|
||||
7. 代表的な Phase 文書(現役ラインとの接点だけ絞ったもの)
|
||||
7. Phase 87: LLVM Exe Line SSOT ✅
|
||||
- **Status**: COMPLETE (2025-12-13)
|
||||
- **SSOT**: `tools/build_llvm.sh` - Single pipeline for .hako → executable
|
||||
- **Deliverables**:
|
||||
- Design doc: `phase87-selfhost-llvm-exe-line.md` (full troubleshooting + advanced usage)
|
||||
- Minimal fixture: `apps/tests/phase87_llvm_exe_min.hako` (exit code 42)
|
||||
- Integration smoke: `tools/smokes/v2/profiles/integration/apps/phase87_llvm_exe_min.sh` (SKIP if no LLVM)
|
||||
- **Policy**: No script duplication, integration smoke only (not quick), graceful SKIP
|
||||
- **Impact**: Standard procedure established, prerequisites documented
|
||||
8. 代表的な Phase 文書(現役ラインとの接点だけ絞ったもの)
|
||||
- `docs/development/current/main/phase33-16-INDEX.md`
|
||||
- `docs/development/current/main/phase33-17-joinir-modularization-analysis.md`
|
||||
- `docs/development/current/main/phase183-selfhost-depth2-joinir-status.md`
|
||||
|
||||
Reference in New Issue
Block a user