File: machine.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 (20 lines) | stat: -rw-r--r-- 570 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
(* COPYRIGHT (c) 1999 Lucent Technologies, Bell Labs *)

(* Signature to capture various aspects of the MLRISC back end *) 

signature MACHINE = sig
  structure P : INSN_PROPERTIES
  structure Asm : INSTRUCTION_EMITTER
		  where I = P.I
  structure CFG : CONTROL_FLOW_GRAPH 
		  where I = Asm.I
		    and P = Asm.S.P

  type mlriscPhase = string * (CFG.cfg -> CFG.cfg) 
  val makePhase     : string * (CFG.cfg -> CFG.cfg) -> mlriscPhase
  val raPhase       : mlriscPhase 
  val optimizerHook : mlriscPhase list ref
  val finish        : unit -> unit
end (* MACHINE *)