`val allocate : tag:int -> deadcode_sentinal:Js_of_ocaml_compiler.Code.Var.t -> load:(Js_of_ocaml_compiler.Code.Var.t -> expression) -> [ `Expr of Wasm_ast.expression | `Var of Wasm_ast.var ] list -> expression`
`val load_function_pointer : cps:bool -> arity:int -> ?skip_cast:bool -> expression -> (Wasm_ast.var * Wasm_ast.expression) Code_generation.t`
`val load_real_closure : cps:bool -> arity:int -> expression -> (Wasm_ast.var * Wasm_ast.expression) Code_generation.t`
`val check_function_arity : Js_of_ocaml_compiler.Code.Var.t -> cps:bool -> arity:int -> (typ:Wasm_ast.value_type option -> expression -> expression) -> unit Code_generation.t -> unit Code_generation.t`
`val tag : expression -> expression`
`val field : expression -> int -> expression`
`val set_field : expression -> int -> expression -> unit Code_generation.t`
`val array_get : expression -> expression -> expression`
`val array_set : expression -> expression -> expression -> unit Code_generation.t`
`val float_array_get : expression -> expression -> expression`
`val float_array_set : expression -> expression -> expression -> unit Code_generation.t`
`val check_is_float_array : expression -> expression`
`val gen_array_get : expression -> expression -> expression`
`val gen_array_set : expression -> expression -> expression -> unit Code_generation.t`
`val array_length : expression -> expression`
`val float_array_length : expression -> expression`
`val gen_array_length : expression -> expression`
`val bytes_length : expression -> expression`
`val bytes_get : expression -> expression -> expression`
`val bytes_set : expression -> expression -> expression -> unit Code_generation.t`
`val box_float : expression -> expression`
`val unbox_float : expression -> expression`
`val box_int32 : expression -> expression`
`val unbox_int32 : expression -> expression`
`val box_int64 : expression -> expression`
`val unbox_int64 : expression -> expression`
`val box_nativeint : expression -> expression`
`val unbox_nativeint : expression -> expression`