ibis.satin.impl.syncrewriter.analyzer.controlflow
Class SpawnableCallAnalysis

java.lang.Object
  extended by ibis.satin.impl.syncrewriter.analyzer.controlflow.SpawnableCallAnalysis

public class SpawnableCallAnalysis
extends Object

This class represents an analysis of a spawnable call.


Constructor Summary
SpawnableCallAnalysis(SpawnableCall spawnableCall, BasicBlockGraph basicBlockGraph, Debug d)
          Instantiates a spawnable call analysys from a spawnable call and a graph of basic blocks.
 
Method Summary
 ArrayList<Path> getEndingPaths()
          Returns all the ending paths from the spawnable call.
 Path getLatestCommonSubPath()
          Returns the latest common subpath for store load paths.
 ArrayList<StoreLoadPath> getStoreLoadPaths()
          Returns the store-to-load paths for this spawnable call.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpawnableCallAnalysis

public SpawnableCallAnalysis(SpawnableCall spawnableCall,
                             BasicBlockGraph basicBlockGraph,
                             Debug d)
Instantiates a spawnable call analysys from a spawnable call and a graph of basic blocks.

Parameters:
spawnableCall - The spawnable call to be analyzed.
basicBlockGraph - The basic block graph that helps analyzing.
d - A debug instance to write debug information to.
Method Detail

getLatestCommonSubPath

public Path getLatestCommonSubPath()
Returns the latest common subpath for store load paths. If there are no store-to-load paths, the latest common subpaths of all ending paths is taken.

Returns:
The latest common subpath.

getStoreLoadPaths

public ArrayList<StoreLoadPath> getStoreLoadPaths()
Returns the store-to-load paths for this spawnable call.

Returns:
The store to load paths

getEndingPaths

public ArrayList<Path> getEndingPaths()
Returns all the ending paths from the spawnable call.

Returns:
the ending paths.


The Ibis project