svf-tools 1.0.448 → 1.0.451
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +5 -5
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +16 -16
- package/SVF-doxygen/html/html/Andersen_8h_source.html +10 -10
- package/SVF-doxygen/html/html/Annotator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/BDDExpr_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/BDDExpr_8h_source.html +5 -5
- package/SVF-doxygen/html/html/BreakConstantExpr_8cpp.html +2 -2
- package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/BreakConstantExpr_8h_source.html +5 -5
- package/SVF-doxygen/html/html/CFGNormalizer_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CFGNormalizer_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CFLAlias_8h_source.html +6 -6
- package/SVF-doxygen/html/html/CFLGrammar_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/CFLGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +28 -28
- package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +5 -5
- package/SVF-doxygen/html/html/CHG_8cpp.html +3 -3
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +13 -13
- package/SVF-doxygen/html/html/CHG_8h_source.html +6 -6
- package/SVF-doxygen/html/html/CPPUtil_8cpp.html +2 -2
- package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +24 -24
- package/SVF-doxygen/html/html/CPPUtil_8h_source.html +4 -4
- package/SVF-doxygen/html/html/CSC_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/CSC_8h_source.html +4 -4
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +6 -6
- package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ConsGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/ConsG_8h_source.html +5 -5
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +6 -6
- package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CoreBitVector_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CxtStmt_8h_source.html +5 -5
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +30 -30
- package/SVF-doxygen/html/html/DCHG_8h_source.html +15 -15
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/DDAClient_8h_source.html +3 -3
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/DDAPass_8h_source.html +6 -6
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/DDAStat_8h_source.html +3 -3
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +11 -11
- package/SVF-doxygen/html/html/DPItem_8h_source.html +5 -5
- package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +11 -11
- package/SVF-doxygen/html/html/ExeState_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/ExeState_8h_source.html +4 -4
- package/SVF-doxygen/html/html/ExtAPI_8h_source.html +23 -23
- package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/FSMPTA_8h_source.html +4 -4
- package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +5 -5
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp.html +3 -3
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +5 -5
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +4 -4
- package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/GenericGraph_8h_source.html +5 -5
- package/SVF-doxygen/html/html/GrammarBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/GrammarBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Graph2Json_8cpp.html +1 -0
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +3 -4
- package/SVF-doxygen/html/html/Graph2Json_8h_source.html +5 -5
- package/SVF-doxygen/html/html/GraphPrinter_8h.html +1 -0
- package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +6 -7
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +13 -13
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +3 -3
- package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +5 -5
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +7 -7
- package/SVF-doxygen/html/html/ICFGStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/ICFG_8h_source.html +5 -5
- package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +14 -14
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +6 -6
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +15 -15
- package/SVF-doxygen/html/html/LLVMModule_8h.html +2 -1
- package/SVF-doxygen/html/html/LLVMModule_8h_source.html +46 -45
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +40 -40
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +39 -39
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +3 -3
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +6 -6
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +17 -17
- package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +11 -11
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +15 -15
- package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +7 -7
- package/SVF-doxygen/html/html/MHP_8cpp.html +3 -3
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +26 -26
- package/SVF-doxygen/html/html/MHP_8h_source.html +10 -10
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +7 -7
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +9 -9
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +22 -22
- package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +12 -12
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/MTA_8h_source.html +8 -8
- package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MemPartition_8h_source.html +4 -4
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +19 -19
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +9 -9
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +17 -17
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +9 -9
- package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +3 -3
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/OfflineConsG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/PCG_8h_source.html +6 -6
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +7 -7
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/PTAStat_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +19 -19
- package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +12 -12
- package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +3 -3
- package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +17 -18
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +17 -17
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +22 -22
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +9 -9
- package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/PointsTo_8h_source.html +3 -3
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/ProgSlice_8h_source.html +4 -4
- package/SVF-doxygen/html/html/SCC_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h.html +79 -42
- package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h_source.html +44 -42
- package/SVF-doxygen/html/html/SVFBasicTypes_8h.html +22 -25
- package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +73 -74
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +5 -5
- package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +8 -8
- package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFGStat_8h_source.html +4 -4
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +46 -54
- package/SVF-doxygen/html/html/SVFG_8h_source.html +46 -48
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +54 -54
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +49 -49
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +9 -9
- package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFModule_8h_source.html +6 -6
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +9 -9
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +15 -15
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +23 -23
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +8 -8
- package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SaberAnnotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +6 -5
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +4 -4
- package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Steensgaard_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +38 -38
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +6 -6
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +17 -17
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +10 -10
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +21 -21
- package/SVF-doxygen/html/html/TCT_8h_source.html +20 -20
- package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +11 -10
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +6 -6
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +27 -27
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +5 -5
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h.html +1 -8
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +117 -120
- package/SVF-doxygen/html/html/VFGEdge_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +8 -8
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/VFG_8h_source.html +6 -6
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +6 -6
- package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +2 -2
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/WPAPass_8h_source.html +8 -8
- package/SVF-doxygen/html/html/WPASolver_8h_source.html +3 -3
- package/SVF-doxygen/html/html/WPAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WorkList_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Z3Expr_8h_source.html +1 -1
- package/SVF-doxygen/html/html/cfl_8cpp.html +2 -2
- package/SVF-doxygen/html/html/cfl_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +3 -2
- package/SVF-doxygen/html/html/classSVF_1_1BDDExprManager.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +34 -35
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +53 -53
- package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1CSC.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +41 -41
- package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CondVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +25 -25
- package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +67 -67
- package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +28 -28
- package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1ExtAPI-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +51 -51
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +30 -30
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +36 -36
- package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +15 -16
- package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IteratedDominanceFrontier.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +132 -132
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1LoadMU-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +69 -69
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +55 -55
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +42 -42
- package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +44 -44
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +42 -42
- package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MergeFunctionRets.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +25 -25
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PTACFInfoBuilder.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +42 -42
- package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +33 -33
- package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +31 -31
- package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +154 -155
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +132 -166
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +177 -178
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +17 -19
- package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +147 -147
- package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +33 -33
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreCHI-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +63 -63
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +50 -50
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +34 -34
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +28 -28
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +1 -1
- package/SVF-doxygen/html/html/classllvm_1_1GraphPrinter.html +7 -8
- package/SVF-doxygen/html/html/classllvm_1_1generic__bridge__gep__type__iterator.html +3 -3
- package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
- package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/functions_f.html +14 -17
- package/SVF-doxygen/html/html/functions_func_f.html +0 -3
- package/SVF-doxygen/html/html/functions_func_g.html +6 -6
- package/SVF-doxygen/html/html/functions_func_s.html +1 -1
- package/SVF-doxygen/html/html/functions_g.html +6 -6
- package/SVF-doxygen/html/html/functions_i.html +4 -4
- package/SVF-doxygen/html/html/functions_n.html +4 -4
- package/SVF-doxygen/html/html/functions_o.html +3 -3
- package/SVF-doxygen/html/html/functions_p.html +7 -7
- package/SVF-doxygen/html/html/functions_s.html +13 -13
- package/SVF-doxygen/html/html/functions_t.html +5 -5
- package/SVF-doxygen/html/html/functions_type_t.html +2 -2
- package/SVF-doxygen/html/html/functions_v.html +6 -6
- package/SVF-doxygen/html/html/functions_vars_i.html +1 -1
- package/SVF-doxygen/html/html/globals_l.html +3 -0
- package/SVF-doxygen/html/html/globals_s.html +3 -3
- package/SVF-doxygen/html/html/globals_type.html +6 -0
- package/SVF-doxygen/html/html/globals_u.html +5 -2
- package/SVF-doxygen/html/html/mta_8cpp.html +1 -1
- package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/namespaceSVF.html +119 -191
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +96 -96
- package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +44 -44
- package/SVF-doxygen/html/html/namespacemembers_l.html +0 -3
- package/SVF-doxygen/html/html/namespacemembers_s.html +0 -3
- package/SVF-doxygen/html/html/namespacemembers_t.html +0 -3
- package/SVF-doxygen/html/html/namespacemembers_type.html +0 -12
- package/SVF-doxygen/html/html/namespacemembers_u.html +0 -3
- package/SVF-doxygen/html/html/saber_8cpp.html +1 -1
- package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/search/all_10.js +6 -6
- package/SVF-doxygen/html/html/search/all_13.js +9 -10
- package/SVF-doxygen/html/html/search/all_14.js +7 -8
- package/SVF-doxygen/html/html/search/all_15.js +2 -2
- package/SVF-doxygen/html/html/search/all_16.js +2 -2
- package/SVF-doxygen/html/html/search/all_6.js +0 -1
- package/SVF-doxygen/html/html/search/all_7.js +2 -2
- package/SVF-doxygen/html/html/search/all_9.js +2 -2
- package/SVF-doxygen/html/html/search/all_c.js +2 -2
- package/SVF-doxygen/html/html/search/all_d.js +1 -1
- package/SVF-doxygen/html/html/search/all_e.js +4 -4
- package/SVF-doxygen/html/html/search/all_f.js +2 -2
- package/SVF-doxygen/html/html/search/functions_10.js +1 -1
- package/SVF-doxygen/html/html/search/functions_5.js +0 -1
- package/SVF-doxygen/html/html/search/functions_6.js +2 -2
- package/SVF-doxygen/html/html/search/typedefs_11.js +0 -1
- package/SVF-doxygen/html/html/search/typedefs_12.js +1 -2
- package/SVF-doxygen/html/html/search/typedefs_13.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_b.js +1 -1
- package/SVF-doxygen/html/html/search/variables_14.js +3 -3
- package/SVF-doxygen/html/html/search/variables_15.js +1 -1
- package/SVF-doxygen/html/html/search/variables_9.js +1 -1
- package/SVF-doxygen/html/html/search/variables_e.js +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1Hash.html +3 -3
- package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01NodePair_01_4.html +3 -3
- package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01std_1_1pair_3_01S_00_01T_01_4_01_4.html +5 -5
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +24 -24
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +4 -4
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1SVFG_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CondStdSet_3_01Element_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtDPItem_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtStmt_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1ExeState_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1LocationSet_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1StmtDPItem_3_01LocCond_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01llvm_1_1SparseBitVector_3_01N_01_4_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +3 -3
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +5 -5
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/wpa_8cpp.html +1 -1
- package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
- package/include/Graphs/GraphPrinter.h +1 -0
- package/include/Graphs/SVFG.h +0 -5
- package/include/MSSA/MSSAMuChi.h +2 -2
- package/include/SABER/SaberCheckerAPI.h +1 -1
- package/include/SVF-FE/BasicTypes.h +4 -0
- package/include/SVF-FE/LLVMModule.h +1 -0
- package/include/Util/BasicTypes.h +0 -4
- package/include/Util/ExtAPI.h +2 -3
- package/include/Util/SVFBasicTypes.h +0 -2
- package/include/Util/ThreadAPI.h +2 -2
- package/lib/Graphs/SVFG.cpp +0 -22
- package/lib/Graphs/VFG.cpp +1 -1
- package/lib/MemoryModel/PointerAnalysisImpl.cpp +14 -16
- package/lib/SABER/SaberSVFGBuilder.cpp +2 -2
- package/lib/SVF-FE/Graph2Json.cpp +3 -1
- package/lib/SVF-FE/LLVMUtil.cpp +2 -0
- package/lib/Util/ThreadAPI.cpp +4 -4
- package/package.json +1 -1
|
@@ -70,7 +70,7 @@ $(function() {
|
|
|
70
70
|
<div class="ttc" id="classSVF_1_1AliasDDAClient_html_a3c24763f943ae27f93b2be64a81ab488"><div class="ttname"><a href="classSVF_1_1AliasDDAClient.html#a3c24763f943ae27f93b2be64a81ab488">SVF::AliasDDAClient::PAGNodeSet</a></div><div class="ttdeci">OrderedSet< const PAGNode * > PAGNodeSet</div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00125">DDAClient.h:125</a></div></div>
|
|
71
71
|
<div class="ttc" id="classSVF_1_1AliasDDAClient_html_a246448efd1ff5da683a6ffe9f759e282"><div class="ttname"><a href="classSVF_1_1AliasDDAClient.html#a246448efd1ff5da683a6ffe9f759e282">SVF::AliasDDAClient::loadSrcNodes</a></div><div class="ttdeci">PAGNodeSet loadSrcNodes</div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00138">DDAClient.h:138</a></div></div>
|
|
72
72
|
<div class="ttc" id="classSVF_1_1FunptrDDAClient_html"><div class="ttname"><a href="classSVF_1_1FunptrDDAClient.html">SVF::FunptrDDAClient</a></div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00102">DDAClient.h:102</a></div></div>
|
|
73
|
-
<div class="ttc" id="namespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set< Key, Compare, Allocator > OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
73
|
+
<div class="ttc" id="namespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set< Key, Compare, Allocator > OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00112">SVFBasicTypes.h:112</a></div></div>
|
|
74
74
|
<div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00019">MTAResultValidator.h:19</a></div></div>
|
|
75
75
|
<div class="ttc" id="classSVF_1_1FunptrDDAClient_html_a5aae3bed289371605ad831ae5a6ad6b5"><div class="ttname"><a href="classSVF_1_1FunptrDDAClient.html#a5aae3bed289371605ad831ae5a6ad6b5">SVF::FunptrDDAClient::FunptrDDAClient</a></div><div class="ttdeci">FunptrDDAClient(SVFModule *module)</div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00108">DDAClient.h:108</a></div></div>
|
|
76
76
|
<div class="ttc" id="classSVF_1_1DDAClient_html_a76b4c50a1051ff7c0b162b55473de028"><div class="ttname"><a href="classSVF_1_1DDAClient.html#a76b4c50a1051ff7c0b162b55473de028">SVF::DDAClient::collectWPANum</a></div><div class="ttdeci">virtual void collectWPANum(SVFModule *)</div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00080">DDAClient.h:80</a></div></div>
|
|
@@ -101,7 +101,7 @@ $(function() {
|
|
|
101
101
|
<div class="ttc" id="PointerAnalysisImpl_8h_html"><div class="ttname"><a href="PointerAnalysisImpl_8h.html">PointerAnalysisImpl.h</a></div></div>
|
|
102
102
|
<div class="ttc" id="classSVF_1_1DDAClient_html_aa8a67c60ec0395c9cfae178dcff638a8"><div class="ttname"><a href="classSVF_1_1DDAClient.html#aa8a67c60ec0395c9cfae178dcff638a8">SVF::DDAClient::solveAll</a></div><div class="ttdeci">bool solveAll</div><div class="ttdoc">TRUE if all top level pointers are being queried. </div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00095">DDAClient.h:95</a></div></div>
|
|
103
103
|
<div class="ttc" id="namespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode </div><div class="ttdef"><b>Definition:</b> <a href="CFGNormalizer_8h_source.html#l00035">CFGNormalizer.h:35</a></div></div>
|
|
104
|
-
<div class="ttc" id="namespaceSVF_html_a3c2bd95727ec0d9c55c631b6617026c8"><div class="ttname"><a href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">SVF::OrderedNodeSet</a></div><div class="ttdeci">OrderedSet< NodeID > OrderedNodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
104
|
+
<div class="ttc" id="namespaceSVF_html_a3c2bd95727ec0d9c55c631b6617026c8"><div class="ttname"><a href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">SVF::OrderedNodeSet</a></div><div class="ttdeci">OrderedSet< NodeID > OrderedNodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00120">SVFBasicTypes.h:120</a></div></div>
|
|
105
105
|
<div class="ttc" id="classSVF_1_1FunptrDDAClient_html_a4bfdbce441544250dce033b8fb38fc7a"><div class="ttname"><a href="classSVF_1_1FunptrDDAClient.html#a4bfdbce441544250dce033b8fb38fc7a">SVF::FunptrDDAClient::~FunptrDDAClient</a></div><div class="ttdeci">~FunptrDDAClient()</div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00109">DDAClient.h:109</a></div></div>
|
|
106
106
|
<div class="ttc" id="classSVF_1_1DDAClient_html_a3d0f732e284f3237287b375582c0aa88"><div class="ttname"><a href="classSVF_1_1DDAClient.html#a3d0f732e284f3237287b375582c0aa88">SVF::DDAClient::setQuery</a></div><div class="ttdeci">void setQuery(NodeID ptr)</div><div class="ttdoc">Set pointer to be queried by DDA analysis. </div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00066">DDAClient.h:66</a></div></div>
|
|
107
107
|
<div class="ttc" id="classSVF_1_1DDAClient_html_a3b202f9a70b6e23c06a15556d23d245e"><div class="ttname"><a href="classSVF_1_1DDAClient.html#a3b202f9a70b6e23c06a15556d23d245e">SVF::DDAClient::answerQueries</a></div><div class="ttdeci">virtual void answerQueries(PointerAnalysis *pta)</div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8cpp_source.html#l00025">DDAClient.cpp:25</a></div></div>
|
|
@@ -116,7 +116,7 @@ $(function() {
|
|
|
116
116
|
<div class="ttc" id="classSVF_1_1DDAClient_html_ad9484fac56de8beaf120b1611d23dddc"><div class="ttname"><a href="classSVF_1_1DDAClient.html#ad9484fac56de8beaf120b1611d23dddc">SVF::DDAClient::getModule</a></div><div class="ttdeci">SVFModule * getModule() const</div><div class="ttdoc">Get LLVM module. </div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00072">DDAClient.h:72</a></div></div>
|
|
117
117
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00057">PointerAnalysis.h:57</a></div></div>
|
|
118
118
|
<div class="ttc" id="classSVF_1_1VFGNode_html"><div class="ttname"><a href="classSVF_1_1VFGNode.html">SVF::VFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00046">VFGNode.h:46</a></div></div>
|
|
119
|
-
<div class="ttc" id="namespaceSVF_html_aedf0d6718ca176e0b9e17ab4b30729c6"><div class="ttname"><a href="namespaceSVF.html#aedf0d6718ca176e0b9e17ab4b30729c6">SVF::OrderedMap</a></div><div class="ttdeci">std::map< Key, Value, Compare, Allocator > OrderedMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
119
|
+
<div class="ttc" id="namespaceSVF_html_aedf0d6718ca176e0b9e17ab4b30729c6"><div class="ttname"><a href="namespaceSVF.html#aedf0d6718ca176e0b9e17ab4b30729c6">SVF::OrderedMap</a></div><div class="ttdeci">std::map< Key, Value, Compare, Allocator > OrderedMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00116">SVFBasicTypes.h:116</a></div></div>
|
|
120
120
|
</div><!-- fragment --></div><!-- contents -->
|
|
121
121
|
<!-- start footer part -->
|
|
122
122
|
<hr class="footer"/><address class="footer"><small>
|
|
@@ -68,10 +68,10 @@ $(function() {
|
|
|
68
68
|
<div class="contents">
|
|
69
69
|
<a href="DDAPass_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * @file: DDAPass.cpp</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> * @author: Yulei Sui</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * @date: 01/07/2014</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> */</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> </div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> </div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="preprocessor">#include "<a class="code" href="Options_8h.html">Util/Options.h</a>"</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="preprocessor">#include "<a class="code" href="PointerAnalysisImpl_8h.html">MemoryModel/PointerAnalysisImpl.h</a>"</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="preprocessor">#include "<a class="code" href="DDAPass_8h.html">DDA/DDAPass.h</a>"</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#include "<a class="code" href="FlowDDA_8h.html">DDA/FlowDDA.h</a>"</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor">#include "<a class="code" href="ContextDDA_8h.html">DDA/ContextDDA.h</a>"</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor">#include "<a class="code" href="DDAClient_8h.html">DDA/DDAClient.h</a>"</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor">#include "<a class="code" href="SVFIRBuilder_8h.html">SVF-FE/SVFIRBuilder.h</a>"</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> </div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#include <sstream></span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#include <limits.h></span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="keyword">using namespace </span><a class="code" href="namespaceSVF.html">SVF</a>;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="keyword">using namespace </span>SVFUtil;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="keywordtype">char</span> <a class="code" href="classSVF_1_1DDAPass.html#adb39fc24e3d45e558ac36f37b5dc3565">DDAPass::ID</a> = 0;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> </div><div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#adc8e3d685a1fbb9731040a8ceb4f4202"> 24</a></span> <a class="code" href="classSVF_1_1DDAPass.html#adc8e3d685a1fbb9731040a8ceb4f4202">DDAPass::~DDAPass</a>()</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> {</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  <span class="comment">// _pta->dumpStat();</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  <span class="keywordflow">if</span> (_client != <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  <span class="keyword">delete</span> _client;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> }</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div><div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#af196994d6ec7f5cead72212407842103"> 32</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#af196994d6ec7f5cead72212407842103">DDAPass::runOnModule</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* module)</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> {</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <span class="comment">//InitializeAliasAnalysis(this, getDataLayout(&module));</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  selectClient(module);</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">PointerAnalysis::FlowS_DDA</a>;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  i < <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">PointerAnalysis::Default_PTA</a>; i++)</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  {</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a2203f622ab539b3a38488575c9eec33b">Options::DDASelected</a>.isSet(i))</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  runPointerAnalysis(module, i);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  }</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> }</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a7bc2c9a62b7d97b8e19bee0c4625aea3"> 47</a></span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1DDAPass.html#af196994d6ec7f5cead72212407842103">DDAPass::runOnModule</a>(<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>& module)</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule = <a class="code" href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">LLVMModuleSet::getLLVMModuleSet</a>()-><a class="code" href="classSVF_1_1LLVMModuleSet.html#ae919327019b5014f64b754dbdeb07f75">buildSVFModule</a>(module);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  runOnModule(svfModule);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#aa33694e0b5f30c451c229e92877e4842"> 55</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#aa33694e0b5f30c451c229e92877e4842">DDAPass::selectClient</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* module)</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> {</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1Options.html#a3c3d704c209c4e6eed1a771caf8214ce">Options::UserInputQuery</a>.<a class="code" href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a>())</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  {</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a3c3d704c209c4e6eed1a771caf8214ce">Options::UserInputQuery</a> == <span class="stringliteral">"funptr"</span>)</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  {</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  _client = <span class="keyword">new</span> <a class="code" href="classSVF_1_1FunptrDDAClient.html">FunptrDDAClient</a>(module);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  }</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a3c3d704c209c4e6eed1a771caf8214ce">Options::UserInputQuery</a> == <span class="stringliteral">"alias"</span>)</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  {</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  _client = <span class="keyword">new</span> <a class="code" href="classSVF_1_1AliasDDAClient.html">AliasDDAClient</a>(module);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  }</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  _client = <span class="keyword">new</span> <a class="code" href="classSVF_1_1DDAClient.html">DDAClient</a>(module);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a3c3d704c209c4e6eed1a771caf8214ce">Options::UserInputQuery</a> != <span class="stringliteral">"all"</span>)</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> buf; <span class="comment">// Have a buffer</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  stringstream ss(<a class="code" href="classSVF_1_1Options.html#a3c3d704c209c4e6eed1a771caf8214ce">Options::UserInputQuery</a>); <span class="comment">// Insert the user input string into a stream</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <span class="keywordflow">while</span> (ss >> buf)</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  _client->setQuery(buf);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  }</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  }</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  }</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<span class="keyword">false</span> && <span class="stringliteral">"Please specify query options!"</span>);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  }</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  _client->initialise(module);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> }</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a13ff3107a0e4f8749b166fa9b8165167"> 91</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#a13ff3107a0e4f8749b166fa9b8165167">DDAPass::runPointerAnalysis</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* module, <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> kind)</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> {</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <a class="code" href="classSVF_1_1SVFIRBuilder.html">SVFIRBuilder</a> builder;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = builder.<a class="code" href="classSVF_1_1SVFIRBuilder.html#aa6d56f9580f76fd09d25ce6cf7541e98">build</a>(module);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <a class="code" href="classSVF_1_1ContextCond.html#a084679a423e78217ca10794775c25b1d">ContextCond::setMaxPathLen</a>(<a class="code" href="classSVF_1_1Options.html#a32ef95b3bd06b50337b3129b74ffb45c">Options::MaxPathLen</a>);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <a class="code" href="classSVF_1_1ContextCond.html#a92e89bbae0f31bb9eb971ab3edcc8071">ContextCond::setMaxCxtLen</a>(<a class="code" href="classSVF_1_1Options.html#a2e53156bd075d7802d390672f129c6a8">Options::MaxContextLen</a>);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordflow">switch</span> (kind)</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  {</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">PointerAnalysis::Cxt_DDA</a>:</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  _pta = <span class="keyword">new</span> <a class="code" href="classSVF_1_1ContextDDA.html">ContextDDA</a>(pag, _client);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  }</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  <span class="keywordflow">case</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">PointerAnalysis::FlowS_DDA</a>:</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  _pta = <span class="keyword">new</span> <a class="code" href="classSVF_1_1FlowDDA.html">FlowDDA</a>(pag, _client);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  }</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keywordflow">default</span>:</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() << <span class="stringliteral">"This pointer analysis has not been implemented yet.\n"</span>;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#a0865038c4738fcc8f47106faad03d98a">Options::WPANum</a>)</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  _client->collectWPANum(module);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  }</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  _pta->initialize();</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  _client->answerQueries(_pta);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  _pta->finalize();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#aee5e47ee3ca9bacb514f9dfbcb3abf24">Options::PrintCPts</a>)</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  _pta->dumpCPts();</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordflow">if</span> (_pta->printStat())</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  _client->performStat(_pta);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#aabfcfcd67df527cdf587aff5ecc26a10">Options::PrintQueryPts</a>)</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  printQueryPTS();</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  }</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span> }</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#add44aee75c9a59327b4eb46774551e2b"> 145</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#add44aee75c9a59327b4eb46774551e2b">DDAPass::initCxtInsensitiveEdges</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* svfg,<span class="keyword">const</span> <a class="code" href="classSVF_1_1SCCDetection.html">SVFGSCC</a>* svfgSCC, <a class="code" href="classSVF_1_1DDAPass.html#acc81a1f7ad572fa27648999334479f56">SVFGEdgeSet</a>& insensitveEdges)</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span> {</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#aa1a3b9293dffeef1bb16a2a7b3a007dd">Options::InsenRecur</a>)</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  collectCxtInsenEdgeForRecur(pta,svfg,insensitveEdges);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#a35cfe6add81dc82983e0c53c36c6e667">Options::InsenCycle</a>)</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  collectCxtInsenEdgeForVFCycle(pta,svfg,svfgSCC,insensitveEdges);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span> }</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a3810708c5e2695d2a0e36084b589e432"> 156</a></span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1DDAPass.html#a3810708c5e2695d2a0e36084b589e432">DDAPass::edgeInSVFGSCC</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SCCDetection.html">SVFGSCC</a>* svfgSCC,<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a>* edge)</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span> {</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keywordflow">return</span> (svfgSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(edge-><a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>()) == svfgSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(edge-><a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>()));</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span> }</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span> </div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#aab60429398a89ec1c8663a305130376f"> 164</a></span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1DDAPass.html#aab60429398a89ec1c8663a305130376f">DDAPass::edgeInCallGraphSCC</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta,<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a>* edge)</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span> {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* srcFun = edge-><a class="code" href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">getSrcNode</a>()->getICFGNode()->getFun();</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* dstFun = edge-><a class="code" href="classSVF_1_1GenericEdge.html#aeaa31a2c8479e831b36ce2e2582ceb86">getDstNode</a>()->getICFGNode()->getFun();</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keywordflow">if</span>(srcFun && dstFun)</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="keywordflow">return</span> pta-><a class="code" href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67">inSameCallGraphSCC</a>(srcFun,dstFun);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  }</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(edge-><a class="code" href="classSVF_1_1VFGEdge.html#a3937eef974c3953f1d1e7d64c5a24ff3">isRetVFGEdge</a>() == <span class="keyword">false</span> && <span class="stringliteral">"should not be an inter-procedural return edge"</span> );</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span> }</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#af8bc7f84e7dc8c7032eec6162a837ba6"> 182</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#af8bc7f84e7dc8c7032eec6162a837ba6">DDAPass::collectCxtInsenEdgeForRecur</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* svfg,<a class="code" href="classSVF_1_1DDAPass.html#acc81a1f7ad572fa27648999334479f56">SVFGEdgeSet</a>& insensitveEdges)</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span> {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordflow">for</span> (SVFG::SVFGNodeIDToNodeMapTy::const_iterator it = svfg-><a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(),eit = svfg-><a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); it != eit; ++it)</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  {</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  SVFGEdge::SVFGEdgeSetTy::const_iterator edgeIt = it->second->InEdgeBegin();</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  SVFGEdge::SVFGEdgeSetTy::const_iterator edgeEit = it->second->InEdgeEnd();</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a>* edge = *edgeIt;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <span class="keywordflow">if</span>(edge-><a class="code" href="classSVF_1_1VFGEdge.html#a4352297ef44c4eff1efe2f348cce6fe9">isCallVFGEdge</a>() || edge-><a class="code" href="classSVF_1_1VFGEdge.html#a3937eef974c3953f1d1e7d64c5a24ff3">isRetVFGEdge</a>())</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  {</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <span class="keywordflow">if</span>(edgeInCallGraphSCC(pta,edge))</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  insensitveEdges.insert(edge);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  }</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  }</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  }</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span> }</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div><div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#af03661604ba924d1c3fd34a231ba87a6"> 205</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#af03661604ba924d1c3fd34a231ba87a6">DDAPass::collectCxtInsenEdgeForVFCycle</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* svfg,<span class="keyword">const</span> <a class="code" href="classSVF_1_1SCCDetection.html">SVFGSCC</a>* svfgSCC, <a class="code" href="classSVF_1_1DDAPass.html#acc81a1f7ad572fa27648999334479f56">SVFGEdgeSet</a>& insensitveEdges)</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span> {</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <a class="code" href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">OrderedSet<NodePair></a> insensitvefunPairs;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="keywordflow">for</span> (SVFG::SVFGNodeIDToNodeMapTy::const_iterator it = svfg-><a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(),eit = svfg-><a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); it != eit; ++it)</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  {</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  SVFGEdge::SVFGEdgeSetTy::const_iterator edgeIt = it->second->InEdgeBegin();</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  SVFGEdge::SVFGEdgeSetTy::const_iterator edgeEit = it->second->InEdgeEnd();</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a>* edge = *edgeIt;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <span class="keywordflow">if</span>(edge-><a class="code" href="classSVF_1_1VFGEdge.html#a4352297ef44c4eff1efe2f348cce6fe9">isCallVFGEdge</a>() || edge-><a class="code" href="classSVF_1_1VFGEdge.html#a3937eef974c3953f1d1e7d64c5a24ff3">isRetVFGEdge</a>())</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordflow">if</span>(this->edgeInSVFGSCC(svfgSCC,edge))</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  {</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span> </div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* srcFun = edge-><a class="code" href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">getSrcNode</a>()->getICFGNode()->getFun();</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* dstFun = edge-><a class="code" href="classSVF_1_1GenericEdge.html#aeaa31a2c8479e831b36ce2e2582ceb86">getDstNode</a>()->getICFGNode()->getFun();</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <span class="keywordflow">if</span>(srcFun && dstFun)</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> src = pta-><a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-><a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(srcFun)-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> dst = pta-><a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-><a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(dstFun)-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  insensitvefunPairs.insert(std::make_pair(src,dst));</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  insensitvefunPairs.insert(std::make_pair(dst,src));</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  }</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(edge-><a class="code" href="classSVF_1_1VFGEdge.html#a3937eef974c3953f1d1e7d64c5a24ff3">isRetVFGEdge</a>() == <span class="keyword">false</span> && <span class="stringliteral">"should not be an inter-procedural return edge"</span> );</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  }</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  }</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  }</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  }</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span> </div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <span class="keywordflow">for</span>(SVFG::SVFGNodeIDToNodeMapTy::const_iterator it = svfg-><a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(),eit = svfg-><a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); it != eit; ++it)</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  {</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  SVFGEdge::SVFGEdgeSetTy::const_iterator edgeIt = it->second->InEdgeBegin();</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  SVFGEdge::SVFGEdgeSetTy::const_iterator edgeEit = it->second->InEdgeEnd();</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  {</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a>* edge = *edgeIt;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span> </div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  <span class="keywordflow">if</span>(edge-><a class="code" href="classSVF_1_1VFGEdge.html#a4352297ef44c4eff1efe2f348cce6fe9">isCallVFGEdge</a>() || edge-><a class="code" href="classSVF_1_1VFGEdge.html#a3937eef974c3953f1d1e7d64c5a24ff3">isRetVFGEdge</a>())</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  {</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* srcFun = edge-><a class="code" href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">getSrcNode</a>()->getICFGNode()->getFun();</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* dstFun = edge-><a class="code" href="classSVF_1_1GenericEdge.html#aeaa31a2c8479e831b36ce2e2582ceb86">getDstNode</a>()->getICFGNode()->getFun();</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  <span class="keywordflow">if</span>(srcFun && dstFun)</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> src = pta-><a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-><a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(srcFun)-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> dst = pta-><a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-><a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(dstFun)-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  <span class="keywordflow">if</span>(insensitvefunPairs.find(std::make_pair(src,dst))!=insensitvefunPairs.end())</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  insensitveEdges.insert(edge);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(insensitvefunPairs.find(std::make_pair(dst,src))!=insensitvefunPairs.end())</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  insensitveEdges.insert(edge);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  }</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  }</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  }</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  }</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span> }</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a96de481dd2af7b39428aff38158c1d4e"> 267</a></span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> <a class="code" href="classSVF_1_1DDAPass.html#a242575c5bd8a8f17fdc802e5ba80e7b0">DDAPass::alias</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node1, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node2)</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span> {</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = _pta-><a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">getPAG</a>();</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  <span class="keywordflow">if</span>(pag-><a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(pag-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(node1)))</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  _pta->computeDDAPts(node1);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span> </div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  <span class="keywordflow">if</span>(pag-><a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(pag-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(node2)))</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  _pta->computeDDAPts(node2);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span> </div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  <span class="keywordflow">return</span> _pta->alias(node1,node2);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span> }</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a242575c5bd8a8f17fdc802e5ba80e7b0"> 283</a></span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> <a class="code" href="classSVF_1_1DDAPass.html#a242575c5bd8a8f17fdc802e5ba80e7b0">DDAPass::alias</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* V1, <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* V2)</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span> {</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = _pta-><a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">getPAG</a>();</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span> </div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  <span class="keywordflow">if</span> (pag-><a class="code" href="classSVF_1_1IRGraph.html#aceb17dfbe137658625e16291127267d1">hasValueNode</a>(V1) && pag-><a class="code" href="classSVF_1_1IRGraph.html#aceb17dfbe137658625e16291127267d1">hasValueNode</a>(V2))</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  {</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* node1 = pag-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(pag-><a class="code" href="classSVF_1_1IRGraph.html#abffddd41cc308b9b3bd5ad4a7f8f1624">getValueNode</a>(V1));</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">if</span>(pag-><a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(node1))</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  _pta->computeDDAPts(node1-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span> </div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* node2 = pag-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(pag-><a class="code" href="classSVF_1_1IRGraph.html#abffddd41cc308b9b3bd5ad4a7f8f1624">getValueNode</a>(V2));</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  <span class="keywordflow">if</span>(pag-><a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(node2))</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  _pta->computeDDAPts(node2-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span> </div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  <span class="keywordflow">return</span> _pta->alias(V1,V2);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  }</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">AliasResult::MayAlias</a>;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span> }</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div><div class="line"><a name="l00311"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#afc700bd3abb5d9199621741b9bd04f0f"> 311</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#afc700bd3abb5d9199621741b9bd04f0f">DDAPass::printQueryPTS</a>()</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span> {</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">OrderedNodeSet</a>& candidates = _client->getCandidateQueries();</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  <span class="keywordflow">for</span> (OrderedNodeSet::const_iterator it = candidates.begin(), eit = candidates.end(); it != eit; ++it)</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  {</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>& pts = _pta->getPts(*it);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  _pta->dumpPts(*it,pts);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  }</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span> }</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00361">GenericGraph.h:361</a></div></div>
|
|
70
70
|
<div class="ttc" id="classSVF_1_1DDAPass_html_af03661604ba924d1c3fd34a231ba87a6"><div class="ttname"><a href="classSVF_1_1DDAPass.html#af03661604ba924d1c3fd34a231ba87a6">SVF::DDAPass::collectCxtInsenEdgeForVFCycle</a></div><div class="ttdeci">void collectCxtInsenEdgeForVFCycle(PointerAnalysis *pta, const SVFG *svfg, const SVFGSCC *svfgSCC, SVFGEdgeSet &insensitveEdges)</div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00205">DDAPass.cpp:205</a></div></div>
|
|
71
|
-
<div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
71
|
+
<div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
|
|
72
72
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_aaab54c670518d9d6790707f76ea76aa1"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">SVF::PTACallGraph::getCallGraphNode</a></div><div class="ttdeci">PTACallGraphNode * getCallGraphNode(NodeID id) const</div><div class="ttdoc">Get call graph node. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00315">PTACallGraph.h:315</a></div></div>
|
|
73
73
|
<div class="ttc" id="classSVF_1_1FunptrDDAClient_html"><div class="ttname"><a href="classSVF_1_1FunptrDDAClient.html">SVF::FunptrDDAClient</a></div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00102">DDAClient.h:102</a></div></div>
|
|
74
|
-
<div class="ttc" id="namespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set< Key, Compare, Allocator > OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
74
|
+
<div class="ttc" id="namespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set< Key, Compare, Allocator > OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00112">SVFBasicTypes.h:112</a></div></div>
|
|
75
75
|
<div class="ttc" id="classSVF_1_1Options_html_a2e53156bd075d7802d390672f129c6a8"><div class="ttname"><a href="classSVF_1_1Options.html#a2e53156bd075d7802d390672f129c6a8">SVF::Options::MaxContextLen</a></div><div class="ttdeci">static const llvm::cl::opt< unsigned > MaxContextLen</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00095">Options.h:95</a></div></div>
|
|
76
76
|
<div class="ttc" id="classSVF_1_1Options_html_a32ef95b3bd06b50337b3129b74ffb45c"><div class="ttname"><a href="classSVF_1_1Options.html#a32ef95b3bd06b50337b3129b74ffb45c">SVF::Options::MaxPathLen</a></div><div class="ttdeci">static const llvm::cl::opt< unsigned > MaxPathLen</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00094">Options.h:94</a></div></div>
|
|
77
77
|
<div class="ttc" id="classSVF_1_1SVFIRBuilder_html_aa6d56f9580f76fd09d25ce6cf7541e98"><div class="ttname"><a href="classSVF_1_1SVFIRBuilder.html#aa6d56f9580f76fd09d25ce6cf7541e98">SVF::SVFIRBuilder::build</a></div><div class="ttdeci">virtual SVFIR * build(SVFModule *svfModule)</div><div class="ttdoc">Start building SVFIR here. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIRBuilder_8cpp_source.html#l00048">SVFIRBuilder.cpp:48</a></div></div>
|
|
@@ -82,15 +82,15 @@ $(function() {
|
|
|
82
82
|
<div class="ttc" id="classSVF_1_1ContextCond_html_a92e89bbae0f31bb9eb971ab3edcc8071"><div class="ttname"><a href="classSVF_1_1ContextCond.html#a92e89bbae0f31bb9eb971ab3edcc8071">SVF::ContextCond::setMaxCxtLen</a></div><div class="ttdeci">static void setMaxCxtLen(u32_t max)</div><div class="ttdoc">set max context limit </div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00240">DPItem.h:240</a></div></div>
|
|
83
83
|
<div class="ttc" id="classSVF_1_1VFGEdge_html_a3937eef974c3953f1d1e7d64c5a24ff3"><div class="ttname"><a href="classSVF_1_1VFGEdge.html#a3937eef974c3953f1d1e7d64c5a24ff3">SVF::VFGEdge::isRetVFGEdge</a></div><div class="ttdeci">bool isRetVFGEdge() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00088">VFGEdge.h:88</a></div></div>
|
|
84
84
|
<div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
|
|
85
|
-
<div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
85
|
+
<div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00175">BasicTypes.h:175</a></div></div>
|
|
86
86
|
<div class="ttc" id="classSVF_1_1FlowDDA_html"><div class="ttname"><a href="classSVF_1_1FlowDDA.html">SVF::FlowDDA</a></div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8h_source.html#l00025">FlowDDA.h:25</a></div></div>
|
|
87
87
|
<div class="ttc" id="cuddInt_8c_html_a5beb39637a978181c7c17714ac96672e"><div class="ttname"><a href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a></div><div class="ttdeci">static DdNode * empty</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8c_source.html#l28567">cuddInt.c:28567</a></div></div>
|
|
88
88
|
<div class="ttc" id="classSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00046">SVFVariables.h:46</a></div></div>
|
|
89
89
|
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_ae919327019b5014f64b754dbdeb07f75"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#ae919327019b5014f64b754dbdeb07f75">SVF::LLVMModuleSet::buildSVFModule</a></div><div class="ttdeci">SVFModule * buildSVFModule(Module &mod)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00061">LLVMModule.cpp:61</a></div></div>
|
|
90
90
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00106">SVFIR.h:106</a></div></div>
|
|
91
91
|
<div class="ttc" id="classSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00041">SVFModule.h:41</a></div></div>
|
|
92
|
-
<div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
93
|
-
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
92
|
+
<div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00195">SVFBasicTypes.h:195</a></div></div>
|
|
93
|
+
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00084">SVFBasicTypes.h:84</a></div></div>
|
|
94
94
|
<div class="ttc" id="classSVF_1_1DDAPass_html_add44aee75c9a59327b4eb46774551e2b"><div class="ttname"><a href="classSVF_1_1DDAPass.html#add44aee75c9a59327b4eb46774551e2b">SVF::DDAPass::initCxtInsensitiveEdges</a></div><div class="ttdeci">void initCxtInsensitiveEdges(PointerAnalysis *pta, const SVFG *svfg, const SVFGSCC *svfgSCC, SVFGEdgeSet &insensitveEdges)</div><div class="ttdoc">Context insensitive Edge for DDA. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00145">DDAPass.cpp:145</a></div></div>
|
|
95
95
|
<div class="ttc" id="classSVF_1_1IRGraph_html_abffddd41cc308b9b3bd5ad4a7f8f1624"><div class="ttname"><a href="classSVF_1_1IRGraph.html#abffddd41cc308b9b3bd5ad4a7f8f1624">SVF::IRGraph::getValueNode</a></div><div class="ttdeci">NodeID getValueNode(const Value *V)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00124">IRGraph.h:124</a></div></div>
|
|
96
96
|
<div class="ttc" id="classSVF_1_1VFGEdge_html"><div class="ttname"><a href="classSVF_1_1VFGEdge.html">SVF::VFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00044">VFGEdge.h:44</a></div></div>
|
|
@@ -119,7 +119,7 @@ $(function() {
|
|
|
119
119
|
<div class="ttc" id="classSVF_1_1DDAPass_html_afc700bd3abb5d9199621741b9bd04f0f"><div class="ttname"><a href="classSVF_1_1DDAPass.html#afc700bd3abb5d9199621741b9bd04f0f">SVF::DDAPass::printQueryPTS</a></div><div class="ttdeci">void printQueryPTS()</div><div class="ttdoc">Print queries&#39; pts. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00311">DDAPass.cpp:311</a></div></div>
|
|
120
120
|
<div class="ttc" id="classSVF_1_1Options_html_a3c3d704c209c4e6eed1a771caf8214ce"><div class="ttname"><a href="classSVF_1_1Options.html#a3c3d704c209c4e6eed1a771caf8214ce">SVF::Options::UserInputQuery</a></div><div class="ttdeci">static const llvm::cl::opt< std ::string > UserInputQuery</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00097">Options.h:97</a></div></div>
|
|
121
121
|
<div class="ttc" id="classSVF_1_1ContextCond_html_a084679a423e78217ca10794775c25b1d"><div class="ttname"><a href="classSVF_1_1ContextCond.html#a084679a423e78217ca10794775c25b1d">SVF::ContextCond::setMaxPathLen</a></div><div class="ttdeci">static void setMaxPathLen(u32_t max)</div><div class="ttdoc">set max path limit </div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00245">DPItem.h:245</a></div></div>
|
|
122
|
-
<div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">SVF::MayAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
122
|
+
<div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aef15fd8989d8dd9576b3fbb2aabc118f">SVF::MayAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00198">SVFBasicTypes.h:198</a></div></div>
|
|
123
123
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
124
124
|
<div class="ttc" id="classSVF_1_1AliasDDAClient_html"><div class="ttname"><a href="classSVF_1_1AliasDDAClient.html">SVF::AliasDDAClient</a></div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00121">DDAClient.h:121</a></div></div>
|
|
125
125
|
<div class="ttc" id="classSVF_1_1IRGraph_html_aceb17dfbe137658625e16291127267d1"><div class="ttname"><a href="classSVF_1_1IRGraph.html#aceb17dfbe137658625e16291127267d1">SVF::IRGraph::hasValueNode</a></div><div class="ttdeci">bool hasValueNode(const Value *V)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00128">IRGraph.h:128</a></div></div>
|
|
@@ -131,13 +131,13 @@ $(function() {
|
|
|
131
131
|
<div class="ttc" id="DDAPass_8h_html"><div class="ttname"><a href="DDAPass_8h.html">DDAPass.h</a></div></div>
|
|
132
132
|
<div class="ttc" id="Options_8h_html"><div class="ttname"><a href="Options_8h.html">Options.h</a></div></div>
|
|
133
133
|
<div class="ttc" id="classSVF_1_1VFGEdge_html_a4352297ef44c4eff1efe2f348cce6fe9"><div class="ttname"><a href="classSVF_1_1VFGEdge.html#a4352297ef44c4eff1efe2f348cce6fe9">SVF::VFGEdge::isCallVFGEdge</a></div><div class="ttdeci">bool isCallVFGEdge() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00084">VFGEdge.h:84</a></div></div>
|
|
134
|
-
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#
|
|
134
|
+
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00070">LLVMModule.h:70</a></div></div>
|
|
135
135
|
<div class="ttc" id="classSVF_1_1Options_html_a35cfe6add81dc82983e0c53c36c6e667"><div class="ttname"><a href="classSVF_1_1Options.html#a35cfe6add81dc82983e0c53c36c6e667">SVF::Options::InsenCycle</a></div><div class="ttdeci">static const llvm::cl::opt< bool > InsenCycle</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00099">Options.h:99</a></div></div>
|
|
136
136
|
<div class="ttc" id="classSVF_1_1SVFG_html"><div class="ttname"><a href="classSVF_1_1SVFG.html">SVF::SVFG</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00065">SVFG.h:65</a></div></div>
|
|
137
137
|
<div class="ttc" id="namespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode </div><div class="ttdef"><b>Definition:</b> <a href="CFGNormalizer_8h_source.html#l00035">CFGNormalizer.h:35</a></div></div>
|
|
138
138
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00165">GenericGraph.h:165</a></div></div>
|
|
139
139
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a242575c5bd8a8f17fdc802e5ba80e7b0"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a242575c5bd8a8f17fdc802e5ba80e7b0">SVF::DDAPass::alias</a></div><div class="ttdeci">virtual AliasResult alias(const Value *V1, const Value *V2)</div><div class="ttdoc">Interface expose to users of our pointer analysis, given Value infos. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00283">DDAPass.cpp:283</a></div></div>
|
|
140
|
-
<div class="ttc" id="namespaceSVF_html_a3c2bd95727ec0d9c55c631b6617026c8"><div class="ttname"><a href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">SVF::OrderedNodeSet</a></div><div class="ttdeci">OrderedSet< NodeID > OrderedNodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
140
|
+
<div class="ttc" id="namespaceSVF_html_a3c2bd95727ec0d9c55c631b6617026c8"><div class="ttname"><a href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">SVF::OrderedNodeSet</a></div><div class="ttdeci">OrderedSet< NodeID > OrderedNodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00120">SVFBasicTypes.h:120</a></div></div>
|
|
141
141
|
<div class="ttc" id="classSVF_1_1ContextDDA_html"><div class="ttname"><a href="classSVF_1_1ContextDDA.html">SVF::ContextDDA</a></div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00026">ContextDDA.h:26</a></div></div>
|
|
142
142
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a13ff3107a0e4f8749b166fa9b8165167"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a13ff3107a0e4f8749b166fa9b8165167">SVF::DDAPass::runPointerAnalysis</a></div><div class="ttdeci">void runPointerAnalysis(SVFModule *module, u32_t kind)</div><div class="ttdoc">Create pointer analysis according to specified kind and analyze the module. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00091">DDAPass.cpp:91</a></div></div>
|
|
143
143
|
<div class="ttc" id="SVFIRBuilder_8h_html"><div class="ttname"><a href="SVFIRBuilder_8h.html">SVFIRBuilder.h</a></div></div>
|
|
@@ -145,7 +145,7 @@ $(function() {
|
|
|
145
145
|
<div class="ttc" id="classSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00387">GenericGraph.h:387</a></div></div>
|
|
146
146
|
<div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
|
|
147
147
|
<div class="ttc" id="classSVF_1_1SVFIR_html"><div class="ttname"><a href="classSVF_1_1SVFIR.html">SVF::SVFIR</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00043">SVFIR.h:43</a></div></div>
|
|
148
|
-
<div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
148
|
+
<div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
|
|
149
149
|
<div class="ttc" id="classSVF_1_1Options_html_aa1a3b9293dffeef1bb16a2a7b3a007dd"><div class="ttname"><a href="classSVF_1_1Options.html#aa1a3b9293dffeef1bb16a2a7b3a007dd">SVF::Options::InsenRecur</a></div><div class="ttdeci">static const llvm::cl::opt< bool > InsenRecur</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00098">Options.h:98</a></div></div>
|
|
150
150
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00057">PointerAnalysis.h:57</a></div></div>
|
|
151
151
|
</div><!-- fragment --></div><!-- contents -->
|
|
@@ -67,14 +67,14 @@ $(function() {
|
|
|
67
67
|
</div><!--header-->
|
|
68
68
|
<div class="contents">
|
|
69
69
|
<a href="DDAPass_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * @file: DDAPass.h</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> * @author: Yulei Sui</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * @date: 01/07/2014</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * @version: 1.0</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> *</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> */</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> </div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> </div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="preprocessor">#ifndef DDAPASS_H_</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#define DDAPASS_H_</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> </div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor">#include "<a class="code" href="PointerAnalysisImpl_8h.html">MemoryModel/PointerAnalysisImpl.h</a>"</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor">#include "<a class="code" href="DDAClient_8h.html">DDA/DDAClient.h</a>"</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="preprocessor">#include "<a class="code" href="SCC_8h.html">Util/SCC.h</a>"</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> </div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> {</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html"> 24</a></span> <span class="keyword">class </span><a class="code" href="classSVF_1_1DDAPass.html">DDAPass</a></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> {</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#adb39fc24e3d45e558ac36f37b5dc3565"> 29</a></span>  <span class="keyword">static</span> <span class="keywordtype">char</span> <a class="code" href="classSVF_1_1DDAPass.html#adb39fc24e3d45e558ac36f37b5dc3565">ID</a>;</div><div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a5e51ac666db439865846b835bcea9d21"> 30</a></span>  <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1SCCDetection.html">SCCDetection<SVFG*></a> <a class="code" href="classSVF_1_1DDAPass.html#a5e51ac666db439865846b835bcea9d21">SVFGSCC</a>;</div><div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#acc81a1f7ad572fa27648999334479f56"> 31</a></span>  <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">OrderedSet<const SVFGEdge*></a> <a class="code" href="classSVF_1_1DDAPass.html#acc81a1f7ad572fa27648999334479f56">SVFGEdgeSet</a>;</div><div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#acc7ad5d3266cb3e24fba0b4db186348a"> 32</a></span>  <span class="keyword">typedef</span> std::vector<PointerAnalysis*> <a class="code" href="classSVF_1_1DDAPass.html#acc7ad5d3266cb3e24fba0b4db186348a">PTAVector</a>;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div><div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a4f68cbbe00863024cba2ecf513ff979f"> 34</a></span>  <a class="code" href="classSVF_1_1DDAPass.html#a4f68cbbe00863024cba2ecf513ff979f">DDAPass</a>() : <a class="code" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">_pta</a>(nullptr), <a class="code" href="classSVF_1_1DDAPass.html#a8bb61315bc5d1816f4e07140864af47f">_client</a>(nullptr) {}</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <a class="code" href="classSVF_1_1DDAPass.html#adc8e3d685a1fbb9731040a8ceb4f4202">~DDAPass</a>();</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  <span class="keyword">virtual</span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> <a class="code" href="classSVF_1_1DDAPass.html#a242575c5bd8a8f17fdc802e5ba80e7b0">alias</a>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* V1, <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* V2);</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  <span class="keyword">virtual</span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> <a class="code" href="classSVF_1_1DDAPass.html#a242575c5bd8a8f17fdc802e5ba80e7b0">alias</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> V1, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> V2);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#af196994d6ec7f5cead72212407842103">runOnModule</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* module);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1DDAPass.html#af196994d6ec7f5cead72212407842103">runOnModule</a>(<a class="code" href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">Module</a>& module);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#aa33694e0b5f30c451c229e92877e4842">selectClient</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* module);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a597a387848c03a05d1cfdfafc510cf2b"> 53</a></span>  <span class="keyword">virtual</span> <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a88fd7387fcf16caf70abe265cdcf90b9">StringRef</a> <a class="code" href="classSVF_1_1DDAPass.html#a597a387848c03a05d1cfdfafc510cf2b">getPassName</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keyword"> </span>{</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordflow">return</span> <span class="stringliteral">"DDAPass"</span>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  }</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#afc700bd3abb5d9199621741b9bd04f0f">printQueryPTS</a>();</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#a13ff3107a0e4f8749b166fa9b8165167">runPointerAnalysis</a>(<a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* module, <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> kind);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#add44aee75c9a59327b4eb46774551e2b">initCxtInsensitiveEdges</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* svfg,<span class="keyword">const</span> SVFGSCC* svfgSCC, SVFGEdgeSet& insensitveEdges);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1DDAPass.html#a3810708c5e2695d2a0e36084b589e432">edgeInSVFGSCC</a>(<span class="keyword">const</span> SVFGSCC* svfgSCC,<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a>* edge);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1DDAPass.html#aab60429398a89ec1c8663a305130376f">edgeInCallGraphSCC</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta,<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a>* edge);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#af8bc7f84e7dc8c7032eec6162a837ba6">collectCxtInsenEdgeForRecur</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* svfg,SVFGEdgeSet& insensitveEdges);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1DDAPass.html#af03661604ba924d1c3fd34a231ba87a6">collectCxtInsenEdgeForVFCycle</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* pta, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* svfg,<span class="keyword">const</span> SVFGSCC* svfgSCC, SVFGEdgeSet& insensitveEdges);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f"> 73</a></span>  <a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a>* <a class="code" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">_pta</a>; </div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classSVF_1_1DDAPass.html#a8bb61315bc5d1816f4e07140864af47f"> 74</a></span>  <a class="code" href="classSVF_1_1DDAClient.html">DDAClient</a>* <a class="code" href="classSVF_1_1DDAPass.html#a8bb61315bc5d1816f4e07140864af47f">_client</a>; </div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> };</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span> } <span class="comment">// End namespace SVF</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor">#endif </span><span class="comment">/* WPA_H_ */</span><span class="preprocessor"></span></div><div class="ttc" id="classSVF_1_1DDAPass_html_af03661604ba924d1c3fd34a231ba87a6"><div class="ttname"><a href="classSVF_1_1DDAPass.html#af03661604ba924d1c3fd34a231ba87a6">SVF::DDAPass::collectCxtInsenEdgeForVFCycle</a></div><div class="ttdeci">void collectCxtInsenEdgeForVFCycle(PointerAnalysis *pta, const SVFG *svfg, const SVFGSCC *svfgSCC, SVFGEdgeSet &insensitveEdges)</div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00205">DDAPass.cpp:205</a></div></div>
|
|
70
|
-
<div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
71
|
-
<div class="ttc" id="namespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set< Key, Compare, Allocator > OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
70
|
+
<div class="ttc" id="namespaceSVF_html_aa7a770b5dd5cd0e37d06a1088f252906"><div class="ttname"><a href="namespaceSVF.html#aa7a770b5dd5cd0e37d06a1088f252906">SVF::Module</a></div><div class="ttdeci">llvm::Module Module</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
|
|
71
|
+
<div class="ttc" id="namespaceSVF_html_a4f21e91ff8eaea5207afe5c60dbd78d7"><div class="ttname"><a href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">SVF::OrderedSet</a></div><div class="ttdeci">std::set< Key, Compare, Allocator > OrderedSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00112">SVFBasicTypes.h:112</a></div></div>
|
|
72
72
|
<div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00019">MTAResultValidator.h:19</a></div></div>
|
|
73
73
|
<div class="ttc" id="classSVF_1_1DDAPass_html_aab60429398a89ec1c8663a305130376f"><div class="ttname"><a href="classSVF_1_1DDAPass.html#aab60429398a89ec1c8663a305130376f">SVF::DDAPass::edgeInCallGraphSCC</a></div><div class="ttdeci">bool edgeInCallGraphSCC(PointerAnalysis *pta, const SVFGEdge *edge)</div><div class="ttdoc">Return TRUE if this edge is inside a SVFG SCC, i.e., src node and dst node are in the same SCC on the...</div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00164">DDAPass.cpp:164</a></div></div>
|
|
74
74
|
<div class="ttc" id="SCC_8h_html"><div class="ttname"><a href="SCC_8h.html">SCC.h</a></div></div>
|
|
75
75
|
<div class="ttc" id="classSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00041">SVFModule.h:41</a></div></div>
|
|
76
|
-
<div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
77
|
-
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
76
|
+
<div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00195">SVFBasicTypes.h:195</a></div></div>
|
|
77
|
+
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00084">SVFBasicTypes.h:84</a></div></div>
|
|
78
78
|
<div class="ttc" id="classSVF_1_1DDAPass_html_add44aee75c9a59327b4eb46774551e2b"><div class="ttname"><a href="classSVF_1_1DDAPass.html#add44aee75c9a59327b4eb46774551e2b">SVF::DDAPass::initCxtInsensitiveEdges</a></div><div class="ttdeci">void initCxtInsensitiveEdges(PointerAnalysis *pta, const SVFG *svfg, const SVFGSCC *svfgSCC, SVFGEdgeSet &insensitveEdges)</div><div class="ttdoc">Context insensitive Edge for DDA. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00145">DDAPass.cpp:145</a></div></div>
|
|
79
79
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a5e51ac666db439865846b835bcea9d21"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a5e51ac666db439865846b835bcea9d21">SVF::DDAPass::SVFGSCC</a></div><div class="ttdeci">SCCDetection< SVFG * > SVFGSCC</div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8h_source.html#l00030">DDAPass.h:30</a></div></div>
|
|
80
80
|
<div class="ttc" id="classSVF_1_1VFGEdge_html"><div class="ttname"><a href="classSVF_1_1VFGEdge.html">SVF::VFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00044">VFGEdge.h:44</a></div></div>
|
|
@@ -90,7 +90,7 @@ $(function() {
|
|
|
90
90
|
<div class="ttc" id="classSVF_1_1DDAPass_html_af196994d6ec7f5cead72212407842103"><div class="ttname"><a href="classSVF_1_1DDAPass.html#af196994d6ec7f5cead72212407842103">SVF::DDAPass::runOnModule</a></div><div class="ttdeci">virtual void runOnModule(SVFModule *module)</div><div class="ttdoc">We start from here. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00032">DDAPass.cpp:32</a></div></div>
|
|
91
91
|
<div class="ttc" id="classSVF_1_1DDAPass_html_afc700bd3abb5d9199621741b9bd04f0f"><div class="ttname"><a href="classSVF_1_1DDAPass.html#afc700bd3abb5d9199621741b9bd04f0f">SVF::DDAPass::printQueryPTS</a></div><div class="ttdeci">void printQueryPTS()</div><div class="ttdoc">Print queries&#39; pts. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00311">DDAPass.cpp:311</a></div></div>
|
|
92
92
|
<div class="ttc" id="classSVF_1_1DDAClient_html"><div class="ttname"><a href="classSVF_1_1DDAClient.html">SVF::DDAClient</a></div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00025">DDAClient.h:25</a></div></div>
|
|
93
|
-
<div class="ttc" id="namespaceSVF_html_a88fd7387fcf16caf70abe265cdcf90b9"><div class="ttname"><a href="namespaceSVF.html#a88fd7387fcf16caf70abe265cdcf90b9">SVF::StringRef</a></div><div class="ttdeci">llvm::StringRef StringRef</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
93
|
+
<div class="ttc" id="namespaceSVF_html_a88fd7387fcf16caf70abe265cdcf90b9"><div class="ttname"><a href="namespaceSVF.html#a88fd7387fcf16caf70abe265cdcf90b9">SVF::StringRef</a></div><div class="ttdeci">llvm::StringRef StringRef</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00093">BasicTypes.h:93</a></div></div>
|
|
94
94
|
<div class="ttc" id="classSVF_1_1DDAPass_html_aa33694e0b5f30c451c229e92877e4842"><div class="ttname"><a href="classSVF_1_1DDAPass.html#aa33694e0b5f30c451c229e92877e4842">SVF::DDAPass::selectClient</a></div><div class="ttdeci">virtual void selectClient(SVFModule *module)</div><div class="ttdoc">Select a client. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00055">DDAPass.cpp:55</a></div></div>
|
|
95
95
|
<div class="ttc" id="PointerAnalysisImpl_8h_html"><div class="ttname"><a href="PointerAnalysisImpl_8h.html">PointerAnalysisImpl.h</a></div></div>
|
|
96
96
|
<div class="ttc" id="DDAClient_8h_html"><div class="ttname"><a href="DDAClient_8h.html">DDAClient.h</a></div></div>
|
|
@@ -100,7 +100,7 @@ $(function() {
|
|
|
100
100
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a242575c5bd8a8f17fdc802e5ba80e7b0"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a242575c5bd8a8f17fdc802e5ba80e7b0">SVF::DDAPass::alias</a></div><div class="ttdeci">virtual AliasResult alias(const Value *V1, const Value *V2)</div><div class="ttdoc">Interface expose to users of our pointer analysis, given Value infos. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00283">DDAPass.cpp:283</a></div></div>
|
|
101
101
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a13ff3107a0e4f8749b166fa9b8165167"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a13ff3107a0e4f8749b166fa9b8165167">SVF::DDAPass::runPointerAnalysis</a></div><div class="ttdeci">void runPointerAnalysis(SVFModule *module, u32_t kind)</div><div class="ttdoc">Create pointer analysis according to specified kind and analyze the module. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8cpp_source.html#l00091">DDAPass.cpp:91</a></div></div>
|
|
102
102
|
<div class="ttc" id="classSVF_1_1DDAPass_html_acc7ad5d3266cb3e24fba0b4db186348a"><div class="ttname"><a href="classSVF_1_1DDAPass.html#acc7ad5d3266cb3e24fba0b4db186348a">SVF::DDAPass::PTAVector</a></div><div class="ttdeci">std::vector< PointerAnalysis * > PTAVector</div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8h_source.html#l00032">DDAPass.h:32</a></div></div>
|
|
103
|
-
<div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
103
|
+
<div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
|
|
104
104
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00057">PointerAnalysis.h:57</a></div></div>
|
|
105
105
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a4f68cbbe00863024cba2ecf513ff979f"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a4f68cbbe00863024cba2ecf513ff979f">SVF::DDAPass::DDAPass</a></div><div class="ttdeci">DDAPass()</div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8h_source.html#l00034">DDAPass.h:34</a></div></div>
|
|
106
106
|
</div><!-- fragment --></div><!-- contents -->
|
|
@@ -94,7 +94,7 @@ $(function() {
|
|
|
94
94
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a1afb47b898f646f71d00c666373281e0"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a1afb47b898f646f71d00c666373281e0">SVF::DDAStat::_TotalPtsSize</a></div><div class="ttdeci">u32_t _TotalPtsSize</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00086">DDAStat.h:86</a></div></div>
|
|
95
95
|
<div class="ttc" id="classSVF_1_1CondPTAImpl_html_a94f3e4d073b8c5bab3c46058ddba3f43"><div class="ttname"><a href="classSVF_1_1CondPTAImpl.html#a94f3e4d073b8c5bab3c46058ddba3f43">SVF::CondPTAImpl::getBVPointsTo</a></div><div class="ttdeci">virtual PointsTo getBVPointsTo(const CPtSet &cpts) const</div><div class="ttdoc">Given a conditional pts return its bit vector points-to. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00480">PointerAnalysisImpl.h:480</a></div></div>
|
|
96
96
|
<div class="ttc" id="classSVF_1_1GenericGraph_html_a5dfa3f178d4abf37177d0d74ff4c6a97"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a5dfa3f178d4abf37177d0d74ff4c6a97">SVF::GenericGraph< SVFVar, SVFStmt >::const_iterator</a></div><div class="ttdeci">IDToNodeMapTy::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00339">GenericGraph.h:339</a></div></div>
|
|
97
|
-
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
97
|
+
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00084">SVFBasicTypes.h:84</a></div></div>
|
|
98
98
|
<div class="ttc" id="classSVF_1_1DDAStat_html_ad53ad7a958c05b45624d2859a6a9e647"><div class="ttname"><a href="classSVF_1_1DDAStat.html#ad53ad7a958c05b45624d2859a6a9e647">SVF::DDAStat::_StrongUpdateStores</a></div><div class="ttdeci">NodeBS _StrongUpdateStores</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00044">DDAStat.h:44</a></div></div>
|
|
99
99
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a65a4af3d6f0bfc11e31f020bb2966576"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a65a4af3d6f0bfc11e31f020bb2966576">SVF::SVFIR::getPTASVFStmtSet</a></div><div class="ttdeci">SVFStmt::SVFStmtSetTy & getPTASVFStmtSet(SVFStmt::PEDGEK kind)</div><div class="ttdoc">Get PTA edges set according to its kind. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00167">SVFIR.h:167</a></div></div>
|
|
100
100
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a7b83dd2c2719ed3b308c65aa037d446b"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a7b83dd2c2719ed3b308c65aa037d446b">SVF::DDAStat::_MaxNumOfDPMAtSVFGNode</a></div><div class="ttdeci">u32_t _MaxNumOfDPMAtSVFGNode</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00097">DDAStat.h:97</a></div></div>
|
|
@@ -128,7 +128,7 @@ $(function() {
|
|
|
128
128
|
<div class="ttc" id="classSVF_1_1DDAStat_html_af3f359ca7c620695b124573377bda407"><div class="ttname"><a href="classSVF_1_1DDAStat.html#af3f359ca7c620695b124573377bda407">SVF::DDAStat::_NumOfBlackholePtr</a></div><div class="ttdeci">u32_t _NumOfBlackholePtr</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00089">DDAStat.h:89</a></div></div>
|
|
129
129
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a519cde27934fec9bbe28b4110948a418"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a519cde27934fec9bbe28b4110948a418">SVF::DDAStat::getSVFG</a></div><div class="ttdeci">SVFG * getSVFG() const</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8cpp_source.html#l00067">DDAStat.cpp:67</a></div></div>
|
|
130
130
|
<div class="ttc" id="classSVF_1_1PTAStat_html"><div class="ttname"><a href="classSVF_1_1PTAStat.html">SVF::PTAStat</a></div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00049">PTAStat.h:49</a></div></div>
|
|
131
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
131
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00181">SVFBasicTypes.h:181</a></div></div>
|
|
132
132
|
<div class="ttc" id="classSVF_1_1ContextCond_html_a7d89351906ef4dff9adb1196f45bc9be"><div class="ttname"><a href="classSVF_1_1ContextCond.html#a7d89351906ef4dff9adb1196f45bc9be">SVF::ContextCond::maximumPath</a></div><div class="ttdeci">static u32_t maximumPath</div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00354">DPItem.h:354</a></div></div>
|
|
133
133
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a0aec64ca944ea4f914a6fa799b7a8b38"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a0aec64ca944ea4f914a6fa799b7a8b38">SVF::DDAStat::_NumOfMustAliases</a></div><div class="ttdeci">u32_t _NumOfMustAliases</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00034">DDAStat.h:34</a></div></div>
|
|
134
134
|
<div class="ttc" id="classSVF_1_1DDAStat_html_acab872c897c747157bb81f324bbab323"><div class="ttname"><a href="classSVF_1_1DDAStat.html#acab872c897c747157bb81f324bbab323">SVF::DDAStat::_vmsizeUsageBefore</a></div><div class="ttdeci">u32_t _vmsizeUsageBefore</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00093">DDAStat.h:93</a></div></div>
|
|
@@ -87,7 +87,7 @@ $(function() {
|
|
|
87
87
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a9353910ceb01b53da6e880ebeb157433"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a9353910ceb01b53da6e880ebeb157433">SVF::DDAStat::setMemUsageAfter</a></div><div class="ttdeci">void setMemUsageAfter(u32_t vmrss, u32_t vmsize)</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00062">DDAStat.h:62</a></div></div>
|
|
88
88
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a1388b2d218d5c28eaf3f487950c99730"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a1388b2d218d5c28eaf3f487950c99730">SVF::DDAStat::_TotalNumOfInfeasiblePath</a></div><div class="ttdeci">u32_t _TotalNumOfInfeasiblePath</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00077">DDAStat.h:77</a></div></div>
|
|
89
89
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a1afb47b898f646f71d00c666373281e0"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a1afb47b898f646f71d00c666373281e0">SVF::DDAStat::_TotalPtsSize</a></div><div class="ttdeci">u32_t _TotalPtsSize</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00086">DDAStat.h:86</a></div></div>
|
|
90
|
-
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
90
|
+
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00084">SVFBasicTypes.h:84</a></div></div>
|
|
91
91
|
<div class="ttc" id="classSVF_1_1DDAStat_html_ad53ad7a958c05b45624d2859a6a9e647"><div class="ttname"><a href="classSVF_1_1DDAStat.html#ad53ad7a958c05b45624d2859a6a9e647">SVF::DDAStat::_StrongUpdateStores</a></div><div class="ttdeci">NodeBS _StrongUpdateStores</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00044">DDAStat.h:44</a></div></div>
|
|
92
92
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a7b83dd2c2719ed3b308c65aa037d446b"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a7b83dd2c2719ed3b308c65aa037d446b">SVF::DDAStat::_MaxNumOfDPMAtSVFGNode</a></div><div class="ttdeci">u32_t _MaxNumOfDPMAtSVFGNode</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00097">DDAStat.h:97</a></div></div>
|
|
93
93
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a5ad94d2109b293d306f67741effc73aa"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a5ad94d2109b293d306f67741effc73aa">SVF::DDAStat::_NumOfDPM</a></div><div class="ttdeci">u32_t _NumOfDPM</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00032">DDAStat.h:32</a></div></div>
|
|
@@ -114,7 +114,7 @@ $(function() {
|
|
|
114
114
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a2b788792447d4bccceff2426b45a21b2"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a2b788792447d4bccceff2426b45a21b2">SVF::DDAStat::_AnaTimePerQuery</a></div><div class="ttdeci">double _AnaTimePerQuery</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00039">DDAStat.h:39</a></div></div>
|
|
115
115
|
<div class="ttc" id="classSVF_1_1SVFG_html"><div class="ttname"><a href="classSVF_1_1SVFG.html">SVF::SVFG</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00065">SVFG.h:65</a></div></div>
|
|
116
116
|
<div class="ttc" id="namespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode </div><div class="ttdef"><b>Definition:</b> <a href="CFGNormalizer_8h_source.html#l00035">CFGNormalizer.h:35</a></div></div>
|
|
117
|
-
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
117
|
+
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00095">SVFBasicTypes.h:95</a></div></div>
|
|
118
118
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a967b0def2602a596538973703ffaad5d"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a967b0def2602a596538973703ffaad5d">SVF::DDAStat::_NumOfConstantPtr</a></div><div class="ttdeci">u32_t _NumOfConstantPtr</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00088">DDAStat.h:88</a></div></div>
|
|
119
119
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a0a5f8453f5347087d0f208101119a172"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a0a5f8453f5347087d0f208101119a172">SVF::DDAStat::_TotalNumOfStep</a></div><div class="ttdeci">u32_t _TotalNumOfStep</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00079">DDAStat.h:79</a></div></div>
|
|
120
120
|
<div class="ttc" id="classSVF_1_1ContextDDA_html"><div class="ttname"><a href="classSVF_1_1ContextDDA.html">SVF::ContextDDA</a></div><div class="ttdef"><b>Definition:</b> <a href="ContextDDA_8h_source.html#l00026">ContextDDA.h:26</a></div></div>
|
|
@@ -125,7 +125,7 @@ $(function() {
|
|
|
125
125
|
<div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
|
|
126
126
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a1f72d0026a7ab26aa8ac857e658c1015"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a1f72d0026a7ab26aa8ac857e658c1015">SVF::DDAStat::_TotalNumOfOutOfBudgetQuery</a></div><div class="ttdeci">u32_t _TotalNumOfOutOfBudgetQuery</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00073">DDAStat.h:73</a></div></div>
|
|
127
127
|
<div class="ttc" id="PTAStat_8h_html"><div class="ttname"><a href="PTAStat_8h.html">PTAStat.h</a></div></div>
|
|
128
|
-
<div class="ttc" id="namespaceSVF_html_a366625858f450a1ea5f985a3c83e0f14"><div class="ttname"><a href="namespaceSVF.html#a366625858f450a1ea5f985a3c83e0f14">SVF::u64_t</a></div><div class="ttdeci">unsigned long long u64_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
128
|
+
<div class="ttc" id="namespaceSVF_html_a366625858f450a1ea5f985a3c83e0f14"><div class="ttname"><a href="namespaceSVF.html#a366625858f450a1ea5f985a3c83e0f14">SVF::u64_t</a></div><div class="ttdeci">unsigned long long u64_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
|
|
129
129
|
<div class="ttc" id="classSVF_1_1DDAStat_html_acca22153ac81b5e37734c9786856e605"><div class="ttname"><a href="classSVF_1_1DDAStat.html#acca22153ac81b5e37734c9786856e605">SVF::DDAStat::_TotalNumOfStepInCycle</a></div><div class="ttdeci">u32_t _TotalNumOfStepInCycle</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00080">DDAStat.h:80</a></div></div>
|
|
130
130
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a55fa3ce574d128a89c1aa5f6a7dc17c6"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a55fa3ce574d128a89c1aa5f6a7dc17c6">SVF::DDAStat::getPTA</a></div><div class="ttdeci">PointerAnalysis * getPTA() const</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8cpp_source.html#l00076">DDAStat.cpp:76</a></div></div>
|
|
131
131
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00057">PointerAnalysis.h:57</a></div></div>
|