File: compute-freq2.sig

package info (click to toggle)
mlton 20210117%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 58,464 kB
  • sloc: ansic: 27,682; sh: 4,455; asm: 3,569; lisp: 2,879; makefile: 2,347; perl: 1,169; python: 191; pascal: 68; javascript: 7
file content (27 lines) | stat: -rw-r--r-- 891 bytes parent folder | download | duplicates (5)
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
27
(*
 * This module computes frequencies when given branch probabilities
 * It has been generalized from the old static branch predication 
 * so that it can be applied to other graph based reprensentations. 
 *
 * -- Allen
 *)

signature COMPUTE_FREQUENCIES2 =
sig

   structure Derived : DERIVED_GRAPH
   structure W       : FREQ

   val compute_frequencies : 
       { cfg            : ('n,'e,'g) Graph.graph,
         derived        : ('n,'e) Derived.derived_graph,
           (* multiplier for each loop nesting *) 
         loopMultiplier : int,
         nodeFreq       : 'n -> W.freq ref, (* frequency of a node *)
         edgeFreq       : 'e -> W.freq ref, (* frequency of an edge *)
         branchProb     : 'n -> int,        (* branch probability of a node *)
           (* is the edge a taken branch edge? *)
         isTakenBranch  : 'e Graph.edge -> bool 
       } -> unit

end