Project

General

Profile

Revision 95fb046e src/scheduling.ml

View differences:

src/scheduling.ml
14 14
open Corelang
15 15
open Graph
16 16
open Causality
17

  
18
type schedule_report =
19
{
20
  (* the scheduled node *)
21
  node : node_desc;
22
  (* a schedule computed wrt the dependency graph *)
23
  schedule : ident list list;
24
  (* the set of unused variables (no output or mem depends on them) *)
25
  unused_vars : ISet.t;
26
  (* the table mapping each local var to its in-degree *)
27
  fanin_table : (ident, int) Hashtbl.t;
28
  (* the dependency graph *)
29
  dep_graph   : IdentDepGraph.t;
30
  (* the table mapping each assignment to a reusable variable *)
31
  (*reuse_table : (ident, var_decl) Hashtbl.t*)
32
}
17
open Scheduling_type
33 18

  
34 19
(* Topological sort with a priority for variables belonging in the same equation lhs.
35 20
   For variables still unrelated, standard compare is used to choose the minimal element.

Also available in: Unified diff