package jasmin
Module Jasmin.Arch_params
type 'asm_op lowering_params = {lop_lower_i : (Expr.instr_info -> Compiler_util.warning_msg -> Expr.instr_info) -> Lowering.fresh_vars -> 'asm_op Expr.instr -> 'asm_op Expr.instr list;lop_fvars_correct : Lowering.fresh_vars -> Expr.progT -> 'asm_op Expr.fun_decl list -> bool;
}type ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op)
lower_addressing_params =
(string -> Type.atype -> Ident.Ident.ident) ->
('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op)
Arch_extra.extended_op
Expr._sprog ->
('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op)
Arch_extra.extended_op
Expr._sprog
Compiler_util.cexectype ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op)
architecture_params =
{ap_sap : ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op) Arch_extra.extended_op Stack_alloc_params.stack_alloc_params;ap_lip : ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op) Arch_extra.extended_op Linearization.linearization_params;ap_plp : bool;ap_lop : ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op) Arch_extra.extended_op lowering_params;ap_shp : ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op) Arch_extra.extended_op Slh_lowering.sh_params;ap_lap : ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op) lower_addressing_params;ap_agp : ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op) Asm_gen.asm_gen_params;ap_szp : ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op) Arch_extra.extended_op Stack_zeroization.stack_zeroization_params;ap_is_move_op : ('reg, 'regx, 'xreg, 'rflag, 'cond, 'asm_op, 'extra_op) Arch_extra.extended_op Sopn.asm_op_t -> bool;
}