2.4 KiB
2.4 KiB
PR-05.6 - OptimizeIRVM Real Deterministic Passes
Briefing
A etapa OptimizeIRVM está corretamente posicionada no pipeline, mas ainda opera como NoOp.
Esta PR introduz o primeiro conjunto de passes reais, seguros e determinísticos, mantendo equivalência semântica e compatibilidade de perfil.
Motivation
Dor atual que esta PR resolve
- Etapa de otimização existe formalmente, mas não entrega valor técnico.
- Difícil sustentar evolução de performance e limpeza de IRVM sem regressão.
- Falta de contrato de execução de pass manager com evidência forte.
Target
OptimizeIRVMService com pass manager produtivo e baseline de passes v1.
Dependencies
Prerequisitos diretos:
PR-05.0.3(IDs tipados no contrato executável).PR-05.0.4(shape/signature internadas).
Scope
- Pass manager determinístico com ordem estável.
- Passes iniciais semânticamente conservadores.
- Validação antes/depois de cada pass.
Non-Goals
- Não inclui otimizações agressivas interprocedurais.
- Não inclui JIT/runtime optimization.
Method
O que deve ser feito explicitamente
- Implementar baseline de passes v1:
- eliminação de bloco inalcançável,
- normalização de labels redundantes,
- simplificação de salto para próximo PC.
- Manter invariantes obrigatórias:
- sem mudança de
vm_profile, - sem introdução de opcode fora do perfil,
- sem alteração de contratos de slots/retorno observáveis.
- sem mudança de
- Validar programa antes e após cada pass.
- Registrar nome/ordem de pass para rastreabilidade de regressão.
Acceptance Criteria
OptimizeIRVMdeixa de ser apenasNoOpno caminho padrão.- Mesma entrada produz mesma saída otimizada (determinismo).
- Testes de equivalência semântica passam para fixtures representativas.
- Nenhum pass viola perfil de VM ou contrato de emissão.
- Nenhum pass degrada identidade tipada para chave textual ad-hoc.
Tests
- Testes unitários por pass com entradas mínimas e edge cases.
- Testes de pipeline comparando saída otimizada vs não otimizada para equivalência.
- Testes negativos para pass que tenta alterar perfil/semântica.
Affected Documents
docs/general/specs/21. IRVM Optimization Pipeline Specification.mddocs/general/specs/19. Verification and Safety Checks Specification.md
Open Questions
Sem bloqueios arquiteturais para baseline v1.