harpoon.Analysis.Tree
Class CacheEquivalence

java.lang.Object
  extended by harpoon.Analysis.Tree.CacheEquivalence

public class CacheEquivalence
extends Object

CacheEquivalence creates tag-check equivalence classes for MEM operations in a Tree.

Version:
$Id: CacheEquivalence.java,v 1.5 2004/02/08 01:54:28 cananian Exp $
Author:
C. Scott Ananian <cananian@alumni.princeton.edu>

Constructor Summary
CacheEquivalence(Code code, ClassHierarchy ch)
          Creates a CacheEquivalence.
 
Method Summary
 boolean needs_tag_check(MEM mem)
          Returns 'true' if this operation requires a tag check.
 int num_using_this_tag(MEM mem)
          Returns the number of memory operations which share the same tag as this memory operation. 1 indicates no sharing possible.
 Set ops_using_this_tag(MEM mem)
          Returns all the MEM operations which use the tag defined by whose_tag_check(mem)
 MEM whose_tag_check(MEM mem)
          Returns the MEM operation which should have stored the necessary tag information for this MEM operation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CacheEquivalence

public CacheEquivalence(Code code,
                        ClassHierarchy ch)
Creates a CacheEquivalence.

Method Detail

num_using_this_tag

public int num_using_this_tag(MEM mem)
Returns the number of memory operations which share the same tag as this memory operation. 1 indicates no sharing possible.


needs_tag_check

public boolean needs_tag_check(MEM mem)
Returns 'true' if this operation requires a tag check. If ops_using_this_tag(mem) is also true, then you should store the result of the tag check some where for further use.


whose_tag_check

public MEM whose_tag_check(MEM mem)
Returns the MEM operation which should have stored the necessary tag information for this MEM operation.


ops_using_this_tag

public Set ops_using_this_tag(MEM mem)
Returns all the MEM operations which use the tag defined by whose_tag_check(mem)