Module Js_of_ocaml_compiler.Global_flow
type def = | Expr of Js_of_ocaml_compiler.Code.expr| Phi of {known : Js_of_ocaml_compiler.Code.Var.Set.t;others : bool;unit : bool;
}
type info = {info_defs : Js_of_ocaml_compiler.Global_flow.def array;info_approximation : Js_of_ocaml_compiler.Global_flow.approx Js_of_ocaml_compiler.Code.Var.Tbl.t;info_may_escape : Js_of_ocaml_compiler.Code.Var.ISet.t;info_variable_may_escape : Js_of_ocaml_compiler.Global_flow.escape_status array;info_return_vals : Js_of_ocaml_compiler.Code.Var.Set.t Js_of_ocaml_compiler.Code.Var.Map.t;
}module VarPairTbl :
Stdlib.Hashtbl.S
with type key =
Js_of_ocaml_compiler.Code.Var.t * Js_of_ocaml_compiler.Code.Var.ttype state = {vars : Js_of_ocaml_compiler.Code.Var.ISet.t;deps : Js_of_ocaml_compiler.Code.Var.t list Js_of_ocaml_compiler.Code.Var.Tbl.t;defs : Js_of_ocaml_compiler.Global_flow.def array;variable_may_escape : Js_of_ocaml_compiler.Global_flow.escape_status array;variable_mutable_fields : Js_of_ocaml_compiler.Global_flow.mutable_fields array;may_escape : Js_of_ocaml_compiler.Global_flow.escape_status array;mutable_fields : Js_of_ocaml_compiler.Global_flow.mutable_fields array;return_values : Js_of_ocaml_compiler.Code.Var.Set.t Js_of_ocaml_compiler.Code.Var.Map.t;functions_from_returned_value : Js_of_ocaml_compiler.Code.Var.t list Js_of_ocaml_compiler.Code.Var.Hashtbl.t;known_cases : int list Js_of_ocaml_compiler.Code.Var.Hashtbl.t;applied_functions : unit Js_of_ocaml_compiler.Global_flow.VarPairTbl.t;function_call_sites : Js_of_ocaml_compiler.Code.Var.t list Js_of_ocaml_compiler.Code.Var.Hashtbl.t;fast : bool;
}val f :
fast:bool ->
Js_of_ocaml_compiler.Code.program ->
Js_of_ocaml_compiler.Global_flow.state
* Js_of_ocaml_compiler.Global_flow.infoval update_def :
Js_of_ocaml_compiler.Global_flow.info ->
Js_of_ocaml_compiler.Code.Var.t ->
Js_of_ocaml_compiler.Code.expr ->
unitval exact_call :
Js_of_ocaml_compiler.Global_flow.info ->
Js_of_ocaml_compiler.Code.Var.t ->
int ->
boolval get_unique_closure :
Js_of_ocaml_compiler.Global_flow.info ->
Js_of_ocaml_compiler.Code.Var.t ->
(Js_of_ocaml_compiler.Code.Var.t * Js_of_ocaml_compiler.Code.Var.t list)
optionval function_arity :
Js_of_ocaml_compiler.Global_flow.info ->
Js_of_ocaml_compiler.Code.Var.t ->
int option