86 assert(SVFUtil::isa<FlowSensitive>(
fspta) &&
"not an flow-sensitive pta pass!! what else??");
102 u32_t fiObjNumber = 0;
103 u32_t fsObjNumber = 0;
107 NodeID nodeId = nodeIt->first;
108 PAGNode* pagNode = nodeIt->second;
109 if(SVFUtil::isa<ObjVar>(pagNode))
113 if (nodeSet.insert(baseId).second)
126 unsigned numOfCopy = 0;
127 unsigned numOfStore = 0;
130 for (; svfgNodeIt != svfgNodeEit; ++svfgNodeIt)
132 SVFGNode* svfgNode = svfgNodeIt->second;
133 if (SVFUtil::isa<CopySVFGNode>(svfgNode))
135 else if (SVFUtil::isa<StoreSVFGNode>(svfgNode))
void statAddrVarPtsSize()
u32_t numOfProcessedLoad
Number of processed Phi node.
u32_t numOfProcessedCopy
Number of processed Addr node.
double gepTime
time of handling gep edges
double indirectPropaTime
time of points-to propagation of top-level pointers
double addrTime
time of handling address edges
double solveTime
time of solve.
u32_t numOfProcessedStore
Number of processed Load node.
double storeTime
time of store edges
double copyTime
time of handling copy edges
u32_t numOfProcessedGep
Number of processed Copy node.
u32_t maxSCCSize
Number of processed mssa node.
double loadTime
time of load edges
u32_t numOfProcessedActualParam
Number of processed Store node.
u32_t numOfProcessedPhi
Number of processed Gep node.
double propagationTime
time of points-to propagation.
u32_t numOfProcessedFormalRet
Number of processed actual param node.
double directPropaTime
time of points-to propagation of address-taken objects
double processTime
time of processNode.
u32_t numOfProcessedAddr
Statistics.
double phiTime
time of phi nodes.
double sccTime
time of SCC detection.
double updateTime
time of strong/weak updates.
u32_t numOfProcessedMSSANode
Number of processed formal ret node.
double updateCallGraphTime
time of updating call graph
iterator begin()
Iterators.
IDToNodeMapTy::const_iterator const_iterator
u32_t getValueNodeNum() const
u32_t getObjectNodeNum() const
SymID getId() const
Get the memory object id.
bool isFieldInsensitive() const
Return true if its field limit is 0.
void performStat() override
u32_t getNumOfResolvedIndCallEdge() const
Return number of resolved indirect call edges.
u32_t getFieldObjNodeNum() const
u32_t getFieldValNodeNum() const
Node and edge statistics.
const MemObj * getBaseObj(NodeID id) const
virtual void printStat(std::string str="")
VFGNodeIDToNodeMapTy::iterator iterator
u32_t numOfIteration
num of iterations during constraint solving
std::unordered_set< Key, Hash, KeyEqual, Allocator > Set