Package com.ibm.wala.cast.ipa.callgraph
Class CrossLanguageCallGraph.CrossLanguageFakeRoot
- java.lang.Object
-
- com.ibm.wala.classLoader.SyntheticMethod
-
- com.ibm.wala.ipa.callgraph.impl.AbstractRootMethod
-
- com.ibm.wala.cast.ipa.callgraph.AstCallGraph.AstFakeRoot
-
- com.ibm.wala.cast.ipa.callgraph.AstCallGraph.ScriptFakeRoot
-
- com.ibm.wala.cast.ipa.callgraph.CrossLanguageCallGraph.CrossLanguageFakeRoot
-
- All Implemented Interfaces:
IMember
,IMethod
,ContextItem
,IClassHierarchyDweller
- Enclosing class:
- CrossLanguageCallGraph
public class CrossLanguageCallGraph.CrossLanguageFakeRoot extends AstCallGraph.ScriptFakeRoot
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.ibm.wala.ipa.callgraph.ContextItem
ContextItem.Value<T>
-
Nested classes/interfaces inherited from interface com.ibm.wala.classLoader.IMethod
IMethod.SourcePosition
-
-
Field Summary
-
Fields inherited from class com.ibm.wala.ipa.callgraph.impl.AbstractRootMethod
cache, cha, insts, nextLocal, statements
-
Fields inherited from class com.ibm.wala.classLoader.SyntheticMethod
declaringClass, NO_STATEMENTS, resolvedMethod
-
-
Constructor Summary
Constructors Constructor Description CrossLanguageFakeRoot(IClass declaringClass, IClassHierarchy cha, AnalysisOptions options, AnalysisCache cache)
CrossLanguageFakeRoot(IClassHierarchy cha, AnalysisOptions options, AnalysisCache cache)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SSANewInstruction
addAllocation(TypeReference type)
Add a New statement of the given type Side effect: adds call to default constructor of given type if one exists.int
addCheckcast(TypeReference[] type, int rv, boolean isPEI)
SSAAbstractInvokeInstruction
addDirectCall(int functionVn, int[] argVns, CallSiteReference callSite)
int
addGetInstance(FieldReference ref, int object)
int
addGetStatic(FieldReference ref)
AstLexicalRead
addGlobalRead(TypeReference type, String name)
SSAInvokeInstruction
addInvocation(int[] params, CallSiteReference site)
SSAInvokeInstruction
addInvocationInternal(int[] params, CallSiteReference site)
int
addPhi(TypeReference type, int[] values)
-
Methods inherited from class com.ibm.wala.cast.ipa.callgraph.AstCallGraph.AstFakeRoot
makeControlFlowGraph
-
Methods inherited from class com.ibm.wala.ipa.callgraph.impl.AbstractRootMethod
add1DArrayAllocation, addAllocationWithoutCtor, addGetArrayField, addLocal, addPhi, addReturn, addSetArrayField, addSetInstance, addSetStatic, getInterpreter, getStatements, getValueNumberForByteConstant, getValueNumberForCharConstant, getValueNumberForIntConstant, makeIR
-
Methods inherited from class com.ibm.wala.classLoader.SyntheticMethod
equals, getAnnotations, getBytecodeStream, getClassHierarchy, getDeclaredExceptions, getDeclaringClass, getDescriptor, getLineNumber, getLocalVariableName, getMaxLocals, getMaxStackHeight, getName, getNumberOfParameters, getParameterSourcePosition, getParameterType, getPoison, getPoisonLevel, getReference, getReturnType, getSelector, getSignature, getSourcePosition, getStatements, hasExceptionHandler, hashCode, hasLocalVariableTable, hasPoison, isAbstract, isBridge, isClinit, isFactoryMethod, isFinal, isInit, isNative, isPrivate, isProtected, isPublic, isStatic, isSynchronized, isSynthetic, toString
-
-
-
-
Constructor Detail
-
CrossLanguageFakeRoot
public CrossLanguageFakeRoot(IClass declaringClass, IClassHierarchy cha, AnalysisOptions options, AnalysisCache cache)
-
CrossLanguageFakeRoot
public CrossLanguageFakeRoot(IClassHierarchy cha, AnalysisOptions options, AnalysisCache cache)
-
-
Method Detail
-
addPhi
public int addPhi(TypeReference type, int[] values)
-
addGetInstance
public int addGetInstance(FieldReference ref, int object)
- Overrides:
addGetInstance
in classAbstractRootMethod
-
addGetStatic
public int addGetStatic(FieldReference ref)
- Overrides:
addGetStatic
in classAbstractRootMethod
-
addCheckcast
public int addCheckcast(TypeReference[] type, int rv, boolean isPEI)
- Overrides:
addCheckcast
in classAbstractRootMethod
-
addAllocation
public SSANewInstruction addAllocation(TypeReference type)
Description copied from class:AbstractRootMethod
Add a New statement of the given type Side effect: adds call to default constructor of given type if one exists.- Overrides:
addAllocation
in classAbstractRootMethod
- Returns:
- instruction added, or null
-
addInvocation
public SSAInvokeInstruction addInvocation(int[] params, CallSiteReference site)
- Overrides:
addInvocation
in classAbstractRootMethod
- Returns:
- the invoke instructions added by this operation
-
addInvocationInternal
public SSAInvokeInstruction addInvocationInternal(int[] params, CallSiteReference site)
-
addGlobalRead
public AstLexicalRead addGlobalRead(TypeReference type, String name)
- Overrides:
addGlobalRead
in classAstCallGraph.AstFakeRoot
-
addDirectCall
public SSAAbstractInvokeInstruction addDirectCall(int functionVn, int[] argVns, CallSiteReference callSite)
- Specified by:
addDirectCall
in classAstCallGraph.ScriptFakeRoot
-
-