Class FILiveObjectAnalysis
java.lang.Object
com.ibm.wala.escape.FILiveObjectAnalysis
- All Implemented Interfaces:
ILiveObjectAnalysis
A simple liveness analysis based on flow-insensitive pointer analysis.
-
Constructor Summary
ConstructorDescriptionFILiveObjectAnalysis
(CallGraph callGraph, HeapGraph<?> heapGraph, boolean expensiveIntraproceduralAnalysis) -
Method Summary
Modifier and TypeMethodDescriptionboolean
boolean
mayBeLive
(InstanceKey ik, CGNode m, int instructionIndex) boolean
mayBeLive
(InstanceKey ik, CGNode m, IntSet instructionIndices)
-
Constructor Details
-
FILiveObjectAnalysis
-
-
Method Details
-
mayBeLive
public boolean mayBeLive(CGNode allocMethod, int allocPC, CGNode m, int instructionIndex) throws IllegalArgumentException, WalaException - Specified by:
mayBeLive
in interfaceILiveObjectAnalysis
- Parameters:
allocMethod
- a method which holds an allocation siteallocPC
- bytecode index of allocation sitem
- method in questioninstructionIndex
- index of an instruction in SSA IR. in m. if -1, it is interpreted as a wildcard meaning "any statement"- Returns:
- true if an object allocated at the allocation site <allocMethod,allocPC> may be live immediately after the statement <m,instructionIndex>
- Throws:
IllegalArgumentException
WalaException
-
mayBeLive
- Specified by:
mayBeLive
in interfaceILiveObjectAnalysis
- Parameters:
ik
- an instance keym
- method in questioninstructionIndex
- index of an SSA instruction- Returns:
- true if an object allocated at the allocation site <allocMethod,allocPC> may be live immediately after the statement <m,instructionIndex>
-
mayBeLive
- Specified by:
mayBeLive
in interfaceILiveObjectAnalysis
- Parameters:
ik
- an instance keym
- method in questioninstructionIndices
- indices of instructions in SSA IR.- Returns:
- true if an object allocated at the allocation site <allocMethod,allocPC> may be live immediately after the statement <m,instructionIndex> for any instructionIndex in the set
-