package jasmin
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/Riscv_stack_zeroization/index.html
Module Jasmin.Riscv_stack_zeroization
val sz_init :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Expr.var_i ->
Wsize.wsize ->
BinNums.coq_Z ->
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt,
Riscv_instr_decl.riscv_op,
Riscv_extra.riscv_extra_op)
Arch_extra.extended_op
Linear.lcmd
val store_zero :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Wsize.wsize ->
Expr.var_i ->
BinNums.coq_Z ->
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt,
Riscv_instr_decl.riscv_op,
Riscv_extra.riscv_extra_op)
Arch_extra.extended_op
Linear.linstr_r
val sz_loop :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Expr.var_i ->
Label.label ->
Wsize.wsize ->
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt,
Riscv_instr_decl.riscv_op,
Riscv_extra.riscv_extra_op)
Arch_extra.extended_op
Linear.lcmd
val restore_sp :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Expr.var_i ->
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt,
Riscv_instr_decl.riscv_op,
Riscv_extra.riscv_extra_op)
Arch_extra.extended_op
Linear.linstr
list
val stack_zero_loop :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Expr.var_i ->
Label.label ->
Wsize.wsize ->
Wsize.wsize ->
BinNums.coq_Z ->
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt,
Riscv_instr_decl.riscv_op,
Riscv_extra.riscv_extra_op)
Arch_extra.extended_op
Linear.lcmd
val stack_zero_loop_vars :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Var0.SvExtra.Sv.t
val sz_unrolled :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Expr.var_i ->
Wsize.wsize ->
BinNums.coq_Z ->
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt,
Riscv_instr_decl.riscv_op,
Riscv_extra.riscv_extra_op)
Arch_extra.extended_op
Linear.lcmd
val stack_zero_unrolled :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Expr.var_i ->
Wsize.wsize ->
Wsize.wsize ->
BinNums.coq_Z ->
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt,
Riscv_instr_decl.riscv_op,
Riscv_extra.riscv_extra_op)
Arch_extra.extended_op
Linear.lcmd
val stack_zero_unrolled_vars :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Var0.SvExtra.Sv.t
val stack_zeroization_cmd :
(Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt)
Arch_extra.arch_toIdent ->
Stack_zero_strategy.stack_zero_strategy ->
Ident.Ident.ident ->
Label.label ->
Wsize.wsize ->
Wsize.wsize ->
BinNums.coq_Z ->
((Riscv_decl.register,
Arch_utils.empty,
Arch_utils.empty,
Arch_utils.empty,
Riscv_decl.condt,
Riscv_instr_decl.riscv_op,
Riscv_extra.riscv_extra_op)
Arch_extra.extended_op
Linear.lcmd
* Var0.SvExtra.Sv.t)
Compiler_util.cexec
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>