jon.recoil.org

Module Regalloc_ls_state

module DLL = Oxcaml_utils.Doubly_linked_list
type t
val make : stack_slots:Regalloc_stack_slots.t -> affinity:Regalloc_affinity.t -> t
val update_intervals : t -> Regalloc_ls_utils.Interval.t Reg.Tbl.t -> unit
val iter_intervals : t -> f:(Regalloc_ls_utils.Interval.t -> unit) -> unit
val fold_intervals : t -> f:('a -> Regalloc_ls_utils.Interval.t -> 'a) -> init:'a -> 'a
val release_expired_intervals : t -> pos:int -> unit
val stack_slots : t -> Regalloc_stack_slots.t
val affinity : t -> Regalloc_affinity.t
val set_ls_order : t -> instruction_id:InstructionId.t -> ls_order:int -> unit
val get_ls_order : t -> instruction_id:InstructionId.t -> int
val ls_order_mapping : t -> InstructionId.t -> int
val invariant_intervals : t -> Cfg_with_infos.t -> unit
val invariant_active : t -> unit