feat(joinir): Phase 201 JoinValueSpace - unified ValueId allocation
Phase 201 introduces JoinValueSpace to prevent ValueId collisions between Pattern 2 frontend (alloc_join_value) and JoinIR lowering (alloc_value). ValueId Space Layout: - PHI Reserved (0-99): For LoopHeader PHI dst - Param Region (100-999): For ConditionEnv, CarrierInfo, CapturedEnv - Local Region (1000+): For Const, BinOp, etc. in pattern lowerers Changes: - Add join_value_space.rs with JoinValueSpace struct (10 tests) - Add ConditionEnvBuilder v2 API using JoinValueSpace - Wire Pattern 2 frontend to use JoinValueSpace for param allocation Note: E2E tests fail until Task 201-5 wires lowerers to alloc_local() 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@ -47,6 +47,7 @@ pub mod if_phi_spec; // Phase 61-2
|
||||
pub(crate) mod if_select; // Phase 33: Internal If/Select lowering
|
||||
pub mod inline_boundary; // Phase 188-Impl-3: JoinIR→Host boundary
|
||||
pub mod inline_boundary_builder; // Phase 200-2: Builder pattern for JoinInlineBoundary
|
||||
pub mod join_value_space; // Phase 201: Unified JoinIR ValueId allocation
|
||||
pub(crate) mod loop_form_intake; // Internal loop form intake
|
||||
pub(crate) mod loop_pattern_router; // Phase 33-12: Loop pattern routing (re-exported)
|
||||
pub(crate) mod loop_pattern_validator; // Phase 33-23: Loop structure validation
|
||||
|
||||
Reference in New Issue
Block a user