let asm_of_prog prog =
let name, block = prog in
let procs, main = asm_of_proc "main"
{
func_args = [];
func_value = block;
func_asm_def = Asm_ir.proc_stub "main" [] 0;
func_used = true;
func_external = false;
} Unit []
in
{
Asm_ir.prog_source_name = "";
Asm_ir.prog_procs = procs @ [main];
Asm_ir.prog_max_depth = List.fold_left (fun m p -> max m p.Asm_ir.proc_lex_depth) 0 procs;
}