soot.jimple.toolkits.thread
Class ThreadLocalObjectsAnalysis

java.lang.Object
  extended by soot.jimple.toolkits.infoflow.LocalObjectsAnalysis
      extended by soot.jimple.toolkits.thread.ThreadLocalObjectsAnalysis
All Implemented Interfaces:
IThreadLocalObjectsAnalysis

public class ThreadLocalObjectsAnalysis
extends LocalObjectsAnalysis
implements IThreadLocalObjectsAnalysis


Field Summary
 
Fields inherited from class soot.jimple.toolkits.infoflow.LocalObjectsAnalysis
dfa
 
Constructor Summary
ThreadLocalObjectsAnalysis(MhpTester mhp)
           
 
Method Summary
 List escapesThrough(Value sharedValue, SootMethod containingMethod)
          Returns a list of thread-shared sources and sinks.
 boolean hasNonThreadLocalEffects(SootMethod containingMethod, InvokeExpr ie)
           
 boolean isObjectThreadLocal(Value localOrRef, SootMethod sm)
           
protected  ClassLocalObjectsAnalysis newClassLocalObjectsAnalysis(LocalObjectsAnalysis loa, InfoFlowAnalysis dfa, UseFinder uf, SootClass sc)
           
 void precompute()
           
 
Methods inherited from class soot.jimple.toolkits.infoflow.LocalObjectsAnalysis
getAllMethodsForClass, getClassLocalObjectsAnalysis, getNextCallChainBetween, getNextCallChainBetween, hasNonLocalEffects, isFieldLocalToParent, isObjectLocalToContext, isObjectLocalToParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ThreadLocalObjectsAnalysis

public ThreadLocalObjectsAnalysis(MhpTester mhp)
Method Detail

precompute

public void precompute()

newClassLocalObjectsAnalysis

protected ClassLocalObjectsAnalysis newClassLocalObjectsAnalysis(LocalObjectsAnalysis loa,
                                                                 InfoFlowAnalysis dfa,
                                                                 UseFinder uf,
                                                                 SootClass sc)
Overrides:
newClassLocalObjectsAnalysis in class LocalObjectsAnalysis

isObjectThreadLocal

public boolean isObjectThreadLocal(Value localOrRef,
                                   SootMethod sm)
Specified by:
isObjectThreadLocal in interface IThreadLocalObjectsAnalysis

hasNonThreadLocalEffects

public boolean hasNonThreadLocalEffects(SootMethod containingMethod,
                                        InvokeExpr ie)

escapesThrough

public List escapesThrough(Value sharedValue,
                           SootMethod containingMethod)
Returns a list of thread-shared sources and sinks. Returns empty list if not actually a shared value.