Module Alloc_mode.For_applications
type t = private | Heap(*Normal allocation on the OCaml heap.
*)| Local of {region : Flambda2_identifiers.Variable.t;ghost_region : Flambda2_identifiers.Variable.t;
}(*Allocation on the local allocation stack in the given region.
*)
Decisions on allocation locations for application expressions.
val print :
Stdlib.Format.formatter ->
Flambda2_term_basics.Alloc_mode.For_applications.t ->
unitval compare :
Flambda2_term_basics.Alloc_mode.For_applications.t ->
Flambda2_term_basics.Alloc_mode.For_applications.t ->
intval local :
region:Flambda2_identifiers.Variable.t ->
ghost_region:Flambda2_identifiers.Variable.t ->
Flambda2_term_basics.Alloc_mode.For_applications.tReturns Heap if stack allocation is disabled!
val from_lambda :
Lambda.locality_mode ->
current_region:Flambda2_identifiers.Variable.t option ->
current_ghost_region:Flambda2_identifiers.Variable.t option ->
Flambda2_term_basics.Alloc_mode.For_applications.tinclude Flambda2_nominal.Contains_names.S
with type t := Flambda2_term_basics.Alloc_mode.For_applications.t
val free_names :
Flambda2_term_basics.Alloc_mode.For_applications.t ->
Flambda2_nominal.Name_occurrences.tCompute the free names of a term. Such computation covers all kinds of bindable names (variables, continuations, ...)
val apply_renaming :
Flambda2_term_basics.Alloc_mode.For_applications.t ->
Flambda2_nominal.Renaming.t ->
Flambda2_term_basics.Alloc_mode.For_applications.tApply a renaming throughout a term.
include Flambda2_nominal.Contains_ids.S
with type t := Flambda2_term_basics.Alloc_mode.For_applications.t
val ids_for_export :
Flambda2_term_basics.Alloc_mode.For_applications.t ->
Flambda2_nominal.Ids_for_export.tGather all table identifiers to export them.