binaryen_dsl

Writing Webassembly text format in DSL
Library binaryen_dsl

Parameters

module M : BinaryenModule

Signature

val ptr_ty : Bound.binary_type
val add_i32 : int32 B.return
val sub_i32 : int32 B.return
val mul_i32 : int32 B.return
val div_i32 : int32 B.return
val lt_i32 : int32 B.return
val gt_i32 : int32 B.return
val eq_i32 : int32 B.return
val ne_i32 : int32 B.return
val unreachable : Ctypes.Uintptr.t B.return
val const_wrap : ( 'a -> Bound.literal Ctypes.structure ) -> 'b -> Bound.expression B.return
val block : ?name:string -> ?ty:Ctypes.Uintptr.t B.return -> Bound.expression list -> Bound.expression B.return
val const_i32 : int32 -> Bound.expression B.return
val const_i32_of_int : int -> Bound.expression B.return
val const_i64 : int64 -> Bound.expression B.return
val const_f32 : float -> Bound.expression B.return
val const_f64 : float -> Bound.expression B.return
val local_get : int -> Ctypes.Uintptr.t -> Bound.expression B.return
val local_set : int -> Bound.expression -> Bound.expression B.return
val global_set : string -> Bound.expression -> Bound.expression B.return
val global_get : string -> Ctypes.Uintptr.t -> Bound.expression B.return
val store : bytes:int -> offset:int -> align:int -> ptr:Bound.expression -> value:Bound.expression -> ty:Ctypes.Uintptr.t -> Bound.expression B.return
val load : bytes:int -> signed:bool -> offset:int -> align:int -> ty:Ctypes.Uintptr.t -> Bound.expression -> Bound.expression B.return
val unreachable_exp : unit -> Bound.expression B.return
val return_ : unit Ctypes_static.ptr option -> Bound.expression B.return
val break_ : ?cond:unit Ctypes_static.ptr -> ?value:unit Ctypes_static.ptr -> string -> Bound.expression B.return
val function_ : name:string -> params_ty:Ctypes.Uintptr.t -> ret_ty:Ctypes.Uintptr.t -> vars_ty:Ctypes.Uintptr.t list -> content:Bound.expression -> Bound.function_
type function_local_var_allocator = {
mutable value : int;
mutable def_ty : Bound.binary_type list;
}
val def_function : string -> params:Ctypes.Uintptr.t list -> ret_ty:Ctypes.Uintptr.t -> ( function_local_var_allocator -> Bound.expression ) -> Bound.function_
val export_function : string -> string -> Bound.export B.return
val import_function : intern_name:string -> extern_name:string -> extern_base_name:string -> params_ty:Ctypes.Uintptr.t -> ret_ty:Ctypes.Uintptr.t -> unit B.return
val add_global_var : name:string -> Ctypes.Uintptr.t -> mut:bool -> init:Bound.expression -> Bound.export B.return
val set_memory : Bound.module_ -> int -> int -> string -> Core_kernel.Bytes.t list -> bool list -> Bound.expression list -> bool -> unit B.return
module I32 : sig ... end
module Ptr : sig ... end