chord.analyses.inst
Class RelMobjVarAsgnInst
java.lang.Object
chord.bddbddb.Rel
chord.project.analyses.ProgramRel
chord.analyses.inst.RelMobjVarAsgnInst
- All Implemented Interfaces:
- ICastInstVisitor, IClassVisitor, IMethodVisitor, IMoveInstVisitor, IPhiInstVisitor, ITask
public class RelMobjVarAsgnInst
- extends ProgramRel
- implements IMoveInstVisitor, IPhiInstVisitor, ICastInstVisitor
Relation containing each tuple (m,v1,v2) such that method m
contains a statement of the form v1 = v2.
Includes cast and phi instructions as moves.
- Author:
- Mayur Naik (mhn@cs.stanford.edu)
| Nested classes/interfaces inherited from class chord.bddbddb.Rel |
Rel.AryNIterable, Rel.HextIterable<T0,T1,T2,T3,T4,T5>, Rel.IntAryNIterable, Rel.IntHextIterable, Rel.IntPairIterable, Rel.IntPentIterable, Rel.IntQuadIterable, Rel.IntTrioIterable, Rel.PairIterable<T0,T1>, Rel.PentIterable<T0,T1,T2,T3,T4>, Rel.QuadIterable<T0,T1,T2,T3>, Rel.RelView, Rel.SelfIterable<T>, Rel.TrioIterable<T0,T1,T2>, Rel.TupleIterator<T> |
|
Method Summary |
void |
visit(joeq.Class.jq_Class c)
Visits all classes in the program. |
void |
visit(joeq.Class.jq_Method m)
Visits all methods of all classes in the program. |
void |
visitCastInst(joeq.Compiler.Quad.Quad q)
Visits all cast assignment statements in all methods
in the program. |
void |
visitMoveInst(joeq.Compiler.Quad.Quad q)
Visits all copy assignment statements in all methods
in the program. |
void |
visitPhiInst(joeq.Compiler.Quad.Quad q)
Visits all phi statements in all methods in the program. |
| Methods inherited from class chord.bddbddb.Rel |
add, add, add, add, add, add, add, add, add, add, add, add, add, add, checkRange, checkRange, close, contains, contains, contains, contains, contains, contains, contains, contains, contains, getAry1ValTuples, getAry2IntTuples, getAry2ValTuples, getAry3IntTuples, getAry3ValTuples, getAry4IntTuples, getAry4ValTuples, getAry5IntTuples, getAry5ValTuples, getAry6IntTuples, getAry6ValTuples, getAryNIntTuples, getAryNValTuples, getDoms, getName, getSign, getView, initialize, isOpen, load, one, print, print, remove, remove, remove, remove, save, setDoms, setName, setSign, setSign, setSign, size, zero |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
RelMobjVarAsgnInst
public RelMobjVarAsgnInst()
visit
public void visit(joeq.Class.jq_Class c)
- Description copied from interface:
IClassVisitor
- Visits all classes in the program.
- Specified by:
visit in interface IClassVisitor
- Parameters:
c - A class.
visit
public void visit(joeq.Class.jq_Method m)
- Description copied from interface:
IMethodVisitor
- Visits all methods of all classes in the program.
- Specified by:
visit in interface IMethodVisitor
- Parameters:
m - A method.
visitMoveInst
public void visitMoveInst(joeq.Compiler.Quad.Quad q)
- Description copied from interface:
IMoveInstVisitor
- Visits all copy assignment statements in all methods
in the program.
- Specified by:
visitMoveInst in interface IMoveInstVisitor
- Parameters:
q - A copy assignment statement.
visitPhiInst
public void visitPhiInst(joeq.Compiler.Quad.Quad q)
- Description copied from interface:
IPhiInstVisitor
- Visits all phi statements in all methods in the program.
- Specified by:
visitPhiInst in interface IPhiInstVisitor
- Parameters:
q - A copy assignment statement.
visitCastInst
public void visitCastInst(joeq.Compiler.Quad.Quad q)
- Description copied from interface:
ICastInstVisitor
- Visits all cast assignment statements in all methods
in the program.
- Specified by:
visitCastInst in interface ICastInstVisitor
- Parameters:
q - A cast assignment statement.