File: listScheduler.sig

package info (click to toggle)
smlnj 110.79-8
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid
  • size: 82,564 kB
  • sloc: ansic: 32,532; asm: 6,314; sh: 2,296; makefile: 1,821; perl: 1,170; pascal: 295; yacc: 190; cs: 78; python: 77; lisp: 19
file content (26 lines) | stat: -rw-r--r-- 760 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
(*
 * A customizable list scheduler that works on a region at a time.
 * A region is a subset of the control flow graph.
 *
 * -- Allen
 *)
signature LIST_SCHEDULER = 
sig

   structure I          : INSTRUCTIONS
   structure IR         : MLRISC_IR
   structure DDG        : SCHEDULER_DDG
   structure CFG        : CONTROL_FLOW_GRAPH
     sharing DDG.I = IR.I = I
     sharing IR.CFG = CFG 

   val listScheduler : 
       { cpu_info   : DDG.SchedProps.cpu_info,
         blockIdTbl : int Array.array,  
         ranking    : DDG.node Graph.node * DDG.node Graph.node -> bool,
         cfg        : CFG.cfg,  (* the entire program! *)
         region     : CFG.cfg,  (* current region *)
         ddg        : (DDG.node, DDG.edge) DDG.ddg
       } -> unit

end