coins.simd
Class LirDefUseRel

java.lang.Object
  extended bycoins.simd.LirDefUseRel

public class LirDefUseRel
extends java.lang.Object

Class for a def-use relation


Constructor Summary
LirDefUseRel()
          Constructs an LirDefUseRel object
 
Method Summary
 void add(LirNode e1, LirNode e2)
          Adds elements to a def-use table
 void build(java.util.Vector lirs)
          Builds a def-use relation from L-expressions
 void decompose(LirNode e)
          Decomposes a LirNode and adds to defTable, useTable
 java.util.Vector getChildren(LirNode e)
          Retrieves a L-expression related to given L-expression in def-userelation
 java.util.Vector getDefLirs(LirNode e)
          Retrieves L-expressions related to a given L-expression in defTable
 java.util.Vector getParents(LirNode e)
          Retrieves a L-expression related to given L-expression in use-def relation
 Relation getRelation()
          Returns a def-use relation
 void getRoots(java.util.List ls)
          Retrieves L-expressions which is not related to any L-expression in def-use relation
 java.util.Vector getUseLirs(LirNode e)
          Retrieves L-expressions related to a given L-expression in useTable
 void mkDefUseRel(java.util.Vector lirs)
          Makes a def-use relation from L-expressions
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LirDefUseRel

public LirDefUseRel()
Constructs an LirDefUseRel object

Method Detail

mkDefUseRel

public void mkDefUseRel(java.util.Vector lirs)
                 throws SimdOptException
Makes a def-use relation from L-expressions

Parameters:
lirs - Vector
Throws:
SimdOptException

getRelation

public Relation getRelation()
Returns a def-use relation

Returns:
Relation

add

public void add(LirNode e1,
                LirNode e2)
         throws SimdOptException
Adds elements to a def-use table

Parameters:
e1 - LirNode
e2 - LirNode
Throws:
SimdOptException

decompose

public void decompose(LirNode e)
               throws SimdOptException
Decomposes a LirNode and adds to defTable, useTable

Parameters:
e - LirNode
Throws:
SimdOptException

build

public void build(java.util.Vector lirs)
           throws SimdOptException
Builds a def-use relation from L-expressions

Parameters:
lirs - Vector
Throws:
SimdOptException

getDefLirs

public java.util.Vector getDefLirs(LirNode e)
Retrieves L-expressions related to a given L-expression in defTable

Parameters:
e - LirNode
Returns:
Vector

getUseLirs

public java.util.Vector getUseLirs(LirNode e)
Retrieves L-expressions related to a given L-expression in useTable

Parameters:
e - LirNode
Returns:
Vector

getParents

public java.util.Vector getParents(LirNode e)
Retrieves a L-expression related to given L-expression in use-def relation

Parameters:
e - LirNode
Returns:
Vector

getChildren

public java.util.Vector getChildren(LirNode e)
Retrieves a L-expression related to given L-expression in def-userelation

Parameters:
e - LirNode
Returns:
Vector

getRoots

public void getRoots(java.util.List ls)
Retrieves L-expressions which is not related to any L-expression in def-use relation

Parameters:
ls - List