jon.recoil.org

Module Regalloc_gi_utils.Hardware_register

type location = private {
  1. reg_class : Regs.Reg_class.t;
  2. reg_index_in_class : int;
}
val make_location : reg_class:Regs.Reg_class.t -> reg_index_in_class:int -> location
val print_location : Format.formatter -> location -> unit
val reg_location_of_location : location -> Reg.location
type assigned = {
  1. pseudo_reg : Reg.t;
  2. interval : Interval.t;
  3. evictable : bool;
}
val print_assigned : Format.formatter -> assigned -> unit
type t = {
  1. location : location;
  2. interval : Interval.t;
  3. assigned : assigned Reg.Tbl.t;
}
val add_non_evictable : t -> Reg.t -> Interval.t -> unit
val add_evictable : t -> Reg.t -> Interval.t -> unit
val remove_evictable : t -> Reg.t -> unit