1.3 KiB
1.3 KiB
PR-033 - Backend Function Layout and Debug Minimum
Briefing
Implementar o builder de layout final de funcoes (code_offset, code_len) e o contrato minimo de debug (function_names, pc_to_span) antes de integrar com stages do pipeline.
Target
- Construir flatten deterministico de codigo por funcao.
- Preencher
functions[]com offsets/len coerentes. - Preencher
debug_infominimo v1.
Method
- Adicionar um layout builder que recebe codigo por funcao e produz
codeunico. - Garantir
code_offsetmonotonicos e unicos. - Garantir
code_lenexato por funcao. - Gerar
debug_info.function_namesedebug_info.pc_to_spanno momento de materializacao final. - Seguir invariantes de consumo do runtime (
ProgramImagee verifier).
Acceptance Criteria
code_offset + code_lende cada funcao fica dentro decode.len.- Ordem de flatten e offsets sao deterministicos.
function_namescontem todos osfunc_idxemitidos.pc_to_spancobre cada inicio de instrucao emitida.
Tests
- Teste unitario de layout com multiplas funcoes.
- Teste unitario de limites invalidos rejeitados deterministicamente.
- Teste unitario de cobertura de debug minimo.
Affected Documents
docs/general/specs/15. Bytecode and PBX Mapping Specification.md