aboutsummaryrefslogtreecommitdiffstats
path: root/src/SoftwarePipelining/SPIMS.mli
blob: bcd9ede9e5be0e1e268dcd91abea6afd6556da85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(***********************************************************************)
(*                                                                     *)
(*                        Compcert Extensions                          *)
(*                                                                     *)
(*                       Jean-Baptiste Tristan                         *)
(*                                                                     *)
(*  All rights reserved.  This file is distributed under the terms     *)
(*  described in file ../../LICENSE.                                   *)
(*                                                                     *)
(***********************************************************************)


open Graph.Pack.Digraph
open Basic

module NI : Map.S with type key = Basic.G.V.t 

(* piepeliner takes a data dependency graph and returns a schedule with an initiation interval
   fails if cannot find any schedule *)
val pipeliner : G.t -> (G.t -> int option NI.t -> G.V.t) -> int NI.t * int

val print_schedule : int NI.t -> unit