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/X86_extra/index.html
Module Jasmin.X86_extra
type __ = Obj.tmodule E : sig ... endtype x86_extra_op = | Oset0 of Wsize.wsize| Oconcat128| Ox86MOVZX32| Ox86MULX of Wsize.wsize| Ox86MULX_hi of Wsize.wsize| Ox86SLHinit| Ox86SLHupdate| Ox86SLHmove| Ox86SLHprotect of Wsize.reg_kind * Wsize.wsize
val x86_extra_op_rect :
(Wsize.wsize -> 'a1) ->
'a1 ->
'a1 ->
(Wsize.wsize -> 'a1) ->
(Wsize.wsize -> 'a1) ->
'a1 ->
'a1 ->
'a1 ->
(Wsize.reg_kind -> Wsize.wsize -> 'a1) ->
x86_extra_op ->
'a1val x86_extra_op_rec :
(Wsize.wsize -> 'a1) ->
'a1 ->
'a1 ->
(Wsize.wsize -> 'a1) ->
(Wsize.wsize -> 'a1) ->
'a1 ->
'a1 ->
'a1 ->
(Wsize.reg_kind -> Wsize.wsize -> 'a1) ->
x86_extra_op ->
'a1type is_x86_extra_op = | Coq_is_Oset0 of Wsize.wsize * Wsize.is_wsize| Coq_is_Oconcat128| Coq_is_Ox86MOVZX32| Coq_is_Ox86MULX of Wsize.wsize * Wsize.is_wsize| Coq_is_Ox86MULX_hi of Wsize.wsize * Wsize.is_wsize| Coq_is_Ox86SLHinit| Coq_is_Ox86SLHupdate| Coq_is_Ox86SLHmove| Coq_is_Ox86SLHprotect of Wsize.reg_kind * Wsize.is_reg_kind * Wsize.wsize * Wsize.is_wsize
val is_x86_extra_op_rect :
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
'a1 ->
'a1 ->
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
'a1 ->
'a1 ->
'a1 ->
(Wsize.reg_kind -> Wsize.is_reg_kind -> Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
x86_extra_op ->
is_x86_extra_op ->
'a1val is_x86_extra_op_rec :
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
'a1 ->
'a1 ->
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
'a1 ->
'a1 ->
'a1 ->
(Wsize.reg_kind -> Wsize.is_reg_kind -> Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
x86_extra_op ->
is_x86_extra_op ->
'a1val x86_extra_op_tag : x86_extra_op -> BinNums.positiveval is_x86_extra_op_inhab : x86_extra_op -> is_x86_extra_opval is_x86_extra_op_functor :
x86_extra_op ->
is_x86_extra_op ->
is_x86_extra_optype box_x86_extra_op_Oset0 = Wsize.wsizeval coq_Box_x86_extra_op_Oset0_0 : box_x86_extra_op_Oset0 -> Wsize.wsizetype box_x86_extra_op_Ox86SLHprotect = {coq_Box_x86_extra_op_Ox86SLHprotect_0 : Wsize.reg_kind;coq_Box_x86_extra_op_Ox86SLHprotect_1 : Wsize.wsize;
}val coq_Box_x86_extra_op_Ox86SLHprotect_0 :
box_x86_extra_op_Ox86SLHprotect ->
Wsize.reg_kindval coq_Box_x86_extra_op_Ox86SLHprotect_1 :
box_x86_extra_op_Ox86SLHprotect ->
Wsize.wsizetype x86_extra_op_fields_t = __val x86_extra_op_fields : x86_extra_op -> x86_extra_op_fields_tval x86_extra_op_construct :
BinNums.positive ->
x86_extra_op_fields_t ->
x86_extra_op optionval x86_extra_op_induction :
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
'a1 ->
'a1 ->
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
(Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
'a1 ->
'a1 ->
'a1 ->
(Wsize.reg_kind -> Wsize.is_reg_kind -> Wsize.wsize -> Wsize.is_wsize -> 'a1) ->
x86_extra_op ->
is_x86_extra_op ->
'a1val x86_extra_op_eqb_fields :
(x86_extra_op -> x86_extra_op -> bool) ->
BinNums.positive ->
x86_extra_op_fields_t ->
x86_extra_op_fields_t ->
boolval x86_extra_op_eqb : x86_extra_op -> x86_extra_op -> boolval x86_extra_op_eqb_OK : x86_extra_op -> x86_extra_op -> Bool.reflectval x86_extra_op_eqb_OK_sumbool : x86_extra_op -> x86_extra_op -> boolval coq_HB_unnamed_factory_1 : x86_extra_op Eqtype.Coq_hasDecEq.axioms_val x86_extra_x86_extra_op__canonical__eqtype_Equality :
Eqtype.Equality.coq_typeval coq_Oset0_instr :
(X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt)
Arch_extra.arch_toIdent ->
Wsize.wsize ->
Sopn.instruction_descval coq_Oconcat128_instr : Sopn.instruction_descval coq_Ox86MOVZX32_instr : Sopn.instruction_descval x86_MULX :
Wsize.wsize ->
Ssralg.GRing.ComRing.sort ->
Ssralg.GRing.ComRing.sort ->
Sem_type.sem_tupleval coq_Ox86MULX_instr :
(X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt)
Arch_extra.arch_toIdent ->
Wsize.wsize ->
Sopn.instruction_descval x86_MULX_hi :
Wsize.wsize ->
Ssralg.GRing.ComRing.sort ->
Ssralg.GRing.ComRing.sort ->
Sem_type.sem_tupleval coq_Ox86MULX_hi_instr :
(X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt)
Arch_extra.arch_toIdent ->
Wsize.wsize ->
Sopn.instruction_descval coq_Ox86SLHinit_instr : Sopn.instruction_descval x86_se_update_sem :
bool ->
Ssralg.GRing.ComRing.sort ->
Ssralg.GRing.ComRing.sort * Ssralg.GRing.ComRing.sortval coq_Ox86SLHupdate_instr : Sopn.instruction_descval coq_Ox86SLHmove_instr : Sopn.instruction_descval se_protect_small_sem :
Wsize.wsize ->
Ssralg.GRing.ComRing.sort ->
Ssralg.GRing.ComRing.sort ->
Sem_type.sem_tupleval se_protect_mmx_sem :
Wsize.wsize ->
Ssralg.GRing.ComRing.sort ->
Ssralg.GRing.ComRing.sort ->
Ssralg.GRing.ComRing.sortval se_protect_large_sem :
Wsize.wsize ->
Ssralg.GRing.ComRing.sort ->
Ssralg.GRing.ComRing.sort ->
Ssralg.GRing.ComRing.sort * Ssralg.GRing.ComRing.sortval coq_Ox86SLHprotect_instr :
(X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt)
Arch_extra.arch_toIdent ->
Wsize.reg_kind ->
Wsize.wsize ->
Sopn.instruction_descval get_instr_desc :
(X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt)
Arch_extra.arch_toIdent ->
x86_extra_op ->
Sopn.instruction_descval prim_string : (string * x86_extra_op Sopn.prim_constructor) listval re_i : Wsize.wsize -> BinNums.coq_Z -> Fexpr.rexprval re8_0 : Fexpr.rexprval re8_1 : Fexpr.rexprval assemble_slh_init :
Fexpr.lexpr list ->
(((X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt,
X86_instr_decl.x86_op)
Arch_decl.asm_op_msb_t
* Fexpr.lexpr list)
* Fexpr.rexpr list)
list
Compiler_util.cexecval assemble_slh_update :
Expr.instr_info ->
Fexpr.lexpr list ->
Fexpr.rexpr list ->
(((X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt,
X86_instr_decl.x86_op)
Arch_decl.asm_op_msb_t
* Fexpr.lexpr list)
* Fexpr.rexpr list)
list
Compiler_util.cexecval assemble_slh_protect :
Expr.instr_info ->
Wsize.reg_kind ->
Wsize.wsize ->
Fexpr.lexpr list ->
Fexpr.rexpr list ->
(((X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt,
X86_instr_decl.x86_op)
Arch_decl.asm_op_msb_t
* Fexpr.lexpr list)
* Fexpr.rexpr list)
list
Compiler_util.cexecval assemble_slh_move :
Fexpr.lexpr list ->
Fexpr.rexpr list ->
(((X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt,
X86_instr_decl.x86_op)
Arch_decl.asm_op_msb_t
* Fexpr.lexpr list)
* Fexpr.rexpr list)
list
Compiler_util.cexecval assemble_extra :
Expr.instr_info ->
x86_extra_op ->
Fexpr.lexpr list ->
Fexpr.rexpr list ->
(((X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt,
X86_instr_decl.x86_op)
Arch_decl.asm_op_msb_t
* Fexpr.lexpr list)
* Fexpr.rexpr list)
list
Compiler_util.cexecval eqC_x86_extra_op : x86_extra_op Utils0.eqTypeCval x86_extra_op_decl :
(X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt)
Arch_extra.arch_toIdent ->
x86_extra_op Sopn.asmOptype x86_extended_op =
(X86_decl.register,
X86_decl.register_ext,
X86_decl.xmm_register,
X86_decl.rflag,
X86_decl.condt,
X86_instr_decl.x86_op,
x86_extra_op)
Arch_extra.extended_op sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>