cetus.analysis
Class AliasAnalysis

java.lang.Object
  extended by cetus.analysis.AnalysisPass
      extended by cetus.analysis.AliasAnalysis

public class AliasAnalysis
extends AnalysisPass

This analysis pass performs flow-insensitive anlias analysis and creates an alias map for the program.


Field Summary
 
Fields inherited from class cetus.analysis.AnalysisPass
program
 
Constructor Summary
AliasAnalysis(Program program)
           
 
Method Summary
 void displayAliasMap()
           
 java.util.Set get_alias_set(Statement cur_stmt, Symbol symbol)
          Returns the alias set for the given input symbol, which includes the input symbol itself.
 java.lang.String getPassName()
           
 boolean isAliased(Statement stmt, Symbol a, java.util.Set<Symbol> bset)
          Returns true if the given Symbol, a, is aliased to any symbol in the set of Symbols, bset.
 boolean isAliased(Statement stmt, Symbol a, Symbol b)
          Returns true if Symbol a is aliased to Symbol b Current implementation is flow-insentitive that the stmt input is ignored; user can provide a null for this.
 void start()
           
 
Methods inherited from class cetus.analysis.AnalysisPass
run, startAndCheck
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AliasAnalysis

public AliasAnalysis(Program program)
Method Detail

getPassName

public java.lang.String getPassName()
Specified by:
getPassName in class AnalysisPass

start

public void start()
Specified by:
start in class AnalysisPass

get_alias_set

public java.util.Set get_alias_set(Statement cur_stmt,
                                   Symbol symbol)
Returns the alias set for the given input symbol, which includes the input symbol itself. Current implementation is flow-insentitive that the stmt input is ignored; user can provide a null for this.


displayAliasMap

public void displayAliasMap()

isAliased

public boolean isAliased(Statement stmt,
                         Symbol a,
                         Symbol b)
Returns true if Symbol a is aliased to Symbol b Current implementation is flow-insentitive that the stmt input is ignored; user can provide a null for this.


isAliased

public boolean isAliased(Statement stmt,
                         Symbol a,
                         java.util.Set<Symbol> bset)
Returns true if the given Symbol, a, is aliased to any symbol in the set of Symbols, bset. Current implementation is flow-insentitive that the stmt input is ignored; user can provide a null for this.