Import Upstream version 20180207
[hcoop/debian/mlton.git] / mlton / codegen / x86-codegen / x86-allocate-registers.sig
1 (* Copyright (C) 2009 Matthew Fluet.
2 * Copyright (C) 1999-2005 Henry Cejtin, Matthew Fluet, Suresh
3 * Jagannathan, and Stephen Weeks.
4 * Copyright (C) 1997-2000 NEC Research Institute.
5 *
6 * MLton is released under a BSD-style license.
7 * See the file MLton-LICENSE for details.
8 *)
9
10 signature X86_ALLOCATE_REGISTERS_STRUCTS =
11 sig
12 structure x86 : X86
13 structure x86MLton : X86_MLTON
14 sharing x86 = x86MLton.x86
15 end
16
17 signature X86_ALLOCATE_REGISTERS =
18 sig
19 include X86_ALLOCATE_REGISTERS_STRUCTS
20
21 val allocateRegisters : {assembly: x86.Assembly.t list list,
22 liveness: bool} ->
23 x86.Assembly.t list list
24
25 val allocateRegisters_totals : unit -> unit
26
27 val picRelative : unit -> (x86.Label.t -> x86.Label.t) *
28 x86.Register.t option
29 end