protected static class AstSSAPropagationCallGraphBuilder.AstConstraintVisitor extends SSAPropagationCallGraphBuilder.ConstraintVisitor implements AstInstructionVisitor
| Modifier and Type | Class and Description |
|---|---|
protected static interface |
AstSSAPropagationCallGraphBuilder.AstConstraintVisitor.ReflectedFieldAction |
SSAPropagationCallGraphBuilder.ConstraintVisitor.DefaultInvariantComputer, SSAPropagationCallGraphBuilder.ConstraintVisitor.InvariantComputerbasicBlock, builder, du, ir, node, symbolTable, system| Constructor and Description |
|---|
AstConstraintVisitor(AstSSAPropagationCallGraphBuilder builder,
CGNode node) |
contentsAreInvariant, contentsAreInvariant, doVisitArrayLoad, doVisitArrayStore, getAnalysisCache, getBasicBlock, getClassHierarchy, getFilteredPointerKeyForLocal, getInstanceKeyForAllocation, getInstanceKeyForClassObject, getInstanceKeyForConstant, getInstanceKeyForMultiNewArray, getInstanceKeyForPEI, getInvariantContents, getInvariantContents, getOptions, getPointerKeyForArrayContents, getPointerKeyForExceptionalReturnValue, getPointerKeyForInstanceField, getPointerKeyForLocal, getPointerKeyForReturnValue, getPointerKeyForStaticField, getTargetForCall, hasNoInterestingUses, isRootType, processClassInitializer, processPutField, processPutStatic, setBasicBlock, visitArrayLoad, visitArrayStore, visitCheckCast, visitGet, visitGetCaughtException, visitGetInternal, visitInvoke, visitInvokeInternal, visitLoadMetadata, visitNew, visitPhi, visitPi, visitPutInternal, visitReturn, visitThrowvisitArrayLength, visitBinaryOp, visitComparison, visitConditionalBranch, visitConversion, visitGoto, visitInstanceof, visitMonitor, visitSwitch, visitUnaryOpclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitvisitArrayLength, visitArrayLoad, visitArrayStore, visitBinaryOp, visitCheckCast, visitComparison, visitConditionalBranch, visitConversion, visitGet, visitGetCaughtException, visitGoto, visitInstanceof, visitInvoke, visitLoadMetadata, visitMonitor, visitNew, visitPhi, visitPi, visitReturn, visitSwitch, visitThrow, visitUnaryOppublic AstConstraintVisitor(AstSSAPropagationCallGraphBuilder builder, CGNode node)
protected AstSSAPropagationCallGraphBuilder getBuilder()
getBuilder in class SSAPropagationCallGraphBuilder.ConstraintVisitorpublic PointerKey getPointerKeyForObjectCatalog(InstanceKey I)
public Iterator<PointerKey> getPointerKeysForReflectedFieldRead(InstanceKey I, InstanceKey F)
public Iterator<PointerKey> getPointerKeysForReflectedFieldWrite(InstanceKey I, InstanceKey F)
public void visitAstLexicalRead(AstLexicalRead instruction)
visitAstLexicalRead in interface AstInstructionVisitorpublic void visitAstLexicalWrite(AstLexicalWrite instruction)
visitAstLexicalWrite in interface AstInstructionVisitorpublic void visitAstGlobalRead(AstGlobalRead instruction)
visitAstGlobalRead in interface AstInstructionVisitorpublic void visitAstGlobalWrite(AstGlobalWrite instruction)
visitAstGlobalWrite in interface AstInstructionVisitorpublic void visitPut(SSAPutInstruction inst)
visitPut in interface SSAInstruction.IVisitorvisitPut in class SSAPropagationCallGraphBuilder.ConstraintVisitorpublic void visitAssert(AstAssertInstruction instruction)
visitAssert in interface AstInstructionVisitorpublic void visitEachElementHasNext(EachElementHasNextInstruction inst)
visitEachElementHasNext in interface AstInstructionVisitorpublic void visitEachElementGet(EachElementGetInstruction inst)
visitEachElementGet in interface AstInstructionVisitorpublic void visitIsDefined(AstIsDefinedInstruction inst)
visitIsDefined in interface AstInstructionVisitorpublic void visitEcho(AstEchoInstruction inst)
visitEcho in interface AstInstructionVisitorprotected void newFieldOperationFieldConstant(CGNode opNode, boolean isLoadOperation, AstSSAPropagationCallGraphBuilder.AstConstraintVisitor.ReflectedFieldAction action, int objVn, InstanceKey[] fieldsKeys)
protected void newFieldFullOperation(boolean isLoadOperation,
AstSSAPropagationCallGraphBuilder.AstConstraintVisitor.ReflectedFieldAction action,
PointerKey objKey,
PointerKey fieldKey)
protected void newFieldOperationOnlyFieldConstant(boolean isLoadOperation,
AstSSAPropagationCallGraphBuilder.AstConstraintVisitor.ReflectedFieldAction action,
PointerKey objKey,
InstanceKey[] fieldsKeys)
protected void newFieldOperationOnlyObjectConstant(boolean isLoadOperation,
AstSSAPropagationCallGraphBuilder.AstConstraintVisitor.ReflectedFieldAction action,
PointerKey fieldKey,
InstanceKey[] objKeys)
protected void newFieldOperationObjectAndFieldConstant(boolean isLoadOperation,
AstSSAPropagationCallGraphBuilder.AstConstraintVisitor.ReflectedFieldAction action,
InstanceKey[] objKeys,
InstanceKey[] fieldsKeys)
public void newFieldWrite(CGNode opNode, int objVn, int fieldsVn, int rhsVn)
public void newFieldWrite(CGNode opNode, int objVn, int fieldsVn, InstanceKey[] rhsFixedValues)
public void newFieldWrite(CGNode opNode, int objVn, InstanceKey[] fieldKeys, InstanceKey[] rhsValues)
public void newFieldWrite(CGNode opNode, int objVn, int fieldsVn, PointerKey rhs)
public void newFieldWrite(CGNode opNode, int objVn, InstanceKey[] fieldKeys, PointerKey rhs)
protected void newFieldRead(CGNode opNode, int objVn, int fieldsVn, int lhsVn)
protected void newFieldRead(CGNode opNode, int objVn, int fieldsVn, PointerKey lhs)