Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | (* Copyright (C) 1999-2005 Henry Cejtin, Matthew Fluet, Suresh |
2 | * Jagannathan, and Stephen Weeks. | |
3 | * Copyright (C) 1997-2000 NEC Research Institute. | |
4 | * | |
5 | * MLton is released under a BSD-style license. | |
6 | * See the file MLton-LICENSE for details. | |
7 | *) | |
8 | ||
9 | signature LIVE_STRUCTS = | |
10 | sig | |
11 | include RSSA | |
12 | end | |
13 | ||
14 | signature LIVE = | |
15 | sig | |
16 | include LIVE_STRUCTS | |
17 | ||
18 | val live: | |
19 | Function.t * {shouldConsider: Var.t -> bool} | |
20 | -> {labelLive: | |
21 | Label.t -> {(* live at beginning of block. *) | |
22 | begin: Var.t vector, | |
23 | (* live at the beginning of a block, except formals. *) | |
24 | beginNoFormals: Var.t vector, | |
25 | (* live handler slots at beginning of block. *) | |
26 | handler: Label.t option, | |
27 | link: bool}, | |
28 | remLabelLive: Label.t -> unit} | |
29 | end |