1 (***********************************************************************)
5 (* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
7 (* Copyright 1997 Institut National de Recherche en Informatique et *)
8 (* en Automatique. All rights reserved. This file is distributed *)
9 (* under the terms of the Q Public License version 1.0. *)
11 (***********************************************************************)
13 (* $Id: reloadgen.mli 2553 1999-11-17 18:59:06Z xleroy $ *)
15 class reload_generic : object
16 method reload_operation :
17 Mach.operation -> Reg.t array -> Reg.t array -> Reg.t array * Reg.t array
18 method reload_test : Mach.test -> Reg.t array -> Reg.t array
19 (* Can be overriden to reflect instructions that can operate
20 directly on stack locations *)
21 method makereg : Reg.t -> Reg.t
22 (* Can be overriden to avoid creating new registers of some class
23 (i.e. if all "registers" of that class are actually on stack) *)
24 method fundecl : Mach.fundecl -> Mach.fundecl * bool