package jasmin
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
Compiler for High-Assurance and High-Speed Cryptography
Install
dune-project
Dependency
Authors
Maintainers
Sources
jasmin-compiler-v2025.06.1.tar.bz2
sha256=e92b42fa69da7c730b0c26dacf842a72b4febcaf4f2157a1dc18b3cce1f859fa
doc/jasmin.jasmin/Jasmin/Lower_spill/index.html
Module Jasmin.Lower_spill
module E : sig ... endval is_spill_op :
'a1 Sopn.asmOp ->
'a1 Sopn.sopn ->
(Pseudo_operator.spill_op * Type.stype list) optionval to_spill_e : Var0.SvExtra.Sv.t -> Expr.pexpr -> Var0.SvExtra.Sv.tval to_spill_i :
'a1 Sopn.asmOp ->
(Var0.SvExtra.Sv.t * bool) ->
'a1 Expr.instr ->
Var0.SvExtra.Sv.t * booltype spill_env = Var0.SvExtra.Sv.tval get_Pvar : Expr.instr_info -> Expr.pexpr -> Expr.var_i Compiler_util.cexecval get_Pvars :
Expr.instr_info ->
Expr.pexpr list ->
Expr.var_i list Compiler_util.cexecval check_ty :
Expr.instr_info ->
Expr.var_i list ->
Type.stype list ->
(Compiler_util.pp_error_loc, unit) Utils0.resultval spill_x :
'a1 Sopn.asmOp ->
(Expr.instr_info -> Var0.Var.var -> Var0.Var.var Compiler_util.cexec) ->
Expr.instr_info ->
spill_env ->
Expr.var_i ->
(Compiler_util.pp_error_loc, Var0.SvExtra.Sv.t * 'a1 Expr.instr)
Utils0.resultval spill_es :
'a1 Sopn.asmOp ->
(Expr.instr_info -> Var0.Var.var -> Var0.Var.var Compiler_util.cexec) ->
Expr.instr_info ->
spill_env ->
Type.stype list ->
Expr.pexpr list ->
(Compiler_util.pp_error_loc, spill_env * 'a1 Expr.instr list) Utils0.resultval unspill_x :
'a1 Sopn.asmOp ->
(Expr.instr_info -> Var0.Var.var -> Var0.Var.var Compiler_util.cexec) ->
Expr.instr_info ->
spill_env ->
Expr.var_i ->
(Compiler_util.pp_error_loc, 'a1 Expr.instr) Utils0.resultval unspill_es :
'a1 Sopn.asmOp ->
(Expr.instr_info -> Var0.Var.var -> Var0.Var.var Compiler_util.cexec) ->
Expr.instr_info ->
spill_env ->
Type.stype list ->
Expr.pexpr list ->
(Compiler_util.pp_error_loc, 'a1 Expr.instr list) Utils0.resultval spill_c :
'a1 Sopn.asmOp ->
(spill_env ->
'a1 Expr.instr ->
(spill_env * 'a1 Expr.instr list) Compiler_util.cexec) ->
spill_env ->
'a1 Expr.instr list ->
(spill_env * 'a1 Expr.instr list) Compiler_util.cexecval merge_env : spill_env -> spill_env -> Var0.SvExtra.Sv.tval loop :
'a1 Sopn.asmOp ->
(spill_env ->
'a1 Expr.instr list ->
(spill_env * 'a1 Expr.instr list) Compiler_util.cexec) ->
Expr.instr_info ->
'a1 Expr.instr list ->
Datatypes.nat ->
spill_env ->
(spill_env * 'a1 Expr.instr list) Compiler_util.cexecval wloop :
'a1 Sopn.asmOp ->
(spill_env ->
'a1 Expr.instr list ->
(spill_env * 'a1 Expr.instr list) Compiler_util.cexec) ->
Expr.instr_info ->
'a1 Expr.instr list ->
'a1 Expr.instr list ->
Datatypes.nat ->
Var0.SvExtra.Sv.t ->
(Var0.SvExtra.Sv.t * ('a1 Expr.instr list * 'a1 Expr.instr list))
Compiler_util.cexecval spill_i :
'a1 Sopn.asmOp ->
(Expr.instr_info -> Var0.Var.var -> Var0.Var.var Compiler_util.cexec) ->
spill_env ->
'a1 Expr.instr ->
(spill_env * 'a1 Expr.instr list) Compiler_util.cexecval init_map :
(Wsize.v_kind ->
Expr.instr_info ->
string ->
Type.stype ->
Ident.Ident.ident) ->
Var0.SvExtra.Sv.t ->
Var0.Var.var Var0.Mvar.tval get_spill :
Var0.Var.var Var0.Mvar.t ->
Expr.instr_info ->
Var0.Var.var ->
(Compiler_util.pp_error_loc, Var0.Var.var) Utils0.resultval check_map :
Var0.Var.var Var0.Mvar.t ->
Var0.SvExtra.Sv.t ->
bool * Var0.SvExtra.Sv.tval spill_fd :
'a1 Sopn.asmOp ->
(Wsize.v_kind ->
Expr.instr_info ->
string ->
Type.stype ->
Ident.Ident.ident) ->
Var0.funname ->
('a1, 'a2) Expr._fundef ->
('a1, 'a2) Expr._fundef Compiler_util.cexecval spill_prog :
'a1 Sopn.asmOp ->
(Wsize.v_kind ->
Expr.instr_info ->
string ->
Type.stype ->
Ident.Ident.ident) ->
Expr.progT ->
'a1 Expr.prog ->
'a1 Expr.prog Compiler_util.cexecval spill_uprog :
'a1 Sopn.asmOp ->
(Wsize.v_kind ->
Expr.instr_info ->
string ->
Type.stype ->
Ident.Ident.ident) ->
'a1 Expr._uprog ->
'a1 Expr._uprog Compiler_util.cexec sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>