Module Flambda2_simplify.Upwards_env
Upwards environments used during simplification.
val create :
Flambda2_simplify_shared.Are_rebuilding_terms.t ->
machine_width:Target_system.Machine_width.t ->
Flambda2_simplify.Upwards_env.tCreate an upwards environment.
The are_rebuilding_terms provided is only used for printing.
val machine_width :
Flambda2_simplify.Upwards_env.t ->
Target_system.Machine_width.tval print : Stdlib.Format.formatter -> Flambda2_simplify.Upwards_env.t -> unitval add_non_inlinable_continuation :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
params:Flambda2_bound_identifiers.Bound_parameters.t ->
handler:Flambda2_simplify.Rebuilt_expr.t Flambda2_lattices.Or_unknown.t ->
Flambda2_simplify.Upwards_env.tval add_invalid_continuation :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
[ `Unarized ] Flambda2_kinds.Flambda_arity.t ->
Flambda2_simplify.Upwards_env.tval add_continuation_shortcut :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
params:Flambda2_bound_identifiers.Bound_parameters.t ->
shortcut_to:Flambda2_identifiers.Continuation.t ->
args:Flambda2_term_basics.Simple.t list ->
Flambda2_simplify.Upwards_env.tval add_linearly_used_inlinable_continuation :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
params:Flambda2_bound_identifiers.Bound_parameters.t ->
handler:Flambda2_simplify.Rebuilt_expr.t ->
free_names_of_handler:Flambda2_nominal.Name_occurrences.t ->
cost_metrics_of_handler:Flambda2_terms.Cost_metrics.t ->
Flambda2_simplify.Upwards_env.tval add_function_return_or_exn_continuation :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
[ `Unarized ] Flambda2_kinds.Flambda_arity.t ->
Flambda2_simplify.Upwards_env.tval find_continuation :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
Flambda2_simplify.Continuation_in_env.tval mem_continuation :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
boolval find_continuation_shortcut :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
Flambda2_simplify.Continuation_shortcut.t optionval add_apply_cont_rewrite :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
Flambda2_simplify.Apply_cont_rewrite.t ->
Flambda2_simplify.Upwards_env.tval replace_apply_cont_rewrite :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
Flambda2_simplify.Apply_cont_rewrite.t ->
Flambda2_simplify.Upwards_env.tval find_apply_cont_rewrite :
Flambda2_simplify.Upwards_env.t ->
Flambda2_identifiers.Continuation.t ->
Flambda2_simplify.Apply_cont_rewrite.t option