harpoon.IR.Properties
Class UseDefer<HCE extends HCodeElement>

java.lang.Object
  extended by harpoon.IR.Properties.UseDefer<HCE>
Direct Known Subclasses:
BasePointerPreservingUseDefer, IgnoreSpillUseDefer, RegUseDefer, TreeUseDefer

public abstract class UseDefer<HCE extends HCodeElement>
extends Object

UseDefer provides a means to externally associate use and def information with elements of an intermediate representation.

Version:
$Id: UseDefer.java,v 1.5 2004/02/08 05:01:39 cananian Exp $
Author:
Felix S. Klock II <pnkfelix@mit.edu>

Field Summary
static UseDefer DEFAULT
          Default UseDefer for HCodeElements which implement UseDefable.
 
Constructor Summary
UseDefer()
           
 
Method Summary
 Temp[] def(HCE hce)
          Return all the Temps defined by hce.
abstract  Collection<Temp> defC(HCE hce)
          Returns a Collection of all the Temps that are defined by hce.
 Temp[] use(HCE hce)
          Return all the Temps used by hce.
abstract  Collection<Temp> useC(HCE hce)
          Returns a Collection of all the Temps that may be read by hce.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT

public static final UseDefer DEFAULT
Default UseDefer for HCodeElements which implement UseDefable. Does nothing but cast the supplied HCodeElement to a UseDefable and invoke the appropriate corresponding method in the UseDefable interface.

See Also:
Comparator, Comparable, Default.comparator
Constructor Detail

UseDefer

public UseDefer()
Method Detail

use

public Temp[] use(HCE hce)
Return all the Temps used by hce.


def

public Temp[] def(HCE hce)
Return all the Temps defined by hce.


useC

public abstract Collection<Temp> useC(HCE hce)
Returns a Collection of all the Temps that may be read by hce.


defC

public abstract Collection<Temp> defC(HCE hce)
Returns a Collection of all the Temps that are defined by hce.