svf-tools 1.0.341 → 1.0.345
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 +2 -2
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/BasicTypes_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +7 -7
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/DDAClient_8h_source.html +3 -3
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +7 -7
- package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/FSMPTA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +7 -7
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +2 -2
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +15 -15
- package/SVF-doxygen/html/html/ICFGEdge_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGNode_8h.html +7 -7
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +69 -69
- package/SVF-doxygen/html/html/ICFGStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +64 -61
- package/SVF-doxygen/html/html/ICFG_8h_source.html +46 -46
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +6 -6
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +5 -5
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/MHP_8h_source.html +6 -6
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +9 -9
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +27 -27
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +18 -18
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +12 -12
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Options_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Options_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PCG_8h_source.html +4 -4
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +17 -17
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +18 -18
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +17 -17
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/ProgSlice_8h_source.html +4 -4
- package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +17 -17
- package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +9 -9
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +32 -32
- package/SVF-doxygen/html/html/SVFG_8h_source.html +27 -27
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +13 -13
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +31 -31
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +20 -20
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +14 -14
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +5 -5
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +7 -7
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +4 -4
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TCT_8h_source.html +3 -3
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +15 -15
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +20 -20
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +2 -2
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +11 -11
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +20 -20
- package/SVF-doxygen/html/html/VFG_8h_source.html +19 -19
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/annotated.html +17 -17
- package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +47 -47
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +34 -34
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +34 -34
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +38 -38
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +6 -5
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +15 -12
- package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +5 -3
- package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallCHI-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode-members.html +158 -0
- package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +852 -0
- package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CallMU-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1CallPE-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +31 -31
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +6 -5
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +31 -31
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA-members.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +60 -60
- package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG-members.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +51 -51
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker-members.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +33 -33
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker-members.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +52 -52
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +43 -43
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +33 -33
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +4 -2
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode-members.html +150 -0
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +618 -0
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +4 -2
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode-members.html +149 -0
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +624 -0
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1GlobalBlockNode.html +3 -1
- package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode-members.html +144 -0
- package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +413 -0
- package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1HareParForEdge-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1HareParForEdge.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1ICFG-members.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +224 -217
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +74 -71
- package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter-members.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +30 -30
- package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG-members.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +51 -51
- package/SVF-doxygen/html/html/classSVF_1_1InterICFGNode-members.html +144 -0
- package/SVF-doxygen/html/html/classSVF_1_1InterICFGNode.html +399 -0
- package/SVF-doxygen/html/html/classSVF_1_1InterICFGNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +7 -3
- package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG-members.html +21 -21
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +51 -51
- package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode-members.html +146 -0
- package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +494 -0
- package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker-members.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +61 -61
- package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1MHP-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator-members.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +198 -198
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA-members.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +77 -77
- package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +27 -27
- package/SVF-doxygen/html/html/classSVF_1_1Options.html +26 -26
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PCG-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph-members.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +118 -118
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +109 -109
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +5 -3
- package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode-members.html +153 -0
- package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +696 -0
- package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1RetPE-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +30 -30
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +160 -160
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +76 -76
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +131 -131
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +62 -62
- package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TCT-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE-members.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph-members.html +40 -40
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +220 -220
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge-members.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +42 -42
- package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +10 -9
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFG-members.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +96 -96
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +37 -37
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +12 -12
- package/SVF-doxygen/html/html/classes.html +16 -16
- package/SVF-doxygen/html/html/functions_a.html +59 -59
- package/SVF-doxygen/html/html/functions_c.html +65 -67
- package/SVF-doxygen/html/html/functions_f.html +14 -14
- package/SVF-doxygen/html/html/functions_func.html +56 -56
- package/SVF-doxygen/html/html/functions_func_c.html +28 -28
- package/SVF-doxygen/html/html/functions_func_f.html +6 -6
- package/SVF-doxygen/html/html/functions_func_g.html +86 -86
- package/SVF-doxygen/html/html/functions_func_h.html +17 -17
- package/SVF-doxygen/html/html/functions_func_i.html +12 -12
- package/SVF-doxygen/html/html/functions_func_m.html +1 -1
- package/SVF-doxygen/html/html/functions_func_p.html +1 -1
- package/SVF-doxygen/html/html/functions_func_r.html +6 -6
- package/SVF-doxygen/html/html/functions_func_s.html +2 -2
- package/SVF-doxygen/html/html/functions_func_t.html +7 -7
- package/SVF-doxygen/html/html/functions_func_u.html +3 -3
- package/SVF-doxygen/html/html/functions_g.html +88 -88
- package/SVF-doxygen/html/html/functions_h.html +16 -16
- package/SVF-doxygen/html/html/functions_i.html +19 -19
- package/SVF-doxygen/html/html/functions_m.html +1 -1
- package/SVF-doxygen/html/html/functions_p.html +10 -13
- package/SVF-doxygen/html/html/functions_r.html +6 -6
- package/SVF-doxygen/html/html/functions_s.html +21 -18
- package/SVF-doxygen/html/html/functions_t.html +13 -15
- package/SVF-doxygen/html/html/functions_type.html +1 -1
- package/SVF-doxygen/html/html/functions_type_c.html +24 -24
- package/SVF-doxygen/html/html/functions_type_f.html +3 -3
- package/SVF-doxygen/html/html/functions_type_i.html +2 -2
- package/SVF-doxygen/html/html/functions_type_p.html +1 -1
- package/SVF-doxygen/html/html/functions_type_s.html +1 -1
- package/SVF-doxygen/html/html/functions_type_v.html +2 -2
- package/SVF-doxygen/html/html/functions_u.html +3 -3
- package/SVF-doxygen/html/html/functions_v.html +5 -5
- package/SVF-doxygen/html/html/functions_vars_a.html +2 -2
- package/SVF-doxygen/html/html/functions_vars_c.html +11 -11
- package/SVF-doxygen/html/html/functions_vars_f.html +5 -5
- package/SVF-doxygen/html/html/functions_vars_g.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_i.html +3 -3
- package/SVF-doxygen/html/html/functions_vars_p.html +0 -3
- package/SVF-doxygen/html/html/functions_vars_r.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_s.html +3 -0
- package/SVF-doxygen/html/html/hierarchy.html +7 -7
- package/SVF-doxygen/html/html/namespaceSVF.html +11 -11
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +11 -11
- package/SVF-doxygen/html/html/search/all_1.js +58 -58
- package/SVF-doxygen/html/html/search/all_10.js +2 -3
- package/SVF-doxygen/html/html/search/all_12.js +5 -5
- package/SVF-doxygen/html/html/search/all_13.js +5 -4
- package/SVF-doxygen/html/html/search/all_14.js +8 -8
- package/SVF-doxygen/html/html/search/all_15.js +2 -2
- package/SVF-doxygen/html/html/search/all_16.js +3 -3
- package/SVF-doxygen/html/html/search/all_3.js +35 -34
- package/SVF-doxygen/html/html/search/all_6.js +12 -12
- package/SVF-doxygen/html/html/search/all_7.js +62 -61
- package/SVF-doxygen/html/html/search/all_8.js +17 -17
- package/SVF-doxygen/html/html/search/all_9.js +15 -15
- package/SVF-doxygen/html/html/search/all_d.js +1 -1
- package/SVF-doxygen/html/html/search/classes_2.js +1 -1
- package/SVF-doxygen/html/html/search/classes_5.js +2 -2
- package/SVF-doxygen/html/html/search/classes_6.js +1 -1
- package/SVF-doxygen/html/html/search/classes_8.js +2 -2
- package/SVF-doxygen/html/html/search/classes_e.js +1 -1
- package/SVF-doxygen/html/html/search/functions_0.js +55 -55
- package/SVF-doxygen/html/html/search/functions_10.js +2 -2
- package/SVF-doxygen/html/html/search/functions_11.js +4 -4
- package/SVF-doxygen/html/html/search/functions_12.js +1 -1
- package/SVF-doxygen/html/html/search/functions_2.js +10 -10
- package/SVF-doxygen/html/html/search/functions_5.js +4 -4
- package/SVF-doxygen/html/html/search/functions_6.js +61 -61
- package/SVF-doxygen/html/html/search/functions_7.js +17 -17
- package/SVF-doxygen/html/html/search/functions_8.js +12 -12
- package/SVF-doxygen/html/html/search/functions_b.js +1 -1
- package/SVF-doxygen/html/html/search/functions_e.js +1 -1
- package/SVF-doxygen/html/html/search/functions_f.js +4 -4
- package/SVF-doxygen/html/html/search/typedefs_0.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_14.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_2.js +21 -21
- package/SVF-doxygen/html/html/search/typedefs_5.js +3 -3
- package/SVF-doxygen/html/html/search/typedefs_8.js +2 -2
- package/SVF-doxygen/html/html/search/typedefs_f.js +1 -1
- package/SVF-doxygen/html/html/search/variables_1.js +2 -2
- package/SVF-doxygen/html/html/search/variables_10.js +0 -1
- package/SVF-doxygen/html/html/search/variables_12.js +1 -1
- package/SVF-doxygen/html/html/search/variables_13.js +1 -0
- 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 +4 -4
- package/SVF-doxygen/html/html/search/variables_6.js +5 -5
- package/SVF-doxygen/html/html/search/variables_7.js +1 -1
- package/SVF-doxygen/html/html/search/variables_9.js +1 -1
- 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 +23 -23
- 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/DDA/ContextDDA.h +3 -3
- package/include/DDA/DDAClient.h +2 -2
- package/include/DDA/DDAVFSolver.h +2 -2
- package/include/DDA/FlowDDA.h +2 -2
- package/include/Graphs/ICFG.h +33 -33
- package/include/Graphs/ICFGNode.h +33 -33
- package/include/Graphs/ICFGStat.h +11 -11
- package/include/Graphs/PTACallGraph.h +19 -19
- package/include/Graphs/SVFG.h +16 -16
- package/include/Graphs/SVFGNode.h +14 -14
- package/include/Graphs/SVFGOPT.h +1 -1
- package/include/Graphs/ThreadCallGraph.h +25 -25
- package/include/Graphs/VFG.h +10 -10
- package/include/Graphs/VFGNode.h +8 -8
- package/include/MSSA/MSSAMuChi.h +6 -6
- package/include/MSSA/MemRegion.h +24 -24
- package/include/MSSA/MemSSA.h +10 -10
- package/include/MTA/LockResultValidator.h +2 -2
- package/include/MTA/MHP.h +4 -4
- package/include/MTA/PCG.h +1 -1
- package/include/MTA/TCT.h +2 -2
- package/include/MemoryModel/PointerAnalysis.h +12 -12
- package/include/MemoryModel/SVFIR.h +21 -21
- package/include/MemoryModel/SVFStatements.h +11 -11
- package/include/SABER/LeakChecker.h +4 -4
- package/include/SABER/ProgSlice.h +2 -2
- package/include/SABER/SaberCheckerAPI.h +4 -4
- package/include/SABER/SaberSVFGBuilder.h +1 -1
- package/include/SABER/SrcSnkDDA.h +1 -1
- package/include/SVF-FE/ICFGBuilder.h +4 -4
- package/include/SVF-FE/SVFIRBuilder.h +5 -5
- package/include/Util/Options.h +1 -1
- package/lib/DDA/ContextDDA.cpp +3 -3
- package/lib/DDA/DDAClient.cpp +1 -1
- package/lib/DDA/FlowDDA.cpp +1 -1
- package/lib/Graphs/ICFG.cpp +88 -71
- package/lib/Graphs/PTACallGraph.cpp +5 -5
- package/lib/Graphs/SVFG.cpp +7 -7
- package/lib/Graphs/ThreadCallGraph.cpp +6 -6
- package/lib/Graphs/VFG.cpp +6 -6
- package/lib/MSSA/MemRegion.cpp +17 -17
- package/lib/MSSA/MemSSA.cpp +3 -3
- package/lib/MTA/LockAnalysis.cpp +4 -4
- package/lib/MTA/MHP.cpp +5 -5
- package/lib/MTA/MTAResultValidator.cpp +1 -1
- package/lib/MTA/PCG.cpp +1 -1
- package/lib/MemoryModel/PointerAnalysis.cpp +10 -10
- package/lib/MemoryModel/PointerAnalysisImpl.cpp +1 -1
- package/lib/MemoryModel/SVFIR.cpp +5 -5
- package/lib/MemoryModel/SVFStatements.cpp +53 -49
- package/lib/MemoryModel/SVFVariables.cpp +10 -10
- package/lib/SABER/DoubleFreeChecker.cpp +1 -1
- package/lib/SABER/FileChecker.cpp +2 -2
- package/lib/SABER/LeakChecker.cpp +8 -8
- package/lib/SABER/ProgSlice.cpp +2 -2
- package/lib/SVF-FE/CallGraphBuilder.cpp +4 -4
- package/lib/SVF-FE/Graph2Json.cpp +5 -5
- package/lib/SVF-FE/ICFGBuilder.cpp +31 -25
- package/lib/SVF-FE/SVFIRBuilder.cpp +8 -8
- package/lib/Util/Options.cpp +3 -3
- package/lib/Util/SVFUtil.cpp +2 -0
- package/lib/Util/TypeBasedHeapCloning.cpp +1 -1
- package/lib/WPA/Andersen.cpp +3 -3
- package/lib/WPA/FlowSensitive.cpp +2 -2
- package/lib/WPA/TypeAnalysis.cpp +1 -1
- package/lib/WPA/VersionedFlowSensitive.cpp +4 -4
- package/lib/WPA/WPAPass.cpp +4 -4
- package/package.json +1 -1
|
@@ -166,34 +166,34 @@ Additional Inherited Members</h2></td></tr>
|
|
|
166
166
|
<p>Build thread-aware callgraph. </p>
|
|
167
167
|
|
|
168
168
|
<p class="definition">Definition at line <a class="el" href="CallGraphBuilder_8cpp_source.html#l00069">69</a> of file <a class="el" href="CallGraphBuilder_8cpp_source.html">CallGraphBuilder.cpp</a>.</p>
|
|
169
|
-
<div class="fragment"><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <a class="code" href="classSVF_1_1CallGraphBuilder.html#aa64a27e99434908a203e566074c66ebc">buildCallGraph</a>(svfModule);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="code" href="classSVF_1_1ThreadCallGraph.html">ThreadCallGraph</a>* cg = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">dyn_cast</a><<a class="code" href="classSVF_1_1ThreadCallGraph.html">ThreadCallGraph</a>>(<a class="code" href="classSVF_1_1CallGraphBuilder.html#a77ccca4e81eb1199c89d75e1b2d21af6">callgraph</a>);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(cg && <span class="stringliteral">"not a thread callgraph?"</span>);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <a class="code" href="classSVF_1_1ThreadAPI.html">ThreadAPI</a>* tdAPI = <a class="code" href="classSVF_1_1ThreadAPI.html#a6852ff1eedc1117e95e45e4a90c80d53">ThreadAPI::getThreadAPI</a>();</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#ab86e221a93bec67a2ecb7cb53315f569">SVFModule::llvm_const_iterator</a> fi = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">llvmFunBegin</a>(), efi = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">llvmFunEnd</a>(); fi != efi; ++fi)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fun = *fi;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a032e8478a7b6a8bb0b7755c98a7bce91">const_inst_iterator</a> II = inst_begin(*fun), E = inst_end(*fun); II != E; ++II)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *inst = &*II;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordflow">if</span> (tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#a9da276dca5092d18f4f22d32e5ab6cdf">isTDFork</a>(inst))</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  {</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* cs = <a class="code" href="classSVF_1_1CallGraphBuilder.html#ab3e0b47be010e25c093953e54602d211">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#a7d10e8a815c836a070d35850f817a18c">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a6e2ebab64fd01e40e7100162fe544b04">addForksite</a>(cs);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* forkee = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>>(tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#a7ddc0c71aeae315af21972a4905b3456">getForkedFun</a>(inst));</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">if</span> (forkee)</div><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>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a92e5a3154a98e12bdbbe4e0d39e62b3e">addDirectForkEdge</a>(cs);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  }</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="comment">// indirect call to the start routine function</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a29d3e4d720f61b4c29fee9691cedff96">addThreadForkEdgeSetMap</a>(cs,<span class="keyword">nullptr</span>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  }</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  }</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#a86d75b7e3570337e484397e60f97d88e">isHareParFor</a>(inst))</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* cs = <a class="code" href="classSVF_1_1CallGraphBuilder.html#ab3e0b47be010e25c093953e54602d211">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#a7d10e8a815c836a070d35850f817a18c">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a9daa0817e1f88a2478d7094646c72e13">addParForSite</a>(cs);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* taskFunc = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>>(tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#afeedd6e518af76fa9e7142af8899b2f5">getTaskFuncAtHareParForSite</a>(inst));</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordflow">if</span> (taskFunc)</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a700ec3fd1c9d89a7176e05b2f1949aef">addDirectParForEdge</a>(cs);</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="comment">// indirect call to the start routine function</span></div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="keywordflow">else</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>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a845258d0d19de3dda573521a34dbf705">addHareParForEdgeSetMap</a>(cs,<span class="keyword">nullptr</span>);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  }</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  }</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  }</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  }</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="comment">// record join sites</span></div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#ab86e221a93bec67a2ecb7cb53315f569">SVFModule::llvm_const_iterator</a> fi = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">llvmFunBegin</a>(), efi = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">llvmFunEnd</a>(); fi != efi; ++fi)</div><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>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fun = *fi;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a032e8478a7b6a8bb0b7755c98a7bce91">const_inst_iterator</a> II = inst_begin(*fun), E = inst_end(*fun); II != E; ++II)</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  {</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *inst = &*II;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordflow">if</span> (tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#a8cc5f9ff6039392ce1471cd830973c44">isTDJoin</a>(inst))</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>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallBlockNode.html">CallBlockNode</a>* cs = <a class="code" href="classSVF_1_1CallGraphBuilder.html#ab3e0b47be010e25c093953e54602d211">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#a7d10e8a815c836a070d35850f817a18c">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#ae72e4e29bfda892f059f719454f6fcd2">addJoinsite</a>(cs);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  }</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>  }</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  <span class="keywordflow">return</span> cg;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span> }</div><div class="ttc" id="classSVF_1_1SVFModule_html_af38d0f831967d6d8391a4c84e58d6519"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">SVF::SVFModule::llvmFunEnd</a></div><div class="ttdeci">llvm_iterator llvmFunEnd()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00138">SVFModule.h:138</a></div></div>
|
|
169
|
+
<div class="fragment"><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <a class="code" href="classSVF_1_1CallGraphBuilder.html#aa64a27e99434908a203e566074c66ebc">buildCallGraph</a>(svfModule);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="code" href="classSVF_1_1ThreadCallGraph.html">ThreadCallGraph</a>* cg = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">dyn_cast</a><<a class="code" href="classSVF_1_1ThreadCallGraph.html">ThreadCallGraph</a>>(<a class="code" href="classSVF_1_1CallGraphBuilder.html#a77ccca4e81eb1199c89d75e1b2d21af6">callgraph</a>);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(cg && <span class="stringliteral">"not a thread callgraph?"</span>);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <a class="code" href="classSVF_1_1ThreadAPI.html">ThreadAPI</a>* tdAPI = <a class="code" href="classSVF_1_1ThreadAPI.html#a6852ff1eedc1117e95e45e4a90c80d53">ThreadAPI::getThreadAPI</a>();</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#ab86e221a93bec67a2ecb7cb53315f569">SVFModule::llvm_const_iterator</a> fi = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">llvmFunBegin</a>(), efi = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">llvmFunEnd</a>(); fi != efi; ++fi)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fun = *fi;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a032e8478a7b6a8bb0b7755c98a7bce91">const_inst_iterator</a> II = inst_begin(*fun), E = inst_end(*fun); II != E; ++II)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *inst = &*II;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordflow">if</span> (tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#a9da276dca5092d18f4f22d32e5ab6cdf">isTDFork</a>(inst))</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  {</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs = <a class="code" href="classSVF_1_1CallGraphBuilder.html#ab3e0b47be010e25c093953e54602d211">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#a483e92e076a426ec8f177eab3b971723">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a563ebb1ece0adb4bafe5e14b2a024a91">addForksite</a>(cs);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* forkee = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>>(tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#a7ddc0c71aeae315af21972a4905b3456">getForkedFun</a>(inst));</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">if</span> (forkee)</div><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>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a19e505dbca2d2b5128762b223b9a7114">addDirectForkEdge</a>(cs);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  }</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="comment">// indirect call to the start routine function</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#ab20211a66583387f0da4769bee65e300">addThreadForkEdgeSetMap</a>(cs,<span class="keyword">nullptr</span>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  }</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  }</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#a86d75b7e3570337e484397e60f97d88e">isHareParFor</a>(inst))</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs = <a class="code" href="classSVF_1_1CallGraphBuilder.html#ab3e0b47be010e25c093953e54602d211">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#a483e92e076a426ec8f177eab3b971723">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a69719915e8c23e3afd6766daea946ffe">addParForSite</a>(cs);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* taskFunc = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>>(tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#afeedd6e518af76fa9e7142af8899b2f5">getTaskFuncAtHareParForSite</a>(inst));</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordflow">if</span> (taskFunc)</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#ae942f7d46198207219e5ce8287497262">addDirectParForEdge</a>(cs);</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="comment">// indirect call to the start routine function</span></div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="keywordflow">else</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>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#aae1caa7231ab9436db98403d6a175149">addHareParForEdgeSetMap</a>(cs,<span class="keyword">nullptr</span>);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  }</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  }</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  }</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  }</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="comment">// record join sites</span></div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#ab86e221a93bec67a2ecb7cb53315f569">SVFModule::llvm_const_iterator</a> fi = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">llvmFunBegin</a>(), efi = svfModule-><a class="code" href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">llvmFunEnd</a>(); fi != efi; ++fi)</div><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>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a> *fun = *fi;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a032e8478a7b6a8bb0b7755c98a7bce91">const_inst_iterator</a> II = inst_begin(*fun), E = inst_end(*fun); II != E; ++II)</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  {</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *inst = &*II;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordflow">if</span> (tdAPI-><a class="code" href="classSVF_1_1ThreadAPI.html#a8cc5f9ff6039392ce1471cd830973c44">isTDJoin</a>(inst))</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>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs = <a class="code" href="classSVF_1_1CallGraphBuilder.html#ab3e0b47be010e25c093953e54602d211">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#a483e92e076a426ec8f177eab3b971723">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  cg-><a class="code" href="classSVF_1_1ThreadCallGraph.html#a795d504a098634b1725af272b37e46e7">addJoinsite</a>(cs);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  }</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>  }</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  <span class="keywordflow">return</span> cg;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span> }</div><div class="ttc" id="classSVF_1_1SVFModule_html_af38d0f831967d6d8391a4c84e58d6519"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">SVF::SVFModule::llvmFunEnd</a></div><div class="ttdeci">llvm_iterator llvmFunEnd()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00138">SVFModule.h:138</a></div></div>
|
|
170
170
|
<div class="ttc" id="classSVF_1_1ThreadAPI_html_a9da276dca5092d18f4f22d32e5ab6cdf"><div class="ttname"><a href="classSVF_1_1ThreadAPI.html#a9da276dca5092d18f4f22d32e5ab6cdf">SVF::ThreadAPI::isTDFork</a></div><div class="ttdeci">bool isTDFork(const Instruction *inst) const</div><div class="ttdoc">Return true if this call create a new thread. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadAPI_8h_source.html#l00129">ThreadAPI.h:129</a></div></div>
|
|
171
|
+
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a795d504a098634b1725af272b37e46e7"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a795d504a098634b1725af272b37e46e7">SVF::ThreadCallGraph::addJoinsite</a></div><div class="ttdeci">bool addJoinsite(const CallICFGNode *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00334">ThreadCallGraph.h:334</a></div></div>
|
|
171
172
|
<div class="ttc" id="namespaceSVF_html_a032e8478a7b6a8bb0b7755c98a7bce91"><div class="ttname"><a href="namespaceSVF.html#a032e8478a7b6a8bb0b7755c98a7bce91">SVF::const_inst_iterator</a></div><div class="ttdeci">llvm::const_inst_iterator const_inst_iterator</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00211">BasicTypes.h:211</a></div></div>
|
|
172
|
-
<div class="ttc" id="classSVF_1_1ICFG_html_a7d10e8a815c836a070d35850f817a18c"><div class="ttname"><a href="classSVF_1_1ICFG.html#a7d10e8a815c836a070d35850f817a18c">SVF::ICFG::getCallBlockNode</a></div><div class="ttdeci">CallBlockNode * getCallBlockNode(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00197">ICFG.cpp:197</a></div></div>
|
|
173
173
|
<div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
|
|
174
|
-
<div class="ttc" id="
|
|
174
|
+
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a563ebb1ece0adb4bafe5e14b2a024a91"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a563ebb1ece0adb4bafe5e14b2a024a91">SVF::ThreadCallGraph::addForksite</a></div><div class="ttdeci">bool addForksite(const CallICFGNode *cs)</div><div class="ttdoc">Add fork sites which directly or indirectly create a thread. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00329">ThreadCallGraph.h:329</a></div></div>
|
|
175
175
|
<div class="ttc" id="classSVF_1_1SVFModule_html_a648542aa5c4b487ad5aa12a39d15e951"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">SVF::SVFModule::llvmFunBegin</a></div><div class="ttdeci">llvm_iterator llvmFunBegin()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00130">SVFModule.h:130</a></div></div>
|
|
176
|
-
<div class="ttc" id="
|
|
176
|
+
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_ab20211a66583387f0da4769bee65e300"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#ab20211a66583387f0da4769bee65e300">SVF::ThreadCallGraph::addThreadForkEdgeSetMap</a></div><div class="ttdeci">void addThreadForkEdgeSetMap(const CallICFGNode *cs, ThreadForkEdge *edge)</div><div class="ttdoc">map call instruction to its CallGraphEdge map </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00365">ThreadCallGraph.h:365</a></div></div>
|
|
177
177
|
<div class="ttc" id="classSVF_1_1ThreadAPI_html_a7ddc0c71aeae315af21972a4905b3456"><div class="ttname"><a href="classSVF_1_1ThreadAPI.html#a7ddc0c71aeae315af21972a4905b3456">SVF::ThreadAPI::getForkedFun</a></div><div class="ttdeci">const Value * getForkedFun(const Instruction *inst) const</div><div class="ttdef"><b>Definition:</b> <a href="ThreadAPI_8h_source.html#l00168">ThreadAPI.h:168</a></div></div>
|
|
178
178
|
<div class="ttc" id="classSVF_1_1ThreadAPI_html_afeedd6e518af76fa9e7142af8899b2f5"><div class="ttname"><a href="classSVF_1_1ThreadAPI.html#afeedd6e518af76fa9e7142af8899b2f5">SVF::ThreadAPI::getTaskFuncAtHareParForSite</a></div><div class="ttdeci">const Value * getTaskFuncAtHareParForSite(const Instruction *inst) const</div><div class="ttdoc">Get the task function (i.e., the 5th parameter) of the hare_parallel_for call. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadAPI_8h_source.html#l00195">ThreadAPI.h:195</a></div></div>
|
|
179
179
|
<div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00076">BasicTypes.h:76</a></div></div>
|
|
180
180
|
<div class="ttc" id="classSVF_1_1CallGraphBuilder_html_a77ccca4e81eb1199c89d75e1b2d21af6"><div class="ttname"><a href="classSVF_1_1CallGraphBuilder.html#a77ccca4e81eb1199c89d75e1b2d21af6">SVF::CallGraphBuilder::callgraph</a></div><div class="ttdeci">PTACallGraph * callgraph</div><div class="ttdef"><b>Definition:</b> <a href="CallGraphBuilder_8h_source.html#l00046">CallGraphBuilder.h:46</a></div></div>
|
|
181
181
|
<div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
|
|
182
182
|
<div class="ttc" id="classSVF_1_1SVFModule_html_ab86e221a93bec67a2ecb7cb53315f569"><div class="ttname"><a href="classSVF_1_1SVFModule.html#ab86e221a93bec67a2ecb7cb53315f569">SVF::SVFModule::llvm_const_iterator</a></div><div class="ttdeci">LLVMFunctionSetType::const_iterator llvm_const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00054">SVFModule.h:54</a></div></div>
|
|
183
|
+
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_aae1caa7231ab9436db98403d6a175149"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#aae1caa7231ab9436db98403d6a175149">SVF::ThreadCallGraph::addHareParForEdgeSetMap</a></div><div class="ttdeci">void addHareParForEdgeSetMap(const CallICFGNode *cs, HareParForEdge *edge)</div><div class="ttdoc">map call instruction to its CallGraphEdge map </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00385">ThreadCallGraph.h:385</a></div></div>
|
|
183
184
|
<div class="ttc" id="classSVF_1_1ThreadAPI_html"><div class="ttname"><a href="classSVF_1_1ThreadAPI.html">SVF::ThreadAPI</a></div><div class="ttdef"><b>Definition:</b> <a href="ThreadAPI_8h_source.html#l00043">ThreadAPI.h:43</a></div></div>
|
|
184
185
|
<div class="ttc" id="classSVF_1_1ThreadAPI_html_a6852ff1eedc1117e95e45e4a90c80d53"><div class="ttname"><a href="classSVF_1_1ThreadAPI.html#a6852ff1eedc1117e95e45e4a90c80d53">SVF::ThreadAPI::getThreadAPI</a></div><div class="ttdeci">static ThreadAPI * getThreadAPI()</div><div class="ttdoc">Return a static reference. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadAPI_8h_source.html#l00102">ThreadAPI.h:102</a></div></div>
|
|
186
|
+
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a69719915e8c23e3afd6766daea946ffe"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a69719915e8c23e3afd6766daea946ffe">SVF::ThreadCallGraph::addParForSite</a></div><div class="ttdeci">bool addParForSite(const CallICFGNode *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00339">ThreadCallGraph.h:339</a></div></div>
|
|
185
187
|
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html">SVF::ThreadCallGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00158">ThreadCallGraph.h:158</a></div></div>
|
|
186
188
|
<div class="ttc" id="classSVF_1_1ThreadAPI_html_a86d75b7e3570337e484397e60f97d88e"><div class="ttname"><a href="classSVF_1_1ThreadAPI.html#a86d75b7e3570337e484397e60f97d88e">SVF::ThreadAPI::isHareParFor</a></div><div class="ttdeci">bool isHareParFor(const Instruction *inst) const</div><div class="ttdoc">Return true if this call proceeds a hare_parallel_for. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadAPI_8h_source.html#l00141">ThreadAPI.h:141</a></div></div>
|
|
187
189
|
<div class="ttc" id="classSVF_1_1CallGraphBuilder_html_aa64a27e99434908a203e566074c66ebc"><div class="ttname"><a href="classSVF_1_1CallGraphBuilder.html#aa64a27e99434908a203e566074c66ebc">SVF::CallGraphBuilder::buildCallGraph</a></div><div class="ttdeci">PTACallGraph * buildCallGraph(SVFModule *svfModule)</div><div class="ttdoc">Build normal callgraph. </div><div class="ttdef"><b>Definition:</b> <a href="CallGraphBuilder_8cpp_source.html#l00038">CallGraphBuilder.cpp:38</a></div></div>
|
|
188
|
-
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a845258d0d19de3dda573521a34dbf705"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a845258d0d19de3dda573521a34dbf705">SVF::ThreadCallGraph::addHareParForEdgeSetMap</a></div><div class="ttdeci">void addHareParForEdgeSetMap(const CallBlockNode *cs, HareParForEdge *edge)</div><div class="ttdoc">map call instruction to its CallGraphEdge map </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00385">ThreadCallGraph.h:385</a></div></div>
|
|
189
|
-
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a29d3e4d720f61b4c29fee9691cedff96"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a29d3e4d720f61b4c29fee9691cedff96">SVF::ThreadCallGraph::addThreadForkEdgeSetMap</a></div><div class="ttdeci">void addThreadForkEdgeSetMap(const CallBlockNode *cs, ThreadForkEdge *edge)</div><div class="ttdoc">map call instruction to its CallGraphEdge map </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00365">ThreadCallGraph.h:365</a></div></div>
|
|
190
|
-
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a700ec3fd1c9d89a7176e05b2f1949aef"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a700ec3fd1c9d89a7176e05b2f1949aef">SVF::ThreadCallGraph::addDirectParForEdge</a></div><div class="ttdeci">void addDirectParForEdge(const CallBlockNode *cs)</div><div class="ttdoc">Add direct/indirect parallel for edges. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8cpp_source.html#l00224">ThreadCallGraph.cpp:224</a></div></div>
|
|
191
190
|
<div class="ttc" id="classSVF_1_1ThreadAPI_html_a8cc5f9ff6039392ce1471cd830973c44"><div class="ttname"><a href="classSVF_1_1ThreadAPI.html#a8cc5f9ff6039392ce1471cd830973c44">SVF::ThreadAPI::isTDJoin</a></div><div class="ttdeci">bool isTDJoin(const Instruction *inst) const</div><div class="ttdoc">Return true if this call wait for a worker thread. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadAPI_8h_source.html#l00223">ThreadAPI.h:223</a></div></div>
|
|
191
|
+
<div class="ttc" id="classSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00364">ICFGNode.h:364</a></div></div>
|
|
192
|
+
<div class="ttc" id="classSVF_1_1ICFG_html_a483e92e076a426ec8f177eab3b971723"><div class="ttname"><a href="classSVF_1_1ICFG.html#a483e92e076a426ec8f177eab3b971723">SVF::ICFG::getCallBlockNode</a></div><div class="ttdeci">CallICFGNode * getCallBlockNode(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00209">ICFG.cpp:209</a></div></div>
|
|
192
193
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8182be247907420db00837cef9bcfa70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVF::SVFUtil::dyn_cast</a></div><div class="ttdeci">LLVM_NODISCARD std::enable_if<!is_simple_type< Y >::value, typename cast_retty< X, const Y >::ret_type >::type dyn_cast(const Y &Val)</div><div class="ttdef"><b>Definition:</b> <a href="Casting_8h_source.html#l00343">Casting.h:343</a></div></div>
|
|
194
|
+
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_ae942f7d46198207219e5ce8287497262"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#ae942f7d46198207219e5ce8287497262">SVF::ThreadCallGraph::addDirectParForEdge</a></div><div class="ttdeci">void addDirectParForEdge(const CallICFGNode *cs)</div><div class="ttdoc">Add direct/indirect parallel for edges. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8cpp_source.html#l00224">ThreadCallGraph.cpp:224</a></div></div>
|
|
193
195
|
<div class="ttc" id="classSVF_1_1CallGraphBuilder_html_ab3e0b47be010e25c093953e54602d211"><div class="ttname"><a href="classSVF_1_1CallGraphBuilder.html#ab3e0b47be010e25c093953e54602d211">SVF::CallGraphBuilder::icfg</a></div><div class="ttdeci">ICFG * icfg</div><div class="ttdef"><b>Definition:</b> <a href="CallGraphBuilder_8h_source.html#l00047">CallGraphBuilder.h:47</a></div></div>
|
|
194
|
-
<div class="ttc" id="
|
|
195
|
-
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a6e2ebab64fd01e40e7100162fe544b04"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a6e2ebab64fd01e40e7100162fe544b04">SVF::ThreadCallGraph::addForksite</a></div><div class="ttdeci">bool addForksite(const CallBlockNode *cs)</div><div class="ttdoc">Add fork sites which directly or indirectly create a thread. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00329">ThreadCallGraph.h:329</a></div></div>
|
|
196
|
-
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a9daa0817e1f88a2478d7094646c72e13"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a9daa0817e1f88a2478d7094646c72e13">SVF::ThreadCallGraph::addParForSite</a></div><div class="ttdeci">bool addParForSite(const CallBlockNode *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00339">ThreadCallGraph.h:339</a></div></div>
|
|
196
|
+
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a19e505dbca2d2b5128762b223b9a7114"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a19e505dbca2d2b5128762b223b9a7114">SVF::ThreadCallGraph::addDirectForkEdge</a></div><div class="ttdeci">void addDirectForkEdge(const CallICFGNode *cs)</div><div class="ttdoc">Add direct/indirect thread fork edges. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8cpp_source.html#l00147">ThreadCallGraph.cpp:147</a></div></div>
|
|
197
197
|
</div><!-- fragment -->
|
|
198
198
|
</div>
|
|
199
199
|
</div>
|
|
@@ -69,10 +69,10 @@ $(function() {
|
|
|
69
69
|
|
|
70
70
|
<p>This is the complete list of members for <a class="el" href="classSVF_1_1ThreadForkEdge.html">SVF::ThreadForkEdge</a>, including all inherited members.</p>
|
|
71
71
|
<table class="directory">
|
|
72
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
73
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
72
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9ccc3f85568639abb8540eb61f6d3158">addDirectCallSite</a>(const CallICFGNode *call)</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
73
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#ad9faf0a90691497984fb1d8709491a20">addInDirectCallSite</a>(const CallICFGNode *call)</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
74
74
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#aa96d6bc3ffd3a5537b871a4c87c65888">CallGraphEdgeSet</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
75
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
75
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
76
76
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9738544725458bb022b8d5f2dbd281f7aa968b68fb87a0135833105f4e6413c69">CallRetEdge</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
77
77
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9738544725458bb022b8d5f2dbd281f7">CEDGEK</a> enum name</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
78
78
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1ThreadForkEdge.html#a4d2c3601a3fd530d178ec00ee3e1bc5d">classof</a>(const ThreadForkEdge *)</td><td class="entry"><a class="el" href="classSVF_1_1ThreadForkEdge.html">SVF::ThreadForkEdge</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
|
|
@@ -94,8 +94,8 @@ Public Types</h2></td></tr>
|
|
|
94
94
|
<a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9738544725458bb022b8d5f2dbd281f7a17e0d58fd42d0d493087e698d4ecd838">HareParForEdge</a>
|
|
95
95
|
}</td></tr>
|
|
96
96
|
<tr class="separator:a9738544725458bb022b8d5f2dbd281f7 inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
97
|
-
<tr class="memitem:
|
|
98
|
-
<tr class="separator:
|
|
97
|
+
<tr class="memitem:adbedb15ac0f9395c5264f087a63bad3b inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>< const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a></td></tr>
|
|
98
|
+
<tr class="separator:adbedb15ac0f9395c5264f087a63bad3b inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
99
99
|
<tr class="memitem:aa96d6bc3ffd3a5537b871a4c87c65888 inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1GenericNode.html">GenericNode</a>< <a class="el" href="classSVF_1_1PTACallGraphNode.html">PTACallGraphNode</a>, <a class="el" href="classSVF_1_1PTACallGraphEdge.html">PTACallGraphEdge</a> >::GEdgeSetTy </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#aa96d6bc3ffd3a5537b871a4c87c65888">CallGraphEdgeSet</a></td></tr>
|
|
100
100
|
<tr class="separator:aa96d6bc3ffd3a5537b871a4c87c65888 inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
101
101
|
<tr class="inherit_header pub_types_classSVF_1_1GenericEdge"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classSVF_1_1GenericEdge')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge< NodeTy ></a></td></tr>
|
|
@@ -134,19 +134,19 @@ Public Member Functions</h2></td></tr>
|
|
|
134
134
|
<tr class="separator:a8c46ccaa41f6792ca4a31a56548a554a inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
135
135
|
<tr class="memitem:a74692d47f929dc2188eede497acb91b7 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a74692d47f929dc2188eede497acb91b7">isIndirectCallEdge</a> () const</td></tr>
|
|
136
136
|
<tr class="separator:a74692d47f929dc2188eede497acb91b7 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
137
|
-
<tr class="memitem:af0e9f86be3cf263b868f80d374641fc9 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
137
|
+
<tr class="memitem:af0e9f86be3cf263b868f80d374641fc9 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#af0e9f86be3cf263b868f80d374641fc9">getDirectCalls</a> ()</td></tr>
|
|
138
138
|
<tr class="separator:af0e9f86be3cf263b868f80d374641fc9 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
139
|
-
<tr class="memitem:a76aa19edf03a4cacfa3e27a21abfcd07 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
139
|
+
<tr class="memitem:a76aa19edf03a4cacfa3e27a21abfcd07 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a76aa19edf03a4cacfa3e27a21abfcd07">getIndirectCalls</a> ()</td></tr>
|
|
140
140
|
<tr class="separator:a76aa19edf03a4cacfa3e27a21abfcd07 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
141
|
-
<tr class="memitem:a6310e7684d6b6ecd345f557eda899160 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
141
|
+
<tr class="memitem:a6310e7684d6b6ecd345f557eda899160 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a6310e7684d6b6ecd345f557eda899160">getDirectCalls</a> () const</td></tr>
|
|
142
142
|
<tr class="separator:a6310e7684d6b6ecd345f557eda899160 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
143
|
-
<tr class="memitem:a51dbd8a7b9d0a4602215f71e3fdfee5f inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
143
|
+
<tr class="memitem:a51dbd8a7b9d0a4602215f71e3fdfee5f inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a51dbd8a7b9d0a4602215f71e3fdfee5f">getIndirectCalls</a> () const</td></tr>
|
|
144
144
|
<tr class="separator:a51dbd8a7b9d0a4602215f71e3fdfee5f inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
145
|
-
<tr class="memitem:
|
|
146
|
-
<tr class="memdesc:
|
|
147
|
-
<tr class="separator:
|
|
148
|
-
<tr class="memitem:
|
|
149
|
-
<tr class="separator:
|
|
145
|
+
<tr class="memitem:a9ccc3f85568639abb8540eb61f6d3158 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9ccc3f85568639abb8540eb61f6d3158">addDirectCallSite</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call)</td></tr>
|
|
146
|
+
<tr class="memdesc:a9ccc3f85568639abb8540eb61f6d3158 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="mdescLeft"> </td><td class="mdescRight">Add direct and indirect callsite. <a href="classSVF_1_1PTACallGraphEdge.html#a9ccc3f85568639abb8540eb61f6d3158">More...</a><br /></td></tr>
|
|
147
|
+
<tr class="separator:a9ccc3f85568639abb8540eb61f6d3158 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
148
|
+
<tr class="memitem:ad9faf0a90691497984fb1d8709491a20 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#ad9faf0a90691497984fb1d8709491a20">addInDirectCallSite</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call)</td></tr>
|
|
149
|
+
<tr class="separator:ad9faf0a90691497984fb1d8709491a20 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
150
150
|
<tr class="memitem:a750e50a9022451e406c4819979edffa5 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">CallInstSet::const_iterator </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a750e50a9022451e406c4819979edffa5">directCallsBegin</a> () const</td></tr>
|
|
151
151
|
<tr class="memdesc:a750e50a9022451e406c4819979edffa5 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="mdescLeft"> </td><td class="mdescRight">Iterators for direct and indirect callsites. <a href="classSVF_1_1PTACallGraphEdge.html#a750e50a9022451e406c4819979edffa5">More...</a><br /></td></tr>
|
|
152
152
|
<tr class="separator:a750e50a9022451e406c4819979edffa5 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -69,10 +69,10 @@ $(function() {
|
|
|
69
69
|
|
|
70
70
|
<p>This is the complete list of members for <a class="el" href="classSVF_1_1ThreadJoinEdge.html">SVF::ThreadJoinEdge</a>, including all inherited members.</p>
|
|
71
71
|
<table class="directory">
|
|
72
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
73
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
72
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9ccc3f85568639abb8540eb61f6d3158">addDirectCallSite</a>(const CallICFGNode *call)</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
73
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#ad9faf0a90691497984fb1d8709491a20">addInDirectCallSite</a>(const CallICFGNode *call)</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
74
74
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#aa96d6bc3ffd3a5537b871a4c87c65888">CallGraphEdgeSet</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
75
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
75
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
76
76
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9738544725458bb022b8d5f2dbd281f7aa968b68fb87a0135833105f4e6413c69">CallRetEdge</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
77
77
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9738544725458bb022b8d5f2dbd281f7">CEDGEK</a> enum name</td><td class="entry"><a class="el" href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></td><td class="entry"></td></tr>
|
|
78
78
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1ThreadJoinEdge.html#a0fb671c87fecd2fd9c2dab4187a47d37">classof</a>(const ThreadJoinEdge *)</td><td class="entry"><a class="el" href="classSVF_1_1ThreadJoinEdge.html">SVF::ThreadJoinEdge</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
|
|
@@ -95,8 +95,8 @@ Public Types</h2></td></tr>
|
|
|
95
95
|
<a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9738544725458bb022b8d5f2dbd281f7a17e0d58fd42d0d493087e698d4ecd838">HareParForEdge</a>
|
|
96
96
|
}</td></tr>
|
|
97
97
|
<tr class="separator:a9738544725458bb022b8d5f2dbd281f7 inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
98
|
-
<tr class="memitem:
|
|
99
|
-
<tr class="separator:
|
|
98
|
+
<tr class="memitem:adbedb15ac0f9395c5264f087a63bad3b inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>< const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a></td></tr>
|
|
99
|
+
<tr class="separator:adbedb15ac0f9395c5264f087a63bad3b inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
100
100
|
<tr class="memitem:aa96d6bc3ffd3a5537b871a4c87c65888 inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1GenericNode.html">GenericNode</a>< <a class="el" href="classSVF_1_1PTACallGraphNode.html">PTACallGraphNode</a>, <a class="el" href="classSVF_1_1PTACallGraphEdge.html">PTACallGraphEdge</a> >::GEdgeSetTy </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#aa96d6bc3ffd3a5537b871a4c87c65888">CallGraphEdgeSet</a></td></tr>
|
|
101
101
|
<tr class="separator:aa96d6bc3ffd3a5537b871a4c87c65888 inherit pub_types_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
102
102
|
<tr class="inherit_header pub_types_classSVF_1_1GenericEdge"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classSVF_1_1GenericEdge')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge< NodeTy ></a></td></tr>
|
|
@@ -135,19 +135,19 @@ Public Member Functions</h2></td></tr>
|
|
|
135
135
|
<tr class="separator:a8c46ccaa41f6792ca4a31a56548a554a inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
136
136
|
<tr class="memitem:a74692d47f929dc2188eede497acb91b7 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a74692d47f929dc2188eede497acb91b7">isIndirectCallEdge</a> () const</td></tr>
|
|
137
137
|
<tr class="separator:a74692d47f929dc2188eede497acb91b7 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
138
|
-
<tr class="memitem:af0e9f86be3cf263b868f80d374641fc9 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
138
|
+
<tr class="memitem:af0e9f86be3cf263b868f80d374641fc9 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#af0e9f86be3cf263b868f80d374641fc9">getDirectCalls</a> ()</td></tr>
|
|
139
139
|
<tr class="separator:af0e9f86be3cf263b868f80d374641fc9 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
140
|
-
<tr class="memitem:a76aa19edf03a4cacfa3e27a21abfcd07 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
140
|
+
<tr class="memitem:a76aa19edf03a4cacfa3e27a21abfcd07 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a76aa19edf03a4cacfa3e27a21abfcd07">getIndirectCalls</a> ()</td></tr>
|
|
141
141
|
<tr class="separator:a76aa19edf03a4cacfa3e27a21abfcd07 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
142
|
-
<tr class="memitem:a6310e7684d6b6ecd345f557eda899160 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
142
|
+
<tr class="memitem:a6310e7684d6b6ecd345f557eda899160 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a6310e7684d6b6ecd345f557eda899160">getDirectCalls</a> () const</td></tr>
|
|
143
143
|
<tr class="separator:a6310e7684d6b6ecd345f557eda899160 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
144
|
-
<tr class="memitem:a51dbd8a7b9d0a4602215f71e3fdfee5f inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PTACallGraphEdge.html#
|
|
144
|
+
<tr class="memitem:a51dbd8a7b9d0a4602215f71e3fdfee5f inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PTACallGraphEdge.html#adbedb15ac0f9395c5264f087a63bad3b">CallInstSet</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a51dbd8a7b9d0a4602215f71e3fdfee5f">getIndirectCalls</a> () const</td></tr>
|
|
145
145
|
<tr class="separator:a51dbd8a7b9d0a4602215f71e3fdfee5f inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
146
|
-
<tr class="memitem:
|
|
147
|
-
<tr class="memdesc:
|
|
148
|
-
<tr class="separator:
|
|
149
|
-
<tr class="memitem:
|
|
150
|
-
<tr class="separator:
|
|
146
|
+
<tr class="memitem:a9ccc3f85568639abb8540eb61f6d3158 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a9ccc3f85568639abb8540eb61f6d3158">addDirectCallSite</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call)</td></tr>
|
|
147
|
+
<tr class="memdesc:a9ccc3f85568639abb8540eb61f6d3158 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="mdescLeft"> </td><td class="mdescRight">Add direct and indirect callsite. <a href="classSVF_1_1PTACallGraphEdge.html#a9ccc3f85568639abb8540eb61f6d3158">More...</a><br /></td></tr>
|
|
148
|
+
<tr class="separator:a9ccc3f85568639abb8540eb61f6d3158 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
149
|
+
<tr class="memitem:ad9faf0a90691497984fb1d8709491a20 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#ad9faf0a90691497984fb1d8709491a20">addInDirectCallSite</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call)</td></tr>
|
|
150
|
+
<tr class="separator:ad9faf0a90691497984fb1d8709491a20 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
151
151
|
<tr class="memitem:a750e50a9022451e406c4819979edffa5 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memItemLeft" align="right" valign="top">CallInstSet::const_iterator </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTACallGraphEdge.html#a750e50a9022451e406c4819979edffa5">directCallsBegin</a> () const</td></tr>
|
|
152
152
|
<tr class="memdesc:a750e50a9022451e406c4819979edffa5 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="mdescLeft"> </td><td class="mdescRight">Iterators for direct and indirect callsites. <a href="classSVF_1_1PTACallGraphEdge.html#a750e50a9022451e406c4819979edffa5">More...</a><br /></td></tr>
|
|
153
153
|
<tr class="separator:a750e50a9022451e406c4819979edffa5 inherit pub_methods_classSVF_1_1PTACallGraphEdge"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -106,12 +106,12 @@ $(function() {
|
|
|
106
106
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">BaseImpl</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
107
107
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8">BVDataImpl</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
108
108
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ab0e1242aadfe1e16a2bd1445658a5476">BVDataPTAImpl</a>(SVFIR *pag, PointerAnalysis::PTATY type, bool alias_check=true)</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"></td></tr>
|
|
109
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
109
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
110
110
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a></td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
111
111
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">CallGraphSCC</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
112
112
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">callGraphSCCDetection</a>()</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
113
113
|
<tr><td class="entry"><a class="el" href="classSVF_1_1TypeAnalysis.html#aec579b7854aa6a994632d3f7c5d621db">callGraphSolveBasedOnCHA</a>(const CallSiteToFunPtrMap &callsites, CallEdgeMap &newEdges)</td><td class="entry"><a class="el" href="classSVF_1_1TypeAnalysis.html">SVF::TypeAnalysis</a></td><td class="entry"></td></tr>
|
|
114
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
114
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a5583b5fc0db461a0138b1f2f1c9a89a0">CallSiteSet</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
115
115
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
116
116
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a></td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
117
117
|
<tr><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a4d5b605b8932824a7088399305952f12">child_iterator</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"></td></tr>
|
|
@@ -127,7 +127,7 @@ $(function() {
|
|
|
127
127
|
<tr><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a138b403af0370ad6fdf8cc6af0530392">collapsePWCNode</a>(NodeID)</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
|
|
128
128
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">computeDDAPts</a>(NodeID)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
|
129
129
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292">CondImpl</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
130
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
130
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a6a5dec067fa2a1babc83f36daa8afcc3">connectVCallToVFns</a>(const CallICFGNode *cs, const VFunSet &vfns, CallEdgeMap &newEdges)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
131
131
|
<tr><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html#ae21e38a06a4397d11cdd17b0f8f282fd">consCG</a></td><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
132
132
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">containBlackHoleNode</a>(const PointsTo &pts)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
133
133
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd">containConstantNode</a>(const PointsTo &pts)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
@@ -169,12 +169,12 @@ $(function() {
|
|
|
169
169
|
<tr><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a642613e98982259183d3f34a97f05502">getDFPTDataTy</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
170
170
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ab9c0bb439f98ae11dd178148109697ab">getDiffPTDataTy</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
171
171
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">getFIObjVar</a>(NodeID id)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
172
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
172
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f">getFunPtr</a>(const CallICFGNode *cs) const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
173
173
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#acbbc0934af9bc0145389dc41430c6d8b">getGepObjVar</a>(NodeID id, const LocationSet &ls)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
174
174
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e">getICFG</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
175
175
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e">getImplTy</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
176
176
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>()</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
177
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
177
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae0efd57376195eacded85d58abee5b46">getIndCSCallees</a>(const CallICFGNode *cs) const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
178
178
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">getIndirectCallsites</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
179
179
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
180
180
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#acbb979edee9427efa2a7c0dbd881c483">getMutDFPTDataTy</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
@@ -189,12 +189,12 @@ $(function() {
|
|
|
189
189
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad">getStat</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
190
190
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae615dd279fbf681e3c15e7209e3adfbe">getTypeSystem</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
191
191
|
<tr><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a4859864a4c72d5e04c10305e4579e8ee">getVersionedPTDataTy</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
192
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
193
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
192
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">getVFnsFromCHA</a>(const CallICFGNode *cs, VFunSet &vfns)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
193
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a011b8401f5ed5fdb6cd507053465a7a2">getVFnsFromPts</a>(const CallICFGNode *cs, const PointsTo &target, VFunSet &vfns)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
194
194
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a2b0c0c4d1f172e8eeae0230fa09f365e">GNODE</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"></td></tr>
|
|
195
195
|
<tr><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#abe0a304039d1bd2cfd7befd32fdcde2b">graph</a>()</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
196
196
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a64d9cb98ab38b441440b860ae4de0f9b">GTraits</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"></td></tr>
|
|
197
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
197
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095">hasIndCSCallees</a>(const CallICFGNode *cs) const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
198
198
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">icfg</a></td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
199
199
|
<tr><td class="entry"><a class="el" href="classSVF_1_1TypeAnalysis.html#a34177236a41f7a2b432243062f829985">initialize</a>()</td><td class="entry"><a class="el" href="classSVF_1_1TypeAnalysis.html">SVF::TypeAnalysis</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
|
|
200
200
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a7195381c3aab04890139b4fe2c561909">initWorklist</a>()</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
|
|
@@ -210,7 +210,7 @@ $(function() {
|
|
|
210
210
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a9d3b20c9883d734537fb98b57b5372b9">isNonPointerObj</a>(NodeID ptd) const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
211
211
|
<tr><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a992b105a0ec126050a123e24db3bd45b">isWorklistEmpty</a>()</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
212
212
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#aa7c0636780a86f376e9222bce771e859">iterationForPrintStat</a></td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
213
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
213
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ab541df6fc703c0b21c2c308584c0b7ff">matchArgs</a>(const CallICFGNode *cs, const SVFFunction *callee)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
214
214
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html#a7cfafe54d564c9401f435362d44d3f9c">MaxPointsToSetSize</a></td><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
|
|
215
215
|
<tr><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ad76328a8543b02784992afc2d5501d8aa1cfb236b5127b660373c36b77a79ab5e">Mutable</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"></td></tr>
|
|
216
216
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ac130bf326911b8e5396f57daa78566e7">MutDFPTDataTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"></td></tr>
|
|
@@ -243,7 +243,7 @@ $(function() {
|
|
|
243
243
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">PointerAnalysis</a>(SVFIR *pag, PTATY ty=Default_PTA, bool alias_check=true)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
244
244
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a20a14ac31fe23d4fe67da15f5cc498df">popFromWorklist</a>()</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
|
|
245
245
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a></td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
246
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
246
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a84edebc59e29f2cc1b89a699b8641f30">printIndCSTargets</a>(const CallICFGNode *cs, const FunctionSet &targets)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
247
247
|
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a>()</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
|
|
248
248
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html#a566830d0c7a1f5cd967bb8f2ab168f8d">printStat</a>()</td><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
249
249
|
<tr><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#abd7fd785e70f66d394088101d78598ca">processNode</a>(NodeID)</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
|
|
@@ -264,8 +264,8 @@ $(function() {
|
|
|
264
264
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html#a6c3d6b4c004d9e43690c3807502eed74">redundantGepNodes</a></td><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></td><td class="entry"></td></tr>
|
|
265
265
|
<tr><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a7a87ca1a439e871896f92e4342befa2c">remapPointsToSets</a>(void)</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"></td></tr>
|
|
266
266
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">resetObjFieldSensitive</a>()</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
267
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
268
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#
|
|
267
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac04b64a5884710508b304f93da88c7ba">resolveCPPIndCalls</a>(const CallICFGNode *cs, const PointsTo &target, CallEdgeMap &newEdges)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
|
|
268
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#aa0a14fd11d7e69b2a3f91a3862f172cd">resolveIndCalls</a>(const CallICFGNode *cs, const PointsTo &target, CallEdgeMap &newEdges, LLVMCallGraph *callgraph=nullptr)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
|
|
269
269
|
<tr><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a1352953966be14b2a1d6244f35e74a33">SCC</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"></td></tr>
|
|
270
270
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#a21709a0f33b6238afe735cc9fe49ff70">scc</a></td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
|
|
271
271
|
<tr><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#aaa932894d00b69cfa741f9987a9cc6b8">SCCDetect</a>()</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver< GraphType ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
|