svf-tools 1.0.284 → 1.0.285
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/AndersenStat_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/Andersen_8h_source.html +5 -5
- package/SVF-doxygen/html/html/BasicTypes_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Conditions_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +4 -4
- package/SVF-doxygen/html/html/CxtStmt_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ExternalPAG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +3 -3
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +2 -2
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +3 -3
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +5 -5
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +5 -5
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemModel_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +15 -15
- package/SVF-doxygen/html/html/MemPartition_8h_source.html +11 -11
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +103 -34
- package/SVF-doxygen/html/html/MemRegion_8h.html +3 -3
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +97 -109
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +43 -42
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +46 -47
- package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +3 -3
- package/SVF-doxygen/html/html/PAGBuilder_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PAG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +29 -29
- package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +7 -7
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +19 -21
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +81 -81
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/SVFGBuilder_8h.html +2 -1
- package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +20 -19
- package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +3 -4
- package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +21 -21
- package/SVF-doxygen/html/html/SVFG_8cpp.html +1 -0
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +46 -45
- package/SVF-doxygen/html/html/SVFG_8h_source.html +12 -13
- package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFUtil_8cpp.html +9 -8
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +34 -33
- package/SVF-doxygen/html/html/SVFUtil_8h.html +14 -2
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +43 -36
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +2 -2
- package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/VFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/annotated.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +4 -4
- 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_1AddrPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +58 -59
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +19 -22
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +48 -49
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +9 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +60 -61
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +2 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +63 -64
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +2 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +59 -60
- package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +2 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +63 -64
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +5 -8
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +67 -68
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +2 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +58 -59
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +2 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType-members.html +64 -65
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType.html +4 -7
- package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +135 -138
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1BranchCondManager.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CmpPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +115 -115
- package/SVF-doxygen/html/html/classSVF_1_1CondPointsToSet.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1CopyPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtThreadStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG-members.html +63 -62
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +94 -92
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1EntryCHI.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ExternalPAG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FIObjPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +65 -66
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +2 -5
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +51 -52
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +10 -13
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +62 -63
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +35 -38
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +74 -75
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +17 -20
- package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepValPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG-members.html +71 -70
- package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +88 -86
- package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG-members.html +71 -70
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +126 -124
- package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LoadPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LocSymTableInfo.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator-members.html +76 -75
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +515 -506
- package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MSSACHI.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MSSADEF.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MSSAMU.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MSSAPHI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1MemRegion-members.html +9 -10
- package/SVF-doxygen/html/html/classSVF_1_1MemRegion.html +38 -56
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +132 -132
- package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MutablePTData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1NormalGepPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilder.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1PAGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache-members.html +28 -27
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +144 -111
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1RetMU.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +62 -62
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +37 -37
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +49 -49
- package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +52 -53
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +6 -9
- package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1StorePE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +51 -52
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +3 -6
- package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ValPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VariantGepPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +82 -83
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +5 -8
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +7 -7
- package/SVF-doxygen/html/html/classes.html +2 -2
- package/SVF-doxygen/html/html/functions_a.html +10 -10
- package/SVF-doxygen/html/html/functions_c.html +11 -11
- package/SVF-doxygen/html/html/functions_e.html +4 -7
- package/SVF-doxygen/html/html/functions_f.html +17 -14
- package/SVF-doxygen/html/html/functions_func.html +10 -10
- package/SVF-doxygen/html/html/functions_func_c.html +5 -5
- package/SVF-doxygen/html/html/functions_func_g.html +33 -30
- 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_func_m.html +2 -2
- package/SVF-doxygen/html/html/functions_func_o.html +3 -3
- package/SVF-doxygen/html/html/functions_func_p.html +1 -1
- package/SVF-doxygen/html/html/functions_func_s.html +1 -1
- package/SVF-doxygen/html/html/functions_g.html +30 -27
- package/SVF-doxygen/html/html/functions_h.html +1 -1
- package/SVF-doxygen/html/html/functions_i.html +7 -7
- package/SVF-doxygen/html/html/functions_l.html +4 -4
- package/SVF-doxygen/html/html/functions_m.html +2 -2
- package/SVF-doxygen/html/html/functions_o.html +7 -9
- package/SVF-doxygen/html/html/functions_p.html +17 -13
- package/SVF-doxygen/html/html/functions_r.html +8 -4
- package/SVF-doxygen/html/html/functions_s.html +7 -7
- package/SVF-doxygen/html/html/functions_t.html +3 -3
- package/SVF-doxygen/html/html/functions_type_c.html +1 -1
- package/SVF-doxygen/html/html/functions_type_e.html +0 -3
- package/SVF-doxygen/html/html/functions_type_f.html +4 -1
- package/SVF-doxygen/html/html/functions_type_l.html +1 -1
- package/SVF-doxygen/html/html/functions_type_p.html +3 -3
- package/SVF-doxygen/html/html/functions_type_s.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_c.html +5 -5
- package/SVF-doxygen/html/html/functions_vars_f.html +3 -3
- package/SVF-doxygen/html/html/functions_vars_i.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_p.html +1 -1
- package/SVF-doxygen/html/html/globals_s.html +3 -3
- package/SVF-doxygen/html/html/hierarchy.html +2 -2
- package/SVF-doxygen/html/html/menudata.js +1 -0
- package/SVF-doxygen/html/html/namespaceSVF.html +3 -3
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +250 -122
- package/SVF-doxygen/html/html/namespacemembers_c.html +3 -0
- package/SVF-doxygen/html/html/namespacemembers_e.html +3 -0
- package/SVF-doxygen/html/html/namespacemembers_func.html +23 -10
- package/SVF-doxygen/html/html/namespacemembers_m.html +3 -0
- package/SVF-doxygen/html/html/namespacemembers_p.html +4 -1
- package/SVF-doxygen/html/html/namespacemembers_type_e.html +3 -0
- package/SVF-doxygen/html/html/namespacemembers_type_p.html +1 -1
- package/SVF-doxygen/html/html/search/all_1.js +10 -10
- package/SVF-doxygen/html/html/search/all_10.js +12 -11
- package/SVF-doxygen/html/html/search/all_12.js +2 -2
- package/SVF-doxygen/html/html/search/all_13.js +7 -7
- package/SVF-doxygen/html/html/search/all_14.js +4 -4
- package/SVF-doxygen/html/html/search/all_15.js +1 -1
- package/SVF-doxygen/html/html/search/all_3.js +12 -11
- package/SVF-doxygen/html/html/search/all_5.js +2 -1
- package/SVF-doxygen/html/html/search/all_6.js +4 -3
- package/SVF-doxygen/html/html/search/all_7.js +14 -13
- package/SVF-doxygen/html/html/search/all_8.js +1 -1
- package/SVF-doxygen/html/html/search/all_9.js +4 -4
- package/SVF-doxygen/html/html/search/all_c.js +2 -2
- package/SVF-doxygen/html/html/search/all_d.js +5 -4
- package/SVF-doxygen/html/html/search/all_e.js +2 -2
- package/SVF-doxygen/html/html/search/all_f.js +3 -3
- package/SVF-doxygen/html/html/search/classes_4.js +2 -1
- package/SVF-doxygen/html/html/search/functions_0.js +10 -10
- package/SVF-doxygen/html/html/search/functions_10.js +2 -2
- package/SVF-doxygen/html/html/search/functions_2.js +6 -5
- package/SVF-doxygen/html/html/search/functions_6.js +14 -13
- 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_b.js +3 -2
- package/SVF-doxygen/html/html/search/functions_d.js +1 -1
- package/SVF-doxygen/html/html/search/functions_e.js +2 -1
- package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_2.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_4.js +2 -1
- package/SVF-doxygen/html/html/search/typedefs_5.js +2 -1
- package/SVF-doxygen/html/html/search/typedefs_b.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_f.js +3 -3
- package/SVF-doxygen/html/html/search/variables_10.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_3.js +5 -5
- package/SVF-doxygen/html/html/search/variables_6.js +3 -3
- package/SVF-doxygen/html/html/search/variables_9.js +1 -1
- package/SVF-doxygen/html/html/search/variables_d.js +1 -1
- package/SVF-doxygen/html/html/search/variables_e.js +2 -2
- package/SVF-doxygen/html/html/structSVF_1_1MemRegion_1_1equalMemRegion.html +3 -3
- package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalNodeBS-members.html +81 -0
- package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalNodeBS.html +134 -0
- package/SVF-doxygen/html/html/structSVF_1_1SVFUtil_1_1equalPointsTo.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PAG_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
- package/include/Graphs/SVFG.h +4 -4
- package/include/Graphs/SVFGOPT.h +4 -4
- package/include/MSSA/MemPartition.h +10 -10
- package/include/MSSA/MemRegion.h +40 -64
- package/include/MSSA/MemSSA.h +1 -4
- package/include/MSSA/SVFGBuilder.h +1 -0
- package/include/MemoryModel/LocationSet.h +3 -3
- package/include/MemoryModel/PersistentPointsToCache.h +19 -8
- package/include/MemoryModel/PointerAnalysisImpl.h +3 -4
- package/include/Util/SVFUtil.h +44 -1
- package/lib/Graphs/SVFG.cpp +12 -12
- package/lib/Graphs/SVFGOPT.cpp +6 -6
- package/lib/MSSA/MemPartition.cpp +31 -31
- package/lib/MSSA/MemRegion.cpp +59 -35
- package/lib/MSSA/MemSSA.cpp +5 -0
- package/lib/MemoryModel/LocationSet.cpp +2 -2
- package/lib/MemoryModel/PointerAnalysisImpl.cpp +1 -4
- package/lib/Util/SVFUtil.cpp +3 -2
- package/package.json +1 -1
|
@@ -164,7 +164,7 @@ Protected Attributes</h2></td></tr>
|
|
|
164
164
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
165
165
|
<div class="textblock"><p><a class="el" href="classSVF_1_1SVFG.html">SVFG</a> Builder </p>
|
|
166
166
|
|
|
167
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
167
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00059">59</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
168
168
|
</div><h2 class="groupheader">Member Typedef Documentation</h2>
|
|
169
169
|
<a id="ae12f803f5ccdb47232043c8c5ae129bf"></a>
|
|
170
170
|
<h2 class="memtitle"><span class="permalink"><a href="#ae12f803f5ccdb47232043c8c5ae129bf">◆ </a></span>CallEdgeMap</h2>
|
|
@@ -178,7 +178,7 @@ Protected Attributes</h2></td></tr>
|
|
|
178
178
|
</table>
|
|
179
179
|
</div><div class="memdoc">
|
|
180
180
|
|
|
181
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
181
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00064">64</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
182
182
|
|
|
183
183
|
</div>
|
|
184
184
|
</div>
|
|
@@ -194,7 +194,7 @@ Protected Attributes</h2></td></tr>
|
|
|
194
194
|
</table>
|
|
195
195
|
</div><div class="memdoc">
|
|
196
196
|
|
|
197
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
197
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00063">63</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
198
198
|
|
|
199
199
|
</div>
|
|
200
200
|
</div>
|
|
@@ -210,7 +210,7 @@ Protected Attributes</h2></td></tr>
|
|
|
210
210
|
</table>
|
|
211
211
|
</div><div class="memdoc">
|
|
212
212
|
|
|
213
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
213
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00065">65</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
214
214
|
|
|
215
215
|
</div>
|
|
216
216
|
</div>
|
|
@@ -226,7 +226,7 @@ Protected Attributes</h2></td></tr>
|
|
|
226
226
|
</table>
|
|
227
227
|
</div><div class="memdoc">
|
|
228
228
|
|
|
229
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
229
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00066">66</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
230
230
|
|
|
231
231
|
</div>
|
|
232
232
|
</div>
|
|
@@ -257,9 +257,9 @@ Protected Attributes</h2></td></tr>
|
|
|
257
257
|
|
|
258
258
|
<p>Constructor. </p>
|
|
259
259
|
|
|
260
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
261
|
-
<div class="fragment"><div class="line"><a name="
|
|
262
|
-
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#
|
|
260
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00069">69</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
261
|
+
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> : <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1SVFGBuilder.html#a70de38086437635d2e44d2a0c9fdded9">SVFGWithIndCall</a>(_SVFGWithIndCall) {}</div><div class="ttc" id="classSVF_1_1SVFGBuilder_html_a70de38086437635d2e44d2a0c9fdded9"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a70de38086437635d2e44d2a0c9fdded9">SVF::SVFGBuilder::SVFGWithIndCall</a></div><div class="ttdeci">bool SVFGWithIndCall</div><div class="ttdoc">SVFG with precomputed indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00121">SVFGBuilder.h:121</a></div></div>
|
|
262
|
+
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00119">SVFGBuilder.h:119</a></div></div>
|
|
263
263
|
</div><!-- fragment -->
|
|
264
264
|
</div>
|
|
265
265
|
</div>
|
|
@@ -288,8 +288,8 @@ Protected Attributes</h2></td></tr>
|
|
|
288
288
|
|
|
289
289
|
<p>Destructor. </p>
|
|
290
290
|
|
|
291
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
292
|
-
<div class="fragment"><div class="line"><a name="
|
|
291
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00072">72</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
292
|
+
<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {}</div></div><!-- fragment -->
|
|
293
293
|
</div>
|
|
294
294
|
</div>
|
|
295
295
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
@@ -335,9 +335,9 @@ Protected Attributes</h2></td></tr>
|
|
|
335
335
|
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8cpp_source.html#l00077">77</a> of file <a class="el" href="SVFGBuilder_8cpp_source.html">SVFGBuilder.cpp</a>.</p>
|
|
336
336
|
<div class="fragment"><div class="line"><a name="l00078"></a><span class="lineno"> 78</span> {</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>* mssa = <a class="code" href="classSVF_1_1SVFGBuilder.html#a49cee21be46d6a3f65eec638714038ed">buildMSSA</a>(pta, (<a class="code" href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6ada8562b20e8d888a4b421c200957294d">VFG::PTRONLYSVFG</a>==kind || <a class="code" href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6a8ed0b9aea88fbbbe91f33301bea0c9dd">VFG::PTRONLYSVFG_OPT</a>==kind));</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">"Build Sparse Value-Flow Graph \n"</span>));</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#a78ce4bd2e80e7b87ff0ee52edd1db403">Options::SingleVFG</a>)</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">globalSvfg</a>==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keywordflow">if</span>(kind == <a class="code" href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6aab1abd6be4a29fe8fb03a82f85e568a0">VFG::FULLSVFG_OPT</a> || kind == <a class="code" href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6a8ed0b9aea88fbbbe91f33301bea0c9dd">VFG::PTRONLYSVFG_OPT</a>)</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a> = <a class="code" href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">globalSvfg</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1SVFGOPT.html">SVFGOPT</a>(mssa, kind);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a> = <a class="code" href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">globalSvfg</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>(mssa, kind);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#ae2d84f7527de200a2f269dc1c056a305">buildSVFG</a>();</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  }</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  }</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordflow">if</span>(kind == <a class="code" href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6aab1abd6be4a29fe8fb03a82f85e568a0">VFG::FULLSVFG_OPT</a> || kind == <a class="code" href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6a8ed0b9aea88fbbbe91f33301bea0c9dd">VFG::PTRONLYSVFG_OPT</a>)</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1SVFGOPT.html">SVFGOPT</a>(mssa, kind);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>(mssa,kind);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#ae2d84f7527de200a2f269dc1c056a305">buildSVFG</a>();</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  }</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#a982b4cd71ccafd07d94f10a0a2e953c2">Options::SVFGWithIndirectCall</a> || <a class="code" href="classSVF_1_1SVFGBuilder.html#a70de38086437635d2e44d2a0c9fdded9">SVFGWithIndCall</a>)</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-><a class="code" href="classSVF_1_1VFG.html#a0c0a7c8f0bd27bc9e88ce54c0809b11b">updateCallGraph</a>(pta);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#a3061c75f7491dd737222b1b877721070">Options::DumpVFG</a>)</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-><a class="code" href="classSVF_1_1SVFG.html#a5fdaddc52e7342b834d76d64c1a1e498">dump</a>(<span class="stringliteral">"svfg_final"</span>);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div><div class="ttc" id="classSVF_1_1SVFG_html_a5fdaddc52e7342b834d76d64c1a1e498"><div class="ttname"><a href="classSVF_1_1SVFG.html#a5fdaddc52e7342b834d76d64c1a1e498">SVF::SVFG::dump</a></div><div class="ttdeci">void dump(const std::string &file, bool simple=false)</div><div class="ttdoc">Dump graph into dot file. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00559">SVFG.cpp:559</a></div></div>
|
|
337
337
|
<div class="ttc" id="classSVF_1_1VFG_html_ac2e2f555975063da3fa1932ac35802c6aab1abd6be4a29fe8fb03a82f85e568a0"><div class="ttname"><a href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6aab1abd6be4a29fe8fb03a82f85e568a0">SVF::VFG::FULLSVFG_OPT</a></div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00055">VFG.h:55</a></div></div>
|
|
338
|
-
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a609eea630a8f88fe9eaba15ce7e48738"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">SVF::SVFUtil::pasMsg</a></div><div class="ttdeci">std::string pasMsg(std::string msg)</div><div class="ttdoc">Print each pass/phase message by converting a string into blue string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#
|
|
338
|
+
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a609eea630a8f88fe9eaba15ce7e48738"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">SVF::SVFUtil::pasMsg</a></div><div class="ttdeci">std::string pasMsg(std::string msg)</div><div class="ttdoc">Print each pass/phase message by converting a string into blue string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00100">SVFUtil.cpp:100</a></div></div>
|
|
339
339
|
<div class="ttc" id="classSVF_1_1VFG_html_ac2e2f555975063da3fa1932ac35802c6ada8562b20e8d888a4b421c200957294d"><div class="ttname"><a href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6ada8562b20e8d888a4b421c200957294d">SVF::VFG::PTRONLYSVFG</a></div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00055">VFG.h:55</a></div></div>
|
|
340
|
-
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a31b754a303116f33d679dfcd886c4bed"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">SVF::SVFGBuilder::globalSvfg</a></div><div class="ttdeci">static SVFG * globalSvfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#
|
|
340
|
+
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a31b754a303116f33d679dfcd886c4bed"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">SVF::SVFGBuilder::globalSvfg</a></div><div class="ttdeci">static SVFG * globalSvfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00074">SVFGBuilder.h:74</a></div></div>
|
|
341
341
|
<div class="ttc" id="classSVF_1_1VFG_html_a0c0a7c8f0bd27bc9e88ce54c0809b11b"><div class="ttname"><a href="classSVF_1_1VFG.html#a0c0a7c8f0bd27bc9e88ce54c0809b11b">SVF::VFG::updateCallGraph</a></div><div class="ttdeci">void updateCallGraph(PointerAnalysis *pta)</div><div class="ttdoc">Update VFG based on pointer analysis results. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8cpp_source.html#l00770">VFG.cpp:770</a></div></div>
|
|
342
342
|
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a49cee21be46d6a3f65eec638714038ed"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a49cee21be46d6a3f65eec638714038ed">SVF::SVFGBuilder::buildMSSA</a></div><div class="ttdeci">virtual MemSSA * buildMSSA(BVDataPTAImpl *pta, bool ptrOnlyMSSA)</div><div class="ttdoc">Build Memory SSA. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8cpp_source.html#l00122">SVFGBuilder.cpp:122</a></div></div>
|
|
343
343
|
<div class="ttc" id="classSVF_1_1MemSSA_html"><div class="ttname"><a href="classSVF_1_1MemSSA.html">SVF::MemSSA</a></div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00046">MemSSA.h:46</a></div></div>
|
|
@@ -349,8 +349,8 @@ Protected Attributes</h2></td></tr>
|
|
|
349
349
|
<div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
|
|
350
350
|
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_ae2d84f7527de200a2f269dc1c056a305"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#ae2d84f7527de200a2f269dc1c056a305">SVF::SVFGBuilder::buildSVFG</a></div><div class="ttdeci">virtual void buildSVFG()</div><div class="ttdoc">Can be rewritten by subclasses. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8cpp_source.html#l00068">SVFGBuilder.cpp:68</a></div></div>
|
|
351
351
|
<div class="ttc" id="classSVF_1_1SVFG_html"><div class="ttname"><a href="classSVF_1_1SVFG.html">SVF::SVFG</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00065">SVFG.h:65</a></div></div>
|
|
352
|
-
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a70de38086437635d2e44d2a0c9fdded9"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a70de38086437635d2e44d2a0c9fdded9">SVF::SVFGBuilder::SVFGWithIndCall</a></div><div class="ttdeci">bool SVFGWithIndCall</div><div class="ttdoc">SVFG with precomputed indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#
|
|
353
|
-
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#
|
|
352
|
+
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a70de38086437635d2e44d2a0c9fdded9"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a70de38086437635d2e44d2a0c9fdded9">SVF::SVFGBuilder::SVFGWithIndCall</a></div><div class="ttdeci">bool SVFGWithIndCall</div><div class="ttdoc">SVFG with precomputed indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00121">SVFGBuilder.h:121</a></div></div>
|
|
353
|
+
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00119">SVFGBuilder.h:119</a></div></div>
|
|
354
354
|
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00142">SVFBasicTypes.h:142</a></div></div>
|
|
355
355
|
<div class="ttc" id="classSVF_1_1SVFGOPT_html"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html">SVF::SVFGOPT</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00056">SVFGOPT.h:56</a></div></div>
|
|
356
356
|
</div><!-- fragment -->
|
|
@@ -437,24 +437,24 @@ Protected Attributes</h2></td></tr>
|
|
|
437
437
|
<p>Build Memory SSA. </p>
|
|
438
438
|
|
|
439
439
|
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8cpp_source.html#l00122">122</a> of file <a class="el" href="SVFGBuilder_8cpp_source.html">SVFGBuilder.cpp</a>.</p>
|
|
440
|
-
<div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">"Build Memory SSA \n"</span>));</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  <a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>* mssa = <span class="keyword">new</span> <a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>(pta, ptrOnlyMSSA);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <a class="code" href="namespaceSVF.html#aecbb42b8e9d17fa0189c50dda9fd5fdd">DominatorTree</a> dt;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  <a class="code" href="classSVF_1_1MemSSADF.html">MemSSADF</a> df;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule = mssa-><a class="code" href="classSVF_1_1MemSSA.html#ad40617a1907b9a6b8cc24888ce54a0ac">getPTA</a>()-><a class="code" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a>();</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVFModule::const_iterator</a> iter = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">begin</a>(), eiter = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">end</a>();</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  iter != eiter; ++iter)</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *fun = *iter;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">isExtCall</a>(fun))</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  dt.recalculate(*fun-><a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>());</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  df.<a class="code" href="classSVF_1_1MemSSADF.html#a050e6010673cb24d4ef689100213594b">runOnDT</a>(dt);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  mssa-><a class="code" href="classSVF_1_1MemSSA.html#ae56d1878046c119d1857727ca3609d74">buildMemSSA</a>(*fun, &df, &dt);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  }</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  mssa-><a class="code" href="classSVF_1_1MemSSA.html#a89c40c8fad70f3aead6531261e5a3cc3">performStat</a>();</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a097255cb1373feaaaf2fe60c998862d5">Options::DumpMSSA</a>)</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  mssa-><a class="code" href="classSVF_1_1MemSSA.html#a9f9ac433d9c9348ceb5be8893d814ebd">dumpMSSA</a>();</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  }</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordflow">return</span> mssa;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a609eea630a8f88fe9eaba15ce7e48738"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">SVF::SVFUtil::pasMsg</a></div><div class="ttdeci">std::string pasMsg(std::string msg)</div><div class="ttdoc">Print each pass/phase message by converting a string into blue string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#
|
|
440
|
+
<div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">"Build Memory SSA \n"</span>));</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  <a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>* mssa = <span class="keyword">new</span> <a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>(pta, ptrOnlyMSSA);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <a class="code" href="namespaceSVF.html#aecbb42b8e9d17fa0189c50dda9fd5fdd">DominatorTree</a> dt;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  <a class="code" href="classSVF_1_1MemSSADF.html">MemSSADF</a> df;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule = mssa-><a class="code" href="classSVF_1_1MemSSA.html#ad40617a1907b9a6b8cc24888ce54a0ac">getPTA</a>()-><a class="code" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a>();</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVFModule::const_iterator</a> iter = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">begin</a>(), eiter = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">end</a>();</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  iter != eiter; ++iter)</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *fun = *iter;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">isExtCall</a>(fun))</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  dt.recalculate(*fun-><a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>());</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  df.<a class="code" href="classSVF_1_1MemSSADF.html#a050e6010673cb24d4ef689100213594b">runOnDT</a>(dt);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  mssa-><a class="code" href="classSVF_1_1MemSSA.html#ae56d1878046c119d1857727ca3609d74">buildMemSSA</a>(*fun, &df, &dt);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  }</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  mssa-><a class="code" href="classSVF_1_1MemSSA.html#a89c40c8fad70f3aead6531261e5a3cc3">performStat</a>();</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a097255cb1373feaaaf2fe60c998862d5">Options::DumpMSSA</a>)</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  mssa-><a class="code" href="classSVF_1_1MemSSA.html#a9f9ac433d9c9348ceb5be8893d814ebd">dumpMSSA</a>();</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  }</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordflow">return</span> mssa;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a609eea630a8f88fe9eaba15ce7e48738"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">SVF::SVFUtil::pasMsg</a></div><div class="ttdeci">std::string pasMsg(std::string msg)</div><div class="ttdoc">Print each pass/phase message by converting a string into blue string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00100">SVFUtil.cpp:100</a></div></div>
|
|
441
441
|
<div class="ttc" id="classSVF_1_1SVFModule_html_a5486697889c6cca4f9f426650defc255"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">SVF::SVFModule::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00136">SVFModule.h:136</a></div></div>
|
|
442
|
-
<div class="ttc" id="classSVF_1_1MemSSA_html_a9f9ac433d9c9348ceb5be8893d814ebd"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a9f9ac433d9c9348ceb5be8893d814ebd">SVF::MemSSA::dumpMSSA</a></div><div class="ttdeci">void dumpMSSA(raw_ostream &Out=SVFUtil::outs())</div><div class="ttdoc">Print Memory SSA. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8cpp_source.html#
|
|
442
|
+
<div class="ttc" id="classSVF_1_1MemSSA_html_a9f9ac433d9c9348ceb5be8893d814ebd"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a9f9ac433d9c9348ceb5be8893d814ebd">SVF::MemSSA::dumpMSSA</a></div><div class="ttdeci">void dumpMSSA(raw_ostream &Out=SVFUtil::outs())</div><div class="ttdoc">Print Memory SSA. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8cpp_source.html#l00595">MemSSA.cpp:595</a></div></div>
|
|
443
443
|
<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="BasicTypes_8h_source.html#l00233">BasicTypes.h:233</a></div></div>
|
|
444
444
|
<div class="ttc" id="classSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00038">SVFModule.h:38</a></div></div>
|
|
445
|
-
<div class="ttc" id="classSVF_1_1MemSSADF_html"><div class="ttname"><a href="classSVF_1_1MemSSADF.html">SVF::MemSSADF</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#
|
|
446
|
-
<div class="ttc" id="classSVF_1_1MemSSADF_html_a050e6010673cb24d4ef689100213594b"><div class="ttname"><a href="classSVF_1_1MemSSADF.html#a050e6010673cb24d4ef689100213594b">SVF::MemSSADF::runOnDT</a></div><div class="ttdeci">bool runOnDT(DominatorTree &dt)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#
|
|
447
|
-
<div class="ttc" id="classSVF_1_1MemSSA_html_ae56d1878046c119d1857727ca3609d74"><div class="ttname"><a href="classSVF_1_1MemSSA.html#ae56d1878046c119d1857727ca3609d74">SVF::MemSSA::buildMemSSA</a></div><div class="ttdeci">virtual void buildMemSSA(const SVFFunction &fun, DominanceFrontier *, DominatorTree *)</div><div class="ttdoc">We start from here. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8cpp_source.html#
|
|
445
|
+
<div class="ttc" id="classSVF_1_1MemSSADF_html"><div class="ttname"><a href="classSVF_1_1MemSSADF.html">SVF::MemSSADF</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00042">SVFGBuilder.h:42</a></div></div>
|
|
446
|
+
<div class="ttc" id="classSVF_1_1MemSSADF_html_a050e6010673cb24d4ef689100213594b"><div class="ttname"><a href="classSVF_1_1MemSSADF.html#a050e6010673cb24d4ef689100213594b">SVF::MemSSADF::runOnDT</a></div><div class="ttdeci">bool runOnDT(DominatorTree &dt)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00048">SVFGBuilder.h:48</a></div></div>
|
|
447
|
+
<div class="ttc" id="classSVF_1_1MemSSA_html_ae56d1878046c119d1857727ca3609d74"><div class="ttname"><a href="classSVF_1_1MemSSA.html#ae56d1878046c119d1857727ca3609d74">SVF::MemSSA::buildMemSSA</a></div><div class="ttdeci">virtual void buildMemSSA(const SVFFunction &fun, DominanceFrontier *, DominatorTree *)</div><div class="ttdoc">We start from here. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8cpp_source.html#l00092">MemSSA.cpp:92</a></div></div>
|
|
448
448
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad8b71cebf46deaf60e2cd4f6d6bb9433"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">SVF::PointerAnalysis::getModule</a></div><div class="ttdeci">SVFModule * getModule() const</div><div class="ttdoc">Module. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00216">PointerAnalysis.h:216</a></div></div>
|
|
449
449
|
<div class="ttc" id="classSVF_1_1MemSSA_html"><div class="ttname"><a href="classSVF_1_1MemSSA.html">SVF::MemSSA</a></div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00046">MemSSA.h:46</a></div></div>
|
|
450
|
-
<div class="ttc" id="classSVF_1_1MemSSA_html_a89c40c8fad70f3aead6531261e5a3cc3"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a89c40c8fad70f3aead6531261e5a3cc3">SVF::MemSSA::performStat</a></div><div class="ttdeci">void performStat()</div><div class="ttdoc">Perform statistics. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8cpp_source.html#
|
|
450
|
+
<div class="ttc" id="classSVF_1_1MemSSA_html_a89c40c8fad70f3aead6531261e5a3cc3"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a89c40c8fad70f3aead6531261e5a3cc3">SVF::MemSSA::performStat</a></div><div class="ttdeci">void performStat()</div><div class="ttdoc">Perform statistics. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8cpp_source.html#l00468">MemSSA.cpp:468</a></div></div>
|
|
451
451
|
<div class="ttc" id="namespaceSVF_html_aecbb42b8e9d17fa0189c50dda9fd5fdd"><div class="ttname"><a href="namespaceSVF.html#aecbb42b8e9d17fa0189c50dda9fd5fdd">SVF::DominatorTree</a></div><div class="ttdeci">llvm::DominatorTree DominatorTree</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00197">BasicTypes.h:197</a></div></div>
|
|
452
452
|
<div class="ttc" id="classSVF_1_1Options_html_a097255cb1373feaaaf2fe60c998862d5"><div class="ttname"><a href="classSVF_1_1Options.html#a097255cb1373feaaaf2fe60c998862d5">SVF::Options::DumpMSSA</a></div><div class="ttdeci">static const llvm::cl::opt< bool > DumpMSSA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00116">Options.h:116</a></div></div>
|
|
453
453
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00047">SVFUtil.h:47</a></div></div>
|
|
454
454
|
<div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
|
|
455
455
|
<div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00249">BasicTypes.h:249</a></div></div>
|
|
456
456
|
<div class="ttc" id="classSVF_1_1SVFModule_html_a58d03edb6ff85f4943135478f113df31"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">SVF::SVFModule::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00144">SVFModule.h:144</a></div></div>
|
|
457
|
-
<div class="ttc" id="classSVF_1_1MemSSA_html_ad40617a1907b9a6b8cc24888ce54a0ac"><div class="ttname"><a href="classSVF_1_1MemSSA.html#ad40617a1907b9a6b8cc24888ce54a0ac">SVF::MemSSA::getPTA</a></div><div class="ttdeci">BVDataPTAImpl * getPTA() const</div><div class="ttdoc">Return PTA. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#
|
|
457
|
+
<div class="ttc" id="classSVF_1_1MemSSA_html_ad40617a1907b9a6b8cc24888ce54a0ac"><div class="ttname"><a href="classSVF_1_1MemSSA.html#ad40617a1907b9a6b8cc24888ce54a0ac">SVF::MemSSA::getPTA</a></div><div class="ttdeci">BVDataPTAImpl * getPTA() const</div><div class="ttdoc">Return PTA. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00315">MemSSA.h:315</a></div></div>
|
|
458
458
|
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00142">SVFBasicTypes.h:142</a></div></div>
|
|
459
459
|
<div class="ttc" id="classSVF_1_1SVFModule_html_afcf2978f32e15127fb093405dc17d7f1"><div class="ttname"><a href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVF::SVFModule::const_iterator</a></div><div class="ttdeci">FunctionSetType::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00049">SVFModule.h:49</a></div></div>
|
|
460
460
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00063">LLVMUtil.h:63</a></div></div>
|
|
@@ -536,11 +536,11 @@ Protected Attributes</h2></td></tr>
|
|
|
536
536
|
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8cpp_source.html#l00068">68</a> of file <a class="el" href="SVFGBuilder_8cpp_source.html">SVFGBuilder.cpp</a>.</p>
|
|
537
537
|
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> {</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>* mssa = <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-><a class="code" href="classSVF_1_1SVFG.html#a49a910bc4ea6e98d1584e74a018badc9">getMSSA</a>();</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-><a class="code" href="classSVF_1_1SVFG.html#a0920e9f9896531959d74ae61013d96d6">buildSVFG</a>();</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">if</span>(mssa-><a class="code" href="classSVF_1_1MemSSA.html#ad40617a1907b9a6b8cc24888ce54a0ac">getPTA</a>()-><a class="code" href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">printStat</a>())</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-><a class="code" href="classSVF_1_1SVFG.html#adc9fbb4553472b238d6c3bb5062279cb">performStat</a>();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> }</div><div class="ttc" id="classSVF_1_1SVFG_html_adc9fbb4553472b238d6c3bb5062279cb"><div class="ttname"><a href="classSVF_1_1SVFG.html#adc9fbb4553472b238d6c3bb5062279cb">SVF::SVFG::performStat</a></div><div class="ttdeci">void performStat()</div><div class="ttdoc">Perform statistics. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00760">SVFG.cpp:760</a></div></div>
|
|
538
538
|
<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#l00377">PointerAnalysis.h:377</a></div></div>
|
|
539
|
-
<div class="ttc" id="classSVF_1_1SVFG_html_a0920e9f9896531959d74ae61013d96d6"><div class="ttname"><a href="classSVF_1_1SVFG.html#a0920e9f9896531959d74ae61013d96d6">SVF::SVFG::buildSVFG</a></div><div class="ttdeci">virtual void buildSVFG()</div><div class="ttdoc">Start building SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#
|
|
539
|
+
<div class="ttc" id="classSVF_1_1SVFG_html_a0920e9f9896531959d74ae61013d96d6"><div class="ttname"><a href="classSVF_1_1SVFG.html#a0920e9f9896531959d74ae61013d96d6">SVF::SVFG::buildSVFG</a></div><div class="ttdeci">virtual void buildSVFG()</div><div class="ttdoc">Start building SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00219">SVFG.cpp:219</a></div></div>
|
|
540
540
|
<div class="ttc" id="classSVF_1_1MemSSA_html"><div class="ttname"><a href="classSVF_1_1MemSSA.html">SVF::MemSSA</a></div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00046">MemSSA.h:46</a></div></div>
|
|
541
|
-
<div class="ttc" id="classSVF_1_1MemSSA_html_ad40617a1907b9a6b8cc24888ce54a0ac"><div class="ttname"><a href="classSVF_1_1MemSSA.html#ad40617a1907b9a6b8cc24888ce54a0ac">SVF::MemSSA::getPTA</a></div><div class="ttdeci">BVDataPTAImpl * getPTA() const</div><div class="ttdoc">Return PTA. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#
|
|
541
|
+
<div class="ttc" id="classSVF_1_1MemSSA_html_ad40617a1907b9a6b8cc24888ce54a0ac"><div class="ttname"><a href="classSVF_1_1MemSSA.html#ad40617a1907b9a6b8cc24888ce54a0ac">SVF::MemSSA::getPTA</a></div><div class="ttdeci">BVDataPTAImpl * getPTA() const</div><div class="ttdoc">Return PTA. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00315">MemSSA.h:315</a></div></div>
|
|
542
542
|
<div class="ttc" id="classSVF_1_1SVFG_html_a49a910bc4ea6e98d1584e74a018badc9"><div class="ttname"><a href="classSVF_1_1SVFG.html#a49a910bc4ea6e98d1584e74a018badc9">SVF::SVFG::getMSSA</a></div><div class="ttdeci">MemSSA * getMSSA() const</div><div class="ttdoc">Get SVFG memory SSA. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00138">SVFG.h:138</a></div></div>
|
|
543
|
-
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#
|
|
543
|
+
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00119">SVFGBuilder.h:119</a></div></div>
|
|
544
544
|
</div><!-- fragment -->
|
|
545
545
|
</div>
|
|
546
546
|
</div>
|
|
@@ -569,8 +569,8 @@ Protected Attributes</h2></td></tr>
|
|
|
569
569
|
|
|
570
570
|
<p>Get <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> instance. </p>
|
|
571
571
|
|
|
572
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
573
|
-
<div class="fragment"><div class="line"><a name="
|
|
572
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00089">89</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
573
|
+
<div class="fragment"><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  }</div><div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00119">SVFGBuilder.h:119</a></div></div>
|
|
574
574
|
</div><!-- fragment -->
|
|
575
575
|
</div>
|
|
576
576
|
</div>
|
|
@@ -600,8 +600,8 @@ Protected Attributes</h2></td></tr>
|
|
|
600
600
|
|
|
601
601
|
<p>Return true if this is an VF Edge pre-connected by <a class="el" href="classSVF_1_1Andersen.html">Andersen</a>'s analysis. </p>
|
|
602
602
|
|
|
603
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
604
|
-
<div class="fragment"><div class="line"><a name="
|
|
603
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00101">101</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
604
|
+
<div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  {</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFGBuilder.html#aa9b432dd72f1a39be142c4e2c2d51247">vfEdgesAtIndCallSite</a>.find(const_cast<SVFGEdge*>(edge))!=<a class="code" href="classSVF_1_1SVFGBuilder.html#aa9b432dd72f1a39be142c4e2c2d51247">vfEdgesAtIndCallSite</a>.end();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  }</div><div class="ttc" id="classSVF_1_1SVFGBuilder_html_aa9b432dd72f1a39be142c4e2c2d51247"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#aa9b432dd72f1a39be142c4e2c2d51247">SVF::SVFGBuilder::vfEdgesAtIndCallSite</a></div><div class="ttdeci">SVFGEdgeSet vfEdgesAtIndCallSite</div><div class="ttdoc">SVFG Edges connected at indirect call/ret sites. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00118">SVFGBuilder.h:118</a></div></div>
|
|
605
605
|
</div><!-- fragment -->
|
|
606
606
|
</div>
|
|
607
607
|
</div>
|
|
@@ -631,8 +631,8 @@ Protected Attributes</h2></td></tr>
|
|
|
631
631
|
|
|
632
632
|
<p>Mark feasible VF edge by removing it from set vfEdgesAtIndCallSite. </p>
|
|
633
633
|
|
|
634
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
635
|
-
<div class="fragment"><div class="line"><a name="
|
|
634
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00095">95</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
635
|
+
<div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordflow">for</span>(SVFGEdgeSet::iterator it = edges.begin(), eit = edges.end(); it!=eit; ++it)</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#aa9b432dd72f1a39be142c4e2c2d51247">vfEdgesAtIndCallSite</a>.erase(*it);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  }</div><div class="ttc" id="classSVF_1_1SVFGBuilder_html_aa9b432dd72f1a39be142c4e2c2d51247"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#aa9b432dd72f1a39be142c4e2c2d51247">SVF::SVFGBuilder::vfEdgesAtIndCallSite</a></div><div class="ttdeci">SVFGEdgeSet vfEdgesAtIndCallSite</div><div class="ttdoc">SVFG Edges connected at indirect call/ret sites. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00118">SVFGBuilder.h:118</a></div></div>
|
|
636
636
|
</div><!-- fragment -->
|
|
637
637
|
</div>
|
|
638
638
|
</div>
|
|
@@ -664,7 +664,7 @@ Protected Attributes</h2></td></tr>
|
|
|
664
664
|
|
|
665
665
|
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8cpp_source.html#l00117">117</a> of file <a class="el" href="SVFGBuilder_8cpp_source.html">SVFGBuilder.cpp</a>.</p>
|
|
666
666
|
<div class="fragment"><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-><a class="code" href="classSVF_1_1SVFG.html#aeba803e60699f9d9422596d161d44241">clearMSSA</a>();</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span> }</div><div class="ttc" id="classSVF_1_1SVFG_html_aeba803e60699f9d9422596d161d44241"><div class="ttname"><a href="classSVF_1_1SVFG.html#aeba803e60699f9d9422596d161d44241">SVF::SVFG::clearMSSA</a></div><div class="ttdeci">void clearMSSA()</div><div class="ttdoc">Clear MSSA. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00131">SVFG.h:131</a></div></div>
|
|
667
|
-
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#
|
|
667
|
+
<div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00119">SVFGBuilder.h:119</a></div></div>
|
|
668
668
|
</div><!-- fragment -->
|
|
669
669
|
</div>
|
|
670
670
|
</div>
|
|
@@ -693,8 +693,8 @@ Protected Attributes</h2></td></tr>
|
|
|
693
693
|
|
|
694
694
|
<p>Clean up. </p>
|
|
695
695
|
|
|
696
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
697
|
-
<div class="fragment"><div class="line"><a name="
|
|
696
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00082">82</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
697
|
+
<div class="fragment"><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">globalSvfg</a>)</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keyword">delete</span> <a class="code" href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">globalSvfg</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <a class="code" href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">globalSvfg</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  }</div><div class="ttc" id="classSVF_1_1SVFGBuilder_html_a31b754a303116f33d679dfcd886c4bed"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a31b754a303116f33d679dfcd886c4bed">SVF::SVFGBuilder::globalSvfg</a></div><div class="ttdeci">static SVFG * globalSvfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00074">SVFGBuilder.h:74</a></div></div>
|
|
698
698
|
</div><!-- fragment -->
|
|
699
699
|
</div>
|
|
700
700
|
</div>
|
|
@@ -719,7 +719,7 @@ Protected Attributes</h2></td></tr>
|
|
|
719
719
|
</table>
|
|
720
720
|
</div><div class="memdoc">
|
|
721
721
|
|
|
722
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
722
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00074">74</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
723
723
|
|
|
724
724
|
</div>
|
|
725
725
|
</div>
|
|
@@ -743,7 +743,7 @@ Protected Attributes</h2></td></tr>
|
|
|
743
743
|
</table>
|
|
744
744
|
</div><div class="memdoc">
|
|
745
745
|
|
|
746
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
746
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00119">119</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
747
747
|
|
|
748
748
|
</div>
|
|
749
749
|
</div>
|
|
@@ -769,7 +769,7 @@ Protected Attributes</h2></td></tr>
|
|
|
769
769
|
|
|
770
770
|
<p><a class="el" href="classSVF_1_1SVFG.html">SVFG</a> with precomputed indirect call edges. </p>
|
|
771
771
|
|
|
772
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
772
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00121">121</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
773
773
|
|
|
774
774
|
</div>
|
|
775
775
|
</div>
|
|
@@ -795,7 +795,7 @@ Protected Attributes</h2></td></tr>
|
|
|
795
795
|
|
|
796
796
|
<p><a class="el" href="classSVF_1_1SVFG.html">SVFG</a> Edges connected at indirect call/ret sites. </p>
|
|
797
797
|
|
|
798
|
-
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#
|
|
798
|
+
<p class="definition">Definition at line <a class="el" href="SVFGBuilder_8h_source.html#l00118">118</a> of file <a class="el" href="SVFGBuilder_8h_source.html">SVFGBuilder.h</a>.</p>
|
|
799
799
|
|
|
800
800
|
</div>
|
|
801
801
|
</div>
|
|
@@ -81,8 +81,8 @@ $(function() {
|
|
|
81
81
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a7b0d533f3ccce8fc64deae6077f3d959">addAddrVFGNode</a>(const AddrPE *addr)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
82
82
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a9f0a280c43a82cb7e01ee8e887a84ad1">addBinaryOPVFGNode</a>(const PAGNode *resNode, PAG::BinaryOPList &oplist)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
83
83
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#aa01f63b17acdd52122a7f1ade329ccea">addCallEdge</a>(NodeID srcId, NodeID dstId, CallSiteID csId)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"></td></tr>
|
|
84
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html#
|
|
85
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#
|
|
84
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html#a11dc712bf74ba61160fed7a5c3efaeee">addCallIndirectSVFGEdge</a>(NodeID srcId, NodeID dstId, CallSiteID csid, const NodeBS &cpts)</td><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html">SVF::SVFGOPT</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
|
85
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#af8ceb1ebf745e6803c606c41f7a482ac">addCallIndirectVFEdge</a>(NodeID srcId, NodeID dstId, const NodeBS &cpts, CallSiteID csId)</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
86
86
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a424126e80453d641a7d51aa481a4c843">addCmpVFGNode</a>(const PAGNode *resNode, PAG::CmpPEList &oplist)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
87
87
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#afd664fad8aec173f4ed6c4aa588e5c46">addCopyVFGNode</a>(const CopyPE *copy)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
88
88
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#a8dd513e8e5343beeb5d117c1ff4e45ea">addDummyVersionPropSVFGNode</a>(const NodeID object, const NodeID version)</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
@@ -103,21 +103,21 @@ $(function() {
|
|
|
103
103
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html#a30a4165300d0b7ac9b31d9f9c496d943">addInterPHIOperands</a>(PHISVFGNode *phi, const PAGNode *operand)</td><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html">SVF::SVFGOPT</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
|
104
104
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html#a72c573ecbc12c44e6ce1d67527f888a8">addIntoWorklist</a>(const SVFGNode *node)</td><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html">SVF::SVFGOPT</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span></td></tr>
|
|
105
105
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a3c97d77bc0348471d6c098d5655f15b2">addIntraDirectVFEdge</a>(NodeID srcId, NodeID dstId)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"></td></tr>
|
|
106
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#
|
|
106
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#ad03f0064d3a1ff397b35a606304a9c80">addIntraIndirectVFEdge</a>(NodeID srcId, NodeID dstId, const NodeBS &cpts)</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
107
107
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#a0554abe7c072b66ab24a900284646572">addIntraMSSAPHISVFGNode</a>(ICFGNode *BlockICFGNode, const Map< u32_t, const MRVer *>::const_iterator opVerBegin, const Map< u32_t, const MRVer *>::const_iterator opVerEnd, const MRVer *resVer, const NodeID nodeId)</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
108
108
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a85dc35e83a5699382ead67728e94273c">addIntraPHIVFGNode</a>(const PAGNode *phiResNode, PAG::CopyPEList &oplist)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
109
109
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#adbd7966d18ab50da5a485ba6e043ba61">addLoadVFGNode</a>(const LoadPE *load)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
110
110
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html#a6aeeb727f1d9d917ff6cffbb88350b7a">addNewSVFGEdge</a>(NodeID srcId, NodeID dstId, const SVFGEdge *preEdge, const SVFGEdge *succEdge)</td><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html">SVF::SVFGOPT</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
|
111
111
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a59bc855eb8591d88e0898e14d4f4b607">addNullPtrVFGNode</a>(const PAGNode *pagNode)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
112
112
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a27ac8d60de7be75e831b4a28f8f8f1d2">addRetEdge</a>(NodeID srcId, NodeID dstId, CallSiteID csId)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"></td></tr>
|
|
113
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html#
|
|
114
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#
|
|
113
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html#afa99da68ef756d968d39a85f0fac3649">addRetIndirectSVFGEdge</a>(NodeID srcId, NodeID dstId, CallSiteID csid, const NodeBS &cpts)</td><td class="entry"><a class="el" href="classSVF_1_1SVFGOPT.html">SVF::SVFGOPT</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
|
114
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#a8ebf0e285c69db8332a1f8914d6190f6">addRetIndirectVFEdge</a>(NodeID srcId, NodeID dstId, const NodeBS &cpts, CallSiteID csId)</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
115
115
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a6d2a20830533ee40a5757e58e127f927">addStmtVFGNode</a>(StmtVFGNode *node, const PAGEdge *pagEdge)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
116
116
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1VFG.html#aa21ad616306c111b77fb3ec8f16b19be">addStoreVFGNode</a>(const StorePE *store)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
117
117
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#a67750c461e3543f6b75d2dd510d67297">addSVFGEdge</a>(SVFGEdge *edge)</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
118
118
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#a88e1f6f77421c5274ceeb14928bdcb43">addSVFGNode</a>(SVFGNode *node, ICFGNode *icfgNode)</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
|
|
119
119
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#abddfc95cf644d0729ee29eccf95699f1">addSVFGNodesForAddrTakenVars</a>()</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
120
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#
|
|
120
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFG.html#a1aba3845bad017f81cd5f938db03a161">addThreadMHPIndirectVFEdge</a>(NodeID srcId, NodeID dstId, const NodeBS &cpts)</td><td class="entry"><a class="el" href="classSVF_1_1SVFG.html">SVF::SVFG</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
121
121
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#aaeefa7a696350f6573510b670babbe4e">addUnaryOPVFGNode</a>(const PAGNode *resNode, PAG::UnaryOPList &oplist)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
122
122
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1VFG.html#a84cf5facb15e1d598c2527fba0c7634d">addVFGEdge</a>(VFGEdge *edge)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
123
123
|
<tr><td class="entry"><a class="el" href="classSVF_1_1VFG.html#ab1f4c2765af027e903634d5262aea80b">addVFGInterEdges</a>(const CallBlockNode *cs, const SVFFunction *callee)</td><td class="entry"><a class="el" href="classSVF_1_1VFG.html">SVF::VFG</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|