1 cananian 1.1.2.1 // AllocationInfo.java, created Wed Jul 28 16:08:24 1999 by duncan
 2 cananian 1.1.2.1 // Copyright (C) 1998 Duncan Bryce <duncan@lcs.mit.edu>
 3 cananian 1.1.2.1 // Licensed under the terms of the GNU GPL; see COPYING for details.
 4 cananian 1.1.2.1 package harpoon.Interpret.Tree;
 5 cananian 1.1.2.1 
 6 cananian 1.1.2.1 import harpoon.Temp.Label;
 7 cananian 1.1.2.1 import harpoon.Temp.Temp;
 8 cananian 1.1.2.1 
 9 cananian 1.1.2.1 /** 
10 cananian 1.1.2.1  * The <code>AllocationInfo</code> interface specifies information assumed 
11 cananian 1.1.2.1  * to be needed for most memory allocation schemes.
12 cananian 1.1.2.1  *
13 cananian 1.1.2.1  * @author  Duncan Bryce <duncan@lcs.mit.edu>
14 cananian 1.2      * @version $Id: AllocationInfo.java,v 1.2 2002/02/25 21:05:50 cananian Exp $
15 cananian 1.1.2.1  */
16 cananian 1.1.2.2 interface AllocationInfo {
17 cananian 1.1.2.1 
18 cananian 1.1.2.1     /** Returns the label of the garbage collection function */
19 cananian 1.1.2.1     public Label GC();
20 cananian 1.1.2.1     
21 cananian 1.1.2.1     /** Returns a pointer to the highest available address in memory.  */
22 cananian 1.1.2.1     public Temp  getMemLimit();
23 cananian 1.1.2.1     
24 cananian 1.1.2.1     /** Returns a pointer to the next free address in memory */
25 cananian 1.1.2.1     public Temp  getNextPtr();
26 cananian 1.1.2.1     
27 cananian 1.1.2.1     /** Returns the label of a function which exits with an out of memory 
28 cananian 1.1.2.1      *  error */
29 cananian 1.1.2.1     public Label exitOutOfMemory();
30 cananian 1.1.2.1 }
31 cananian 1.2