svf-tools 1.0.459 → 1.0.462
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/AndersenSCD_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
- package/SVF-doxygen/html/html/Annotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CHG_8cpp.html +2 -2
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/CHG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +13 -13
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ConsG_8h_source.html +7 -7
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CxtStmt_8h_source.html +2 -2
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +17 -17
- package/SVF-doxygen/html/html/DCHG_8h_source.html +8 -8
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +10 -10
- package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +6 -6
- package/SVF-doxygen/html/html/ExeState_8cpp.html +1 -0
- package/SVF-doxygen/html/html/ExeState_8cpp_source.html +26 -25
- package/SVF-doxygen/html/html/ExeState_8h_source.html +13 -13
- package/SVF-doxygen/html/html/ExtAPI_8h_source.html +3 -3
- package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp.html +2 -2
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +2 -2
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +6 -6
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +21 -21
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMModule_8h_source.html +3 -3
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +6 -6
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LocationSet_8cpp.html +1 -0
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +14 -13
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +10 -10
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MHP_8cpp.html +2 -2
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +46 -46
- package/SVF-doxygen/html/html/MHP_8h.html +1 -0
- package/SVF-doxygen/html/html/MHP_8h_source.html +102 -101
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +8 -8
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MTA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +14 -14
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +18 -18
- package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +4 -4
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +19 -19
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +11 -11
- package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h.html +68 -50
- package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h_source.html +51 -50
- package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +35 -41
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/SVFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +53 -46
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +39 -38
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +39 -41
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +63 -64
- package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFModule_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFVariables_8cpp.html +1 -0
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +35 -32
- package/SVF-doxygen/html/html/SVFVariables_8h.html +0 -1
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +140 -142
- package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +50 -50
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp.html +1 -0
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +95 -91
- package/SVF-doxygen/html/html/SymbolTableInfo_8h.html +0 -1
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +141 -143
- package/SVF-doxygen/html/html/TCT_8cpp.html +1 -0
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +41 -40
- package/SVF-doxygen/html/html/TCT_8h_source.html +7 -7
- package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +4 -4
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +24 -24
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +4 -4
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h.html +0 -2
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +61 -62
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +3 -3
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/VFG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/WPAPass_8h_source.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge-members.html +20 -22
- package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +16 -20
- package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +41 -41
- package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +50 -50
- package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +40 -40
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +183 -183
- package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +45 -45
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +29 -29
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge-members.html +31 -34
- package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +12 -100
- package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge-members.html +17 -19
- package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +11 -15
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1IteratedDominanceFrontier.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +27 -27
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +177 -177
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +91 -91
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +98 -98
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +35 -35
- package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PTACFInfoBuilder.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +37 -37
- package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge-members.html +19 -21
- package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +17 -21
- package/SVF-doxygen/html/html/classSVF_1_1RetPN-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +27 -27
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +94 -95
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +176 -217
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +56 -55
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +136 -92
- package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +98 -106
- package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +38 -38
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +78 -78
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +224 -240
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +88 -88
- package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge-members.html +17 -19
- package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +12 -16
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +40 -40
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ValVar-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +2 -2
- package/SVF-doxygen/html/html/functions_a.html +5 -8
- package/SVF-doxygen/html/html/functions_c.html +9 -5
- package/SVF-doxygen/html/html/functions_f.html +6 -4
- package/SVF-doxygen/html/html/functions_func.html +10 -13
- package/SVF-doxygen/html/html/functions_func_g.html +7 -8
- package/SVF-doxygen/html/html/functions_func_h.html +1 -1
- package/SVF-doxygen/html/html/functions_func_i.html +1 -1
- package/SVF-doxygen/html/html/functions_g.html +7 -8
- package/SVF-doxygen/html/html/functions_h.html +1 -1
- package/SVF-doxygen/html/html/functions_i.html +1 -1
- package/SVF-doxygen/html/html/functions_l.html +3 -3
- package/SVF-doxygen/html/html/functions_m.html +1 -4
- package/SVF-doxygen/html/html/functions_n.html +3 -3
- package/SVF-doxygen/html/html/functions_o.html +17 -17
- package/SVF-doxygen/html/html/functions_p.html +7 -7
- package/SVF-doxygen/html/html/functions_r.html +3 -3
- package/SVF-doxygen/html/html/functions_s.html +3 -3
- package/SVF-doxygen/html/html/functions_t.html +7 -7
- package/SVF-doxygen/html/html/functions_v.html +6 -6
- package/SVF-doxygen/html/html/functions_vars_m.html +0 -3
- package/SVF-doxygen/html/html/functions_w.html +10 -6
- package/SVF-doxygen/html/html/globals_c.html +103 -100
- package/SVF-doxygen/html/html/globals_s.html +9 -7
- package/SVF-doxygen/html/html/globals_type.html +3 -0
- package/SVF-doxygen/html/html/namespaceSVF.html +26 -44
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +14 -14
- package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +23 -23
- package/SVF-doxygen/html/html/namespacemembers_c.html +0 -3
- package/SVF-doxygen/html/html/namespacemembers_type.html +0 -3
- package/SVF-doxygen/html/html/search/all_1.js +0 -1
- package/SVF-doxygen/html/html/search/all_10.js +5 -5
- package/SVF-doxygen/html/html/search/all_12.js +2 -2
- package/SVF-doxygen/html/html/search/all_13.js +6 -6
- package/SVF-doxygen/html/html/search/all_14.js +5 -5
- package/SVF-doxygen/html/html/search/all_15.js +1 -1
- package/SVF-doxygen/html/html/search/all_16.js +2 -2
- package/SVF-doxygen/html/html/search/all_17.js +1 -1
- package/SVF-doxygen/html/html/search/all_3.js +2 -2
- package/SVF-doxygen/html/html/search/all_6.js +1 -1
- package/SVF-doxygen/html/html/search/all_7.js +3 -3
- package/SVF-doxygen/html/html/search/all_8.js +1 -1
- package/SVF-doxygen/html/html/search/all_9.js +1 -1
- package/SVF-doxygen/html/html/search/all_c.js +2 -2
- package/SVF-doxygen/html/html/search/all_d.js +1 -2
- package/SVF-doxygen/html/html/search/all_e.js +5 -5
- package/SVF-doxygen/html/html/search/all_f.js +4 -4
- package/SVF-doxygen/html/html/search/functions_0.js +0 -1
- package/SVF-doxygen/html/html/search/functions_6.js +3 -3
- package/SVF-doxygen/html/html/search/functions_7.js +1 -1
- package/SVF-doxygen/html/html/search/functions_8.js +1 -1
- package/SVF-doxygen/html/html/search/functions_e.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_2.js +1 -1
- package/SVF-doxygen/html/html/search/variables_14.js +2 -2
- package/SVF-doxygen/html/html/search/variables_15.js +1 -1
- package/SVF-doxygen/html/html/search/variables_d.js +0 -1
- package/SVF-doxygen/html/html/search/variables_e.js +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +14 -14
- 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_1CxtProc_01_4.html +1 -1
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +4 -4
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +3 -3
- package/include/Graphs/SVFGEdge.h +0 -12
- package/include/MTA/MHP.h +1 -0
- package/include/MemoryModel/SVFIR.h +0 -1
- package/include/MemoryModel/SVFVariables.h +1 -8
- package/include/MemoryModel/SymbolTableInfo.h +2 -22
- package/include/SVF-FE/BasicTypes.h +1 -0
- package/include/SVF-FE/SVFIRBuilder.h +1 -0
- package/include/Util/BasicTypes.h +0 -1
- package/lib/MTA/TCT.cpp +1 -0
- package/lib/MemoryModel/LocationSet.cpp +1 -0
- package/lib/MemoryModel/SVFIR.cpp +4 -28
- package/lib/MemoryModel/SVFVariables.cpp +10 -1
- package/lib/MemoryModel/SymbolTableInfo.cpp +26 -0
- package/lib/SVF-FE/SVFIRBuilder.cpp +25 -2
- package/lib/Util/ExeState.cpp +1 -0
- package/package.json +1 -1
|
@@ -125,7 +125,7 @@ $(function() {
|
|
|
125
125
|
<tr><td class="entry"><a class="el" href="classSVF_1_1GenericNode.html#afe6a7b286d9af4992f41b59612fd2900">InEdgeEnd</a>()</td><td class="entry"><a class="el" href="classSVF_1_1GenericNode.html">SVF::GenericNode< NodeTy, EdgeTy ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
126
126
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericNode.html#a0118fbeb2b314dcdcb53c56a2a13ab07">InEdgeEnd</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericNode.html">SVF::GenericNode< NodeTy, EdgeTy ></a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
127
127
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#a0d918a6c8dd3b7b395d4c7161bcf9656">InEdgeKindToSetMap</a></td><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
128
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#
|
|
128
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#a04b62eea862857ea5640fe74ef3f2a47">isConstantData</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></td><td class="entry"></td></tr>
|
|
129
129
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#acf194658d2cbdaf3f26f2af6c325fad7">isIsolatedNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></td><td class="entry"></td></tr>
|
|
130
130
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#a3b61042079a6c9dc395f38925c6a1271">isPointer</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
|
131
131
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html#a7c8ffadedbf53d30694feeb7771990af">isPtr</a></td><td class="entry"><a class="el" href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
@@ -116,8 +116,8 @@ Public Member Functions</h2></td></tr>
|
|
|
116
116
|
<tr class="memitem:a3b61042079a6c9dc395f38925c6a1271 inherit pub_methods_classSVF_1_1SVFVar"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a3b61042079a6c9dc395f38925c6a1271">isPointer</a> () const</td></tr>
|
|
117
117
|
<tr class="memdesc:a3b61042079a6c9dc395f38925c6a1271 inherit pub_methods_classSVF_1_1SVFVar"><td class="mdescLeft"> </td><td class="mdescRight">Whether it is a pointer. <a href="classSVF_1_1SVFVar.html#a3b61042079a6c9dc395f38925c6a1271">More...</a><br /></td></tr>
|
|
118
118
|
<tr class="separator:a3b61042079a6c9dc395f38925c6a1271 inherit pub_methods_classSVF_1_1SVFVar"><td class="memSeparator" colspan="2"> </td></tr>
|
|
119
|
-
<tr class="memitem:
|
|
120
|
-
<tr class="separator:
|
|
119
|
+
<tr class="memitem:a04b62eea862857ea5640fe74ef3f2a47 inherit pub_methods_classSVF_1_1SVFVar"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#a04b62eea862857ea5640fe74ef3f2a47">isConstantData</a> () const</td></tr>
|
|
120
|
+
<tr class="separator:a04b62eea862857ea5640fe74ef3f2a47 inherit pub_methods_classSVF_1_1SVFVar"><td class="memSeparator" colspan="2"> </td></tr>
|
|
121
121
|
<tr class="memitem:acf194658d2cbdaf3f26f2af6c325fad7 inherit pub_methods_classSVF_1_1SVFVar"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFVar.html#acf194658d2cbdaf3f26f2af6c325fad7">isIsolatedNode</a> () const</td></tr>
|
|
122
122
|
<tr class="memdesc:acf194658d2cbdaf3f26f2af6c325fad7 inherit pub_methods_classSVF_1_1SVFVar"><td class="mdescLeft"> </td><td class="mdescRight">Whether this is an isoloated node on the <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> graph. <a href="classSVF_1_1SVFVar.html#acf194658d2cbdaf3f26f2af6c325fad7">More...</a><br /></td></tr>
|
|
123
123
|
<tr class="separator:acf194658d2cbdaf3f26f2af6c325fad7 inherit pub_methods_classSVF_1_1SVFVar"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -298,7 +298,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
298
298
|
</table>
|
|
299
299
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
300
300
|
<div class="textblock">
|
|
301
|
-
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#
|
|
301
|
+
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00518">518</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
|
|
302
302
|
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
303
303
|
<a id="ae77995bc46e4f7b1b17fa86aa601ffae"></a>
|
|
304
304
|
<h2 class="memtitle"><span class="permalink"><a href="#ae77995bc46e4f7b1b17fa86aa601ffae">◆ </a></span>FIObjVar()</h2>
|
|
@@ -348,9 +348,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
348
348
|
|
|
349
349
|
<p>Constructor. </p>
|
|
350
350
|
|
|
351
|
-
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#
|
|
352
|
-
<div class="fragment"><div class="line"><a name="
|
|
353
|
-
<div class="ttc" id="classSVF_1_1ObjVar_html_a3d08dc1d15a449ff4b7018da4bfdcb88"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a3d08dc1d15a449ff4b7018da4bfdcb88">SVF::ObjVar::mem</a></div><div class="ttdeci">const MemObj * mem</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#
|
|
351
|
+
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00546">546</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
|
|
352
|
+
<div class="fragment"><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>  :</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>  <a class="code" href="classSVF_1_1ObjVar.html#a3ccbe6bbe3f565641e0cf46c5ecbb6bb">ObjVar</a>(val, i, <a class="code" href="classSVF_1_1ObjVar.html#a3d08dc1d15a449ff4b7018da4bfdcb88">mem</a>, ty)</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>  {</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  }</div><div class="ttc" id="classSVF_1_1ObjVar_html_a3ccbe6bbe3f565641e0cf46c5ecbb6bb"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a3ccbe6bbe3f565641e0cf46c5ecbb6bb">SVF::ObjVar::ObjVar</a></div><div class="ttdeci">ObjVar(const Value *val, NodeID i, const MemObj *m, PNODEK ty=ObjNode)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00314">SVFVariables.h:314</a></div></div>
|
|
353
|
+
<div class="ttc" id="classSVF_1_1ObjVar_html_a3d08dc1d15a449ff4b7018da4bfdcb88"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a3d08dc1d15a449ff4b7018da4bfdcb88">SVF::ObjVar::mem</a></div><div class="ttdeci">const MemObj * mem</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00312">SVFVariables.h:312</a></div></div>
|
|
354
354
|
</div><!-- fragment -->
|
|
355
355
|
</div>
|
|
356
356
|
</div>
|
|
@@ -381,8 +381,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
381
381
|
|
|
382
382
|
<p>Methods for support type inquiry through isa, cast, and dyn_cast: </p>
|
|
383
383
|
|
|
384
|
-
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#
|
|
385
|
-
<div class="fragment"><div class="line"><a name="
|
|
384
|
+
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00524">524</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
|
|
385
|
+
<div class="fragment"><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  {</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>  }</div></div><!-- fragment -->
|
|
386
386
|
</div>
|
|
387
387
|
</div>
|
|
388
388
|
<a id="a07ed7216777acb05861044542cc2fe66"></a>
|
|
@@ -409,9 +409,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
409
409
|
</table>
|
|
410
410
|
</div><div class="memdoc">
|
|
411
411
|
|
|
412
|
-
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#
|
|
413
|
-
<div class="fragment"><div class="line"><a name="
|
|
414
|
-
<div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVF::SVFVar::CloneFIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#
|
|
412
|
+
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00528">528</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
|
|
413
|
+
<div class="fragment"><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>  {</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  <span class="keywordflow">return</span> node->getNodeKind() == <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVFVar::FIObjNode</a></div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>  || node->getNodeKind() == <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVFVar::CloneFIObjNode</a>;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>  }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVF::SVFVar::FIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00070">SVFVariables.h:70</a></div></div>
|
|
414
|
+
<div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVF::SVFVar::CloneFIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00074">SVFVariables.h:74</a></div></div>
|
|
415
415
|
</div><!-- fragment -->
|
|
416
416
|
</div>
|
|
417
417
|
</div>
|
|
@@ -439,9 +439,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
439
439
|
</table>
|
|
440
440
|
</div><div class="memdoc">
|
|
441
441
|
|
|
442
|
-
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#
|
|
443
|
-
<div class="fragment"><div class="line"><a name="
|
|
444
|
-
<div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVF::SVFVar::CloneFIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#
|
|
442
|
+
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00533">533</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
|
|
443
|
+
<div class="fragment"><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>  {</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  <span class="keywordflow">return</span> node->getNodeKind() == <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVFVar::FIObjNode</a></div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>  || node->getNodeKind() == <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVFVar::CloneFIObjNode</a>;</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>  }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVF::SVFVar::FIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00070">SVFVariables.h:70</a></div></div>
|
|
444
|
+
<div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVF::SVFVar::CloneFIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00074">SVFVariables.h:74</a></div></div>
|
|
445
445
|
</div><!-- fragment -->
|
|
446
446
|
</div>
|
|
447
447
|
</div>
|
|
@@ -469,9 +469,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
469
469
|
</table>
|
|
470
470
|
</div><div class="memdoc">
|
|
471
471
|
|
|
472
|
-
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#
|
|
473
|
-
<div class="fragment"><div class="line"><a name="
|
|
474
|
-
<div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVF::SVFVar::CloneFIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#
|
|
472
|
+
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00538">538</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
|
|
473
|
+
<div class="fragment"><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  {</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>  <span class="keywordflow">return</span> node->getNodeKind() == <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVFVar::FIObjNode</a></div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  || node->getNodeKind() == <a class="code" href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVFVar::CloneFIObjNode</a>;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>  }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffaabe491b0a744825250b97f407962c4a6">SVF::SVFVar::FIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00070">SVFVariables.h:70</a></div></div>
|
|
474
|
+
<div class="ttc" id="classSVF_1_1SVFVar_html_a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a283f7c0c2eaae07c6865f73a0daafeffa2ca0654308fd181afcb1f20519a0247a">SVF::SVFVar::CloneFIObjNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00074">SVFVariables.h:74</a></div></div>
|
|
475
475
|
</div><!-- fragment -->
|
|
476
476
|
</div>
|
|
477
477
|
</div>
|
|
@@ -504,8 +504,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
504
504
|
|
|
505
505
|
<p>Reimplemented in <a class="el" href="classSVF_1_1CloneFIObjVar.html#abac4095a6a60c321caa40f837a752803">SVF::CloneFIObjVar</a>.</p>
|
|
506
506
|
|
|
507
|
-
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#
|
|
508
|
-
<div class="fragment"><div class="line"><a name="
|
|
507
|
+
<p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00552">552</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
|
|
508
|
+
<div class="fragment"><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  {</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a> && <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>->hasName())</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>->getName().str() + <span class="stringliteral">" (base object)"</span>;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  <span class="keywordflow">return</span> <span class="stringliteral">" (base object)"</span>;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  }</div><div class="ttc" id="classSVF_1_1SVFVar_html_a7deb494ac20ed56fca31a4f1fd92deea"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">SVF::SVFVar::value</a></div><div class="ttdeci">const Value * value</div><div class="ttdoc">value of this SVFIR node </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00080">SVFVariables.h:80</a></div></div>
|
|
509
509
|
</div><!-- fragment -->
|
|
510
510
|
</div>
|
|
511
511
|
</div>
|
|
@@ -536,11 +536,11 @@ Additional Inherited Members</h2></td></tr>
|
|
|
536
536
|
|
|
537
537
|
<p>Reimplemented in <a class="el" href="classSVF_1_1CloneFIObjVar.html#a336acd6fdf3e6be5ea44435a1576c9fc">SVF::CloneFIObjVar</a>.</p>
|
|
538
538
|
|
|
539
|
-
<p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#
|
|
540
|
-
<div class="fragment"><div class="line"><a name="
|
|
539
|
+
<p class="definition">Definition at line <a class="el" href="SVFVariables_8cpp_source.html#l00160">160</a> of file <a class="el" href="SVFVariables_8cpp_source.html">SVFVariables.cpp</a>.</p>
|
|
540
|
+
<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  std::string str;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  rawstr << <span class="stringliteral">"FIObjVar ID: "</span> << <a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">" (base object)"</span>;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">Options::ShowSVFIRValue</a>)</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  rawstr << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  rawstr << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">value</a>);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  }</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span> }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00080">BasicTypes.h:80</a></div></div>
|
|
541
541
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00392">SVFUtil.cpp:392</a></div></div>
|
|
542
542
|
<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#l00169">GenericGraph.h:169</a></div></div>
|
|
543
|
-
<div class="ttc" id="classSVF_1_1SVFVar_html_a7deb494ac20ed56fca31a4f1fd92deea"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">SVF::SVFVar::value</a></div><div class="ttdeci">const Value * value</div><div class="ttdoc">value of this SVFIR node </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#
|
|
543
|
+
<div class="ttc" id="classSVF_1_1SVFVar_html_a7deb494ac20ed56fca31a4f1fd92deea"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a7deb494ac20ed56fca31a4f1fd92deea">SVF::SVFVar::value</a></div><div class="ttdeci">const Value * value</div><div class="ttdoc">value of this SVFIR node </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00080">SVFVariables.h:80</a></div></div>
|
|
544
544
|
<div class="ttc" id="classSVF_1_1Options_html_a63c2ff1420867ea4ef0a94d28b3f0558"><div class="ttname"><a href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">SVF::Options::ShowSVFIRValue</a></div><div class="ttdeci">static const llvm::cl::opt< bool > ShowSVFIRValue</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00134">Options.h:134</a></div></div>
|
|
545
545
|
</div><!-- fragment -->
|
|
546
546
|
</div>
|
|
@@ -1029,7 +1029,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1029
1029
|
<p class="definition">Definition at line <a class="el" href="FSMPTA_8h_source.html#l00195">195</a> of file <a class="el" href="FSMPTA_8h_source.html">FSMPTA.h</a>.</p>
|
|
1030
1030
|
<div class="fragment"><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  {</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1FSMPTA.html#aa8dcd130d4b9283fc6b903de8e4ad830">mhp</a>-><a class="code" href="classSVF_1_1MHP.html#a033936547612c54326a604f0ff1e39a6">getTCT</a>()-><a class="code" href="classSVF_1_1TCT.html#a5b087b42340d1a1b2ee37339637709d3">getPTA</a>()-><a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>();</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  }</div><div class="ttc" id="classSVF_1_1TCT_html_a5b087b42340d1a1b2ee37339637709d3"><div class="ttname"><a href="classSVF_1_1TCT.html#a5b087b42340d1a1b2ee37339637709d3">SVF::TCT::getPTA</a></div><div class="ttdeci">PointerAnalysis * getPTA() const</div><div class="ttdoc">Get PTA. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00172">TCT.h:172</a></div></div>
|
|
1031
1031
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00206">PointerAnalysis.h:206</a></div></div>
|
|
1032
|
-
<div class="ttc" id="classSVF_1_1MHP_html_a033936547612c54326a604f0ff1e39a6"><div class="ttname"><a href="classSVF_1_1MHP.html#a033936547612c54326a604f0ff1e39a6">SVF::MHP::getTCT</a></div><div class="ttdeci">TCT * getTCT() const</div><div class="ttdoc">Get Thread Creation Tree. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#
|
|
1032
|
+
<div class="ttc" id="classSVF_1_1MHP_html_a033936547612c54326a604f0ff1e39a6"><div class="ttname"><a href="classSVF_1_1MHP.html#a033936547612c54326a604f0ff1e39a6">SVF::MHP::getTCT</a></div><div class="ttdeci">TCT * getTCT() const</div><div class="ttdoc">Get Thread Creation Tree. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00060">MHP.h:60</a></div></div>
|
|
1033
1033
|
<div class="ttc" id="classSVF_1_1FSMPTA_html_aa8dcd130d4b9283fc6b903de8e4ad830"><div class="ttname"><a href="classSVF_1_1FSMPTA.html#aa8dcd130d4b9283fc6b903de8e4ad830">SVF::FSMPTA::mhp</a></div><div class="ttdeci">MHP * mhp</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00227">FSMPTA.h:227</a></div></div>
|
|
1034
1034
|
</div><!-- fragment -->
|
|
1035
1035
|
</div>
|
|
@@ -989,7 +989,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
989
989
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_afe518d3d7f8051de5b9860f2460aa1b7"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#afe518d3d7f8051de5b9860f2460aa1b7">SVF::DDAVFSolver< NodeID, PointsTo, LocDPItem >::resetQuery</a></div><div class="ttdeci">virtual void resetQuery()</div><div class="ttdoc">Reset visited map for next points-to query. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00297">DDAVFSolver.h:297</a></div></div>
|
|
990
990
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a4880571f57542afc50da506dfe273183"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">SVF::PointerAnalysis::printStat</a></div><div class="ttdeci">bool printStat()</div><div class="ttdoc">Whether print statistics. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00367">PointerAnalysis.h:367</a></div></div>
|
|
991
991
|
<div class="ttc" id="classSVF_1_1FlowDDA_html_a8930c3b8f3b58dca8da6017310bb74ae"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#a8930c3b8f3b58dca8da6017310bb74ae">SVF::FlowDDA::handleOutOfBudgetDpm</a></div><div class="ttdeci">void handleOutOfBudgetDpm(const LocDPItem &dpm)</div><div class="ttdoc">Handle out-of-budget dpm. </div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8cpp_source.html#l00050">FlowDDA.cpp:50</a></div></div>
|
|
992
|
-
<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#
|
|
992
|
+
<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#l00045">SVFVariables.h:45</a></div></div>
|
|
993
993
|
<div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_ae7073c07bfd7912f888d54d4652c7cc2"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#ae7073c07bfd7912f888d54d4652c7cc2">SVF::BVDataPTAImpl::unionPts</a></div><div class="ttdeci">virtual bool unionPts(NodeID id, const PointsTo &target)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00124">PointerAnalysisImpl.h:124</a></div></div>
|
|
994
994
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_a52737dd41c63404ef91691154aa250ce"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#a52737dd41c63404ef91691154aa250ce">SVF::DDAVFSolver< NodeID, PointsTo, LocDPItem >::findPT</a></div><div class="ttdeci">virtual const PointsTo & findPT(const LocDPItem &dpm)</div><div class="ttdoc">Compute points-to. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00116">DDAVFSolver.h:116</a></div></div>
|
|
995
995
|
<div class="ttc" id="classSVF_1_1DPItem_html_a687ef8944ccb55b826508c47ea5b9240"><div class="ttname"><a href="classSVF_1_1DPItem.html#a687ef8944ccb55b826508c47ea5b9240">SVF::DPItem::setMaxBudget</a></div><div class="ttdeci">static void setMaxBudget(u32_t max)</div><div class="ttdoc">set max step budge per query </div><div class="ttdef"><b>Definition:</b> <a href="DPItem_8h_source.html#l00073">DPItem.h:73</a></div></div>
|
|
@@ -1360,11 +1360,11 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1360
1360
|
<p>Reimplemented from <a class="el" href="classSVF_1_1DDAVFSolver.html#a645c7d0637b49e139898016ff652e1f3">SVF::DDAVFSolver< NodeID, PointsTo, LocDPItem ></a>.</p>
|
|
1361
1361
|
|
|
1362
1362
|
<p class="definition">Definition at line <a class="el" href="FlowDDA_8cpp_source.html#l00155">155</a> of file <a class="el" href="FlowDDA_8cpp_source.html">FlowDDA.cpp</a>.</p>
|
|
1363
|
-
<div class="fragment"><div class="line"><a name="l00156"></a><span class="lineno"> 156</span> {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* mem = <a class="code" href="classSVF_1_1DDAVFSolver.html#a5521918cc06c182c821b9fae8136e4fe">_pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(<a class="code" href="classSVF_1_1FlowDDA.html#a9749c82c1164adb17e2ae53e725ded9a">getPtrNodeID</a>(var));</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(mem && <span class="stringliteral">"memory object is null??"</span>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">isHeap</a>())</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment">// if(const Instruction* mallocSite = SVFUtil::dyn_cast<Instruction>(mem->getValue())) {</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="comment">// const SVFFunction* fun = mallocSite->getParent()->getParent();</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="comment">// const SVFFunction* curFun = store->getBB() ? store->getBB()->getParent() : nullptr;</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment">// if(fun!=curFun)</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment">// return true;</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment">// if(_callGraphSCC->isInCycle(_callGraph->getCallGraphNode(fun)->getId()))</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment">// return true;</span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment">// if(loopInfoBuilder.getLoopInfo(fun)->getLoopFor(mallocSite->getParent()))</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="comment">// return true;</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment">//</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="comment">// return false;</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment">// }</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  }</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span> }</div><div class="ttc" id="classSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#
|
|
1363
|
+
<div class="fragment"><div class="line"><a name="l00156"></a><span class="lineno"> 156</span> {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* mem = <a class="code" href="classSVF_1_1DDAVFSolver.html#a5521918cc06c182c821b9fae8136e4fe">_pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(<a class="code" href="classSVF_1_1FlowDDA.html#a9749c82c1164adb17e2ae53e725ded9a">getPtrNodeID</a>(var));</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(mem && <span class="stringliteral">"memory object is null??"</span>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">isHeap</a>())</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment">// if(const Instruction* mallocSite = SVFUtil::dyn_cast<Instruction>(mem->getValue())) {</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="comment">// const SVFFunction* fun = mallocSite->getParent()->getParent();</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="comment">// const SVFFunction* curFun = store->getBB() ? store->getBB()->getParent() : nullptr;</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment">// if(fun!=curFun)</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment">// return true;</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment">// if(_callGraphSCC->isInCycle(_callGraph->getCallGraphNode(fun)->getId()))</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment">// return true;</span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment">// if(loopInfoBuilder.getLoopInfo(fun)->getLoopFor(mallocSite->getParent()))</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="comment">// return true;</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment">//</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="comment">// return false;</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment">// }</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  }</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span> }</div><div class="ttc" id="classSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00372">SymbolTableInfo.h:372</a></div></div>
|
|
1364
1364
|
<div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
|
|
1365
1365
|
<div class="ttc" id="classSVF_1_1FlowDDA_html_a9749c82c1164adb17e2ae53e725ded9a"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#a9749c82c1164adb17e2ae53e725ded9a">SVF::FlowDDA::getPtrNodeID</a></div><div class="ttdeci">virtual NodeID getPtrNodeID(const NodeID &var) const override</div><div class="ttdoc">Override parent method. </div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8h_source.html#l00086">FlowDDA.h:86</a></div></div>
|
|
1366
1366
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_a5521918cc06c182c821b9fae8136e4fe"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#a5521918cc06c182c821b9fae8136e4fe">SVF::DDAVFSolver< NodeID, PointsTo, LocDPItem >::_pag</a></div><div class="ttdeci">SVFIR * _pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00753">DDAVFSolver.h:753</a></div></div>
|
|
1367
|
-
<div class="ttc" id="classSVF_1_1MemObj_html_a898c5bb3956402578266a6fb142e02b1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">SVF::MemObj::isHeap</a></div><div class="ttdeci">bool isHeap() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#
|
|
1367
|
+
<div class="ttc" id="classSVF_1_1MemObj_html_a898c5bb3956402578266a6fb142e02b1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">SVF::MemObj::isHeap</a></div><div class="ttdeci">bool isHeap() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00725">SymbolTableInfo.cpp:725</a></div></div>
|
|
1368
1368
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a2dd4d5f704906270af13e7a07f900eb1"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">SVF::SVFIR::getObject</a></div><div class="ttdeci">const MemObj * getObject(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00344">SVFIR.h:344</a></div></div>
|
|
1369
1369
|
</div><!-- fragment -->
|
|
1370
1370
|
</div>
|
|
@@ -1251,7 +1251,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1251
1251
|
|
|
1252
1252
|
<p class="definition">Definition at line <a class="el" href="FlowSensitive_8cpp_source.html#l00701">701</a> of file <a class="el" href="FlowSensitive_8cpp_source.html">FlowSensitive.cpp</a>.</p>
|
|
1253
1253
|
<div class="fragment"><div class="line"><a name="l00702"></a><span class="lineno"> 702</span> {</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>  CallEdgeMap::const_iterator iter = newEdges.begin();</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>  CallEdgeMap::const_iterator eiter = newEdges.end();</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>  <span class="keywordflow">for</span> (; iter != eiter; iter++)</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>  {</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs = iter->first;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a> & functions = iter->second;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>  <span class="keywordflow">for</span> (FunctionSet::const_iterator func_iter = functions.begin(); func_iter != functions.end(); func_iter++)</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>  {</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* func = *func_iter;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>  <a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>-><a class="code" href="classSVF_1_1SVFG.html#aefca97f043b3e220ef6012a049b83fdf">connectCallerAndCallee</a>(cs, func, edges);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>  }</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>  }</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span> }</div><div class="ttc" id="classSVF_1_1FlowSensitive_html_aae032e5f5d53b131d0112dc8faa464a9"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">SVF::FlowSensitive::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00250">FlowSensitive.h:250</a></div></div>
|
|
1254
|
-
<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#
|
|
1254
|
+
<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#l00132">BasicTypes.h:132</a></div></div>
|
|
1255
1255
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac1422cd8b449fdb4a1f7c539364e4c41"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">SVF::PointerAnalysis::FunctionSet</a></div><div class="ttdeci">Set< const SVFFunction * > FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00110">PointerAnalysis.h:110</a></div></div>
|
|
1256
1256
|
<div class="ttc" id="classSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00363">ICFGNode.h:363</a></div></div>
|
|
1257
1257
|
<div class="ttc" id="classSVF_1_1SVFG_html_aefca97f043b3e220ef6012a049b83fdf"><div class="ttname"><a href="classSVF_1_1SVFG.html#aefca97f043b3e220ef6012a049b83fdf">SVF::SVFG::connectCallerAndCallee</a></div><div class="ttdeci">virtual void connectCallerAndCallee(const CallICFGNode *cs, const SVFFunction *callee, SVFGEdgeSetTy &edges)</div><div class="ttdoc">Connect SVFG nodes between caller and callee for indirect call site. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00651">SVFG.cpp:651</a></div></div>
|
|
@@ -1667,14 +1667,14 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1667
1667
|
|
|
1668
1668
|
<p class="definition">Definition at line <a class="el" href="FlowSensitive_8cpp_source.html#l00621">621</a> of file <a class="el" href="FlowSensitive_8cpp_source.html">FlowSensitive.cpp</a>.</p>
|
|
1669
1669
|
<div class="fragment"><div class="line"><a name="l00622"></a><span class="lineno"> 622</span> {</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>  <span class="keywordtype">bool</span> isSU = <span class="keyword">false</span>;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>  <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreVFGNode.html">StoreSVFGNode</a>* store = SVFUtil::dyn_cast<StoreSVFGNode>(node))</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>  {</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>& dstCPSet = <a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(store->getPAGDstNodeID());</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>  <span class="keywordflow">if</span> (dstCPSet.<a class="code" href="classSVF_1_1PointsTo.html#a879783ba6629e500af9aa7dfcda2563d">count</a>() == 1)</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>  {</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>  <a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> it = dstCPSet.<a class="code" href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">begin</a>();</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>  singleton = *it;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span> </div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>  <span class="comment">// Strong update can be made if this points-to target is not heap, array or field-insensitive.</span></div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>  <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">isHeapMemObj</a>(singleton) && !<a class="code" href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">isArrayMemObj</a>(singleton)</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>  && <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">getBaseObj</a>(singleton)-><a class="code" href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">isFieldInsensitive</a>() == <span class="keyword">false</span></div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>  && !<a class="code" href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">isLocalVarInRecursiveFun</a>(singleton))</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>  {</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>  isSU = <span class="keyword">true</span>;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>  }</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>  }</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  }</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>  <span class="keywordflow">return</span> isSU;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span> }</div><div class="ttc" id="classSVF_1_1StoreVFGNode_html"><div class="ttname"><a href="classSVF_1_1StoreVFGNode.html">SVF::StoreVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00240">VFGNode.h:240</a></div></div>
|
|
1670
|
-
<div class="ttc" id="classSVF_1_1SVFIR_html_af76a55c3b8255a81a566bdce35ffc749"><div class="ttname"><a href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">SVF::SVFIR::getBaseObj</a></div><div class="ttdeci">const MemObj * getBaseObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#
|
|
1670
|
+
<div class="ttc" id="classSVF_1_1SVFIR_html_af76a55c3b8255a81a566bdce35ffc749"><div class="ttname"><a href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">SVF::SVFIR::getBaseObj</a></div><div class="ttdeci">const MemObj * getBaseObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00413">SVFIR.h:413</a></div></div>
|
|
1671
1671
|
<div class="ttc" id="classSVF_1_1PointsTo_1_1PointsToIterator_html"><div class="ttname"><a href="classSVF_1_1PointsTo_1_1PointsToIterator.html">SVF::PointsTo::PointsToIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00180">PointsTo.h:180</a></div></div>
|
|
1672
1672
|
<div class="ttc" id="classSVF_1_1PointsTo_html_aa53962e561399bf493d1f2b9137356f6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00127">PointsTo.h:127</a></div></div>
|
|
1673
1673
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a89dfeedf8e3e91603a1e9c73e3608a73"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">SVF::PointerAnalysis::isArrayMemObj</a></div><div class="ttdeci">bool isArrayMemObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00324">PointerAnalysis.h:324</a></div></div>
|
|
1674
1674
|
<div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo & getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00099">PointerAnalysisImpl.h:99</a></div></div>
|
|
1675
1675
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a879783ba6629e500af9aa7dfcda2563d"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a879783ba6629e500af9aa7dfcda2563d">SVF::PointsTo::count</a></div><div class="ttdeci">u32_t count(void) const</div><div class="ttdoc">Returns number of elements. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00107">PointsTo.cpp:107</a></div></div>
|
|
1676
1676
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae6ea391ac44dffeb6899bb44323c5361"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">SVF::PointerAnalysis::isHeapMemObj</a></div><div class="ttdeci">bool isHeapMemObj(NodeID id) const</div><div class="ttdoc">Whether this object is heap or array. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00317">PointerAnalysis.h:317</a></div></div>
|
|
1677
|
-
<div class="ttc" id="classSVF_1_1MemObj_html_a41d85883d44ad77832b020455951c6fc"><div class="ttname"><a href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">SVF::MemObj::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive() const</div><div class="ttdoc">Return true if its field limit is 0. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#
|
|
1677
|
+
<div class="ttc" id="classSVF_1_1MemObj_html_a41d85883d44ad77832b020455951c6fc"><div class="ttname"><a href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">SVF::MemObj::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive() const</div><div class="ttdoc">Return true if its field limit is 0. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00694">SymbolTableInfo.cpp:694</a></div></div>
|
|
1678
1678
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a108380f6f0b67654bb7c7676686096c8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">SVF::PointerAnalysis::isLocalVarInRecursiveFun</a></div><div class="ttdeci">bool isLocalVarInRecursiveFun(NodeID id) const</div><div class="ttdoc">Whether a local variable is in function recursions. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00160">PointerAnalysis.cpp:160</a></div></div>
|
|
1679
1679
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_adc7f5c71efb9cd1bec4f5ca9127654c3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">SVF::PointerAnalysis::pag</a></div><div class="ttdeci">static SVFIR * pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00147">PointerAnalysis.h:147</a></div></div>
|
|
1680
1680
|
<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>
|
|
@@ -1937,7 +1937,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1937
1937
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_adc7f5c71efb9cd1bec4f5ca9127654c3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">SVF::PointerAnalysis::pag</a></div><div class="ttdeci">static SVFIR * pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00147">PointerAnalysis.h:147</a></div></div>
|
|
1938
1938
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0f71e4cd0948b294c7d33a690bde7dbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">SVF::PointerAnalysis::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00359">PointerAnalysis.h:359</a></div></div>
|
|
1939
1939
|
<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>
|
|
1940
|
-
<div class="ttc" id="classSVF_1_1SVFIR_html_a980e54129ece0757d7f0373f37428507"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a980e54129ece0757d7f0373f37428507">SVF::SVFIR::isNonPointerObj</a></div><div class="ttdeci">bool isNonPointerObj(NodeID id) const</div><div class="ttdoc">Whether an object can point to any other object or any of its fields is a pointer type...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#
|
|
1940
|
+
<div class="ttc" id="classSVF_1_1SVFIR_html_a980e54129ece0757d7f0373f37428507"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a980e54129ece0757d7f0373f37428507">SVF::SVFIR::isNonPointerObj</a></div><div class="ttdeci">bool isNonPointerObj(NodeID id) const</div><div class="ttdoc">Whether an object can point to any other object or any of its fields is a pointer type...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00674">SVFIR.cpp:674</a></div></div>
|
|
1941
1941
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a8f741cdffbf3c5fe0f602cdca677dee6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">SVF::PointsTo::end</a></div><div class="ttdeci">const_iterator end(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00131">PointsTo.h:131</a></div></div>
|
|
1942
1942
|
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
|
|
1943
1943
|
</div><!-- fragment -->
|
|
@@ -2079,7 +2079,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2079
2079
|
<div class="ttc" id="classSVF_1_1FlowSensitive_html_a82b76087363b26fbe749653935569de7"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a82b76087363b26fbe749653935569de7">SVF::FlowSensitive::storeTime</a></div><div class="ttdeci">double storeTime</div><div class="ttdoc">time of store edges </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00316">FlowSensitive.h:316</a></div></div>
|
|
2080
2080
|
<div class="ttc" id="classSVF_1_1FlowSensitive_html_a8ebe4342c1496b906ee1b6450558c3e8"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a8ebe4342c1496b906ee1b6450558c3e8">SVF::FlowSensitive::strongUpdateOutFromIn</a></div><div class="ttdeci">virtual bool strongUpdateOutFromIn(const SVFGNode *node, NodeID singleton)</div><div class="ttdoc">Handle strong updates. </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00167">FlowSensitive.h:167</a></div></div>
|
|
2081
2081
|
<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>
|
|
2082
|
-
<div class="ttc" id="classSVF_1_1SVFIR_html_a980e54129ece0757d7f0373f37428507"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a980e54129ece0757d7f0373f37428507">SVF::SVFIR::isNonPointerObj</a></div><div class="ttdeci">bool isNonPointerObj(NodeID id) const</div><div class="ttdoc">Whether an object can point to any other object or any of its fields is a pointer type...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#
|
|
2082
|
+
<div class="ttc" id="classSVF_1_1SVFIR_html_a980e54129ece0757d7f0373f37428507"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a980e54129ece0757d7f0373f37428507">SVF::SVFIR::isNonPointerObj</a></div><div class="ttdeci">bool isNonPointerObj(NodeID id) const</div><div class="ttdoc">Whether an object can point to any other object or any of its fields is a pointer type...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00674">SVFIR.cpp:674</a></div></div>
|
|
2083
2083
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a8f741cdffbf3c5fe0f602cdca677dee6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">SVF::PointsTo::end</a></div><div class="ttdeci">const_iterator end(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00131">PointsTo.h:131</a></div></div>
|
|
2084
2084
|
<div class="ttc" id="classSVF_1_1FlowSensitive_html_af5a94d14096ae2bbc47b3b3b9f723226"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#af5a94d14096ae2bbc47b3b3b9f723226">SVF::FlowSensitive::updateTime</a></div><div class="ttdeci">double updateTime</div><div class="ttdoc">time of strong/weak updates. </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00311">FlowSensitive.h:311</a></div></div>
|
|
2085
2085
|
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
|
|
@@ -2324,7 +2324,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2324
2324
|
<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>
|
|
2325
2325
|
<div class="ttc" id="classSVF_1_1FlowSensitive_html_ae571767cc5936cf631a44976d8277e91"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#ae571767cc5936cf631a44976d8277e91">SVF::FlowSensitive::propVarPtsFromSrcToDst</a></div><div class="ttdeci">virtual bool propVarPtsFromSrcToDst(NodeID var, const SVFGNode *src, const SVFGNode *dst)</div><div class="ttdoc">Propagate points-to information of a certain variable from src to dst. </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8cpp_source.html#l00397">FlowSensitive.cpp:397</a></div></div>
|
|
2326
2326
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0f71e4cd0948b294c7d33a690bde7dbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">SVF::PointerAnalysis::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00359">PointerAnalysis.h:359</a></div></div>
|
|
2327
|
-
<div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_a30aca718d25924f1babdf348bb0ace71"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#a30aca718d25924f1babdf348bb0ace71">SVF::IndirectSVFGEdge::getPointsTo</a></div><div class="ttdeci">const NodeBS & getPointsTo() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#
|
|
2327
|
+
<div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html_a30aca718d25924f1babdf348bb0ace71"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#a30aca718d25924f1babdf348bb0ace71">SVF::IndirectSVFGEdge::getPointsTo</a></div><div class="ttdeci">const NodeBS & getPointsTo() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00060">SVFGEdge.h:60</a></div></div>
|
|
2328
2328
|
<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>
|
|
2329
2329
|
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
|
|
2330
2330
|
</div><!-- fragment -->
|
|
@@ -2907,7 +2907,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2907
2907
|
<p class="definition">Definition at line <a class="el" href="FlowSensitive_8cpp_source.html#l00648">648</a> of file <a class="el" href="FlowSensitive_8cpp_source.html">FlowSensitive.cpp</a>.</p>
|
|
2908
2908
|
<div class="fragment"><div class="line"><a name="l00649"></a><span class="lineno"> 649</span> {</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>  <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-><a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">getClk</a>();</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a> newEdges;</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>  <a class="code" href="classSVF_1_1BVDataPTAImpl.html#a9830d4676fd424b633f8e4d918734296">onTheFlyCallGraphSolve</a>(callsites, newEdges);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span> </div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>  <span class="comment">// Bound the new edges by the Andersen's call graph.</span></div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>  <span class="comment">// TODO: we want this to be an assertion eventually.</span></div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a> &andersCallEdgeMap = <a class="code" href="classSVF_1_1FlowSensitive.html#a5cfee013a1a5821ef0c449842dd8690d">ander</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>();</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>  <span class="keywordflow">for</span> (<span class="keyword">typename</span> CallEdgeMap::value_type &csfs : newEdges)</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>  {</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *potentialCallSite = csfs.first;</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a> &potentialFunctionSet = csfs.second;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span> </div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>  <span class="comment">// Check this callsite even calls anything per Andersen's.</span></div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>  <span class="keyword">typename</span> CallEdgeMap::const_iterator andersFunctionSetIt</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>  = andersCallEdgeMap.find(potentialCallSite);</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>  <span class="keywordflow">if</span> (andersFunctionSetIt == andersCallEdgeMap.end())</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>  {</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>  potentialFunctionSet.clear();</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>  }</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span> </div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a> &andersFunctionSet = andersFunctionSetIt->second;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>  <span class="keywordflow">for</span> (FunctionSet::iterator potentialFunctionIt = potentialFunctionSet.begin();</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>  potentialFunctionIt != potentialFunctionSet.end(); )</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>  {</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *potentialFunction = *potentialFunctionIt;</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>  <span class="keywordflow">if</span> (andersFunctionSet.find(potentialFunction) == andersFunctionSet.end())</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>  {</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>  <span class="comment">// potentialFunction is not in the Andersen's call graph -- remove it.</span></div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>  potentialFunctionIt = potentialFunctionSet.erase(potentialFunctionIt);</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>  }</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>  {</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>  <span class="comment">// potentialFunction is in the Andersen's call graph -- keep it..</span></div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>  ++potentialFunctionIt;</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>  }</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>  }</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>  }</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span> </div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>  <a class="code" href="classSVF_1_1FlowSensitive.html#a69289c48fa91f850da90de080b9d26e5">SVFGEdgeSetTy</a> svfgEdges;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>  <a class="code" href="classSVF_1_1FlowSensitive.html#ad7640ada31b5cb542e492e27ab4fe1af">connectCallerAndCallee</a>(newEdges, svfgEdges);</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span> </div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>  <a class="code" href="classSVF_1_1FlowSensitive.html#a1886b4964efa92cfff761493d12768b8">updateConnectedNodes</a>(svfgEdges);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span> </div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>  <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-><a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">getClk</a>();</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>  <a class="code" href="classSVF_1_1FlowSensitive.html#afc140b6c8e78dc2d962f64fdf53b1e07">updateCallGraphTime</a> += (end - start) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>  <span class="keywordflow">return</span> (!newEdges.empty());</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span> }</div><div class="ttc" id="classSVF_1_1FlowSensitive_html_a1886b4964efa92cfff761493d12768b8"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a1886b4964efa92cfff761493d12768b8">SVF::FlowSensitive::updateConnectedNodes</a></div><div class="ttdeci">virtual void updateConnectedNodes(const SVFGEdgeSetTy &edges)</div><div class="ttdoc">Update nodes connected during updating call graph. </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8cpp_source.html#l00721">FlowSensitive.cpp:721</a></div></div>
|
|
2909
2909
|
<div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_a9830d4676fd424b633f8e4d918734296"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#a9830d4676fd424b633f8e4d918734296">SVF::BVDataPTAImpl::onTheFlyCallGraphSolve</a></div><div class="ttdeci">virtual void onTheFlyCallGraphSolve(const CallSiteToFunPtrMap &callsites, CallEdgeMap &newEdges)</div><div class="ttdoc">On the fly call graph construction. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8cpp_source.html#l00383">PointerAnalysisImpl.cpp:383</a></div></div>
|
|
2910
|
-
<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#
|
|
2910
|
+
<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#l00132">BasicTypes.h:132</a></div></div>
|
|
2911
2911
|
<div class="ttc" id="classSVF_1_1FlowSensitive_html_afc140b6c8e78dc2d962f64fdf53b1e07"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#afc140b6c8e78dc2d962f64fdf53b1e07">SVF::FlowSensitive::updateCallGraphTime</a></div><div class="ttdeci">double updateCallGraphTime</div><div class="ttdoc">time of updating call graph </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00318">FlowSensitive.h:318</a></div></div>
|
|
2912
2912
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a35bd5f0fb2c146199e9f1aa6a19b4062"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">SVF::PointerAnalysis::CallEdgeMap</a></div><div class="ttdeci">OrderedMap< const CallICFGNode *, FunctionSet > CallEdgeMap</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00111">PointerAnalysis.h:111</a></div></div>
|
|
2913
2913
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac1422cd8b449fdb4a1f7c539364e4c41"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">SVF::PointerAnalysis::FunctionSet</a></div><div class="ttdeci">Set< const SVFFunction * > FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00110">PointerAnalysis.h:110</a></div></div>
|