Module Flambda2_reaper.Unboxing_analysis
module Unboxed_fields : sig ... endtype unboxed = Flambda2_identifiers.Variable.t Unboxed_fields.ttype changed_representation = | Block_representation of (int * Flambda2_terms.Flambda_primitive.Block_access_kind.t) Unboxed_fields.t * int| Closure_representation of Flambda2_identifiers.Value_slot.t Unboxed_fields.t * Flambda2_identifiers.Function_slot.t Flambda2_identifiers.Function_slot.Map.t * Flambda2_identifiers.Function_slot.t
type result = {db : Flambda2_datalog.Datalog.database;unboxed_fields : unboxed Flambda2_identifiers.Code_id_or_name.Map.t;changed_representation : (changed_representation * Flambda2_identifiers.Code_id_or_name.t) Flambda2_identifiers.Code_id_or_name.Map.t;
}val pp_result : Format.formatter -> result -> unitval cannot_change_calling_convention :
result ->
Flambda2_identifiers.Code_id.t ->
boolval perform_analysis :
Flambda2_datalog.Datalog.database ->
stats:Flambda2_datalog.Datalog.Schedule.stats ->
result