svf-tools 1.0.302 → 1.0.306
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +4 -4
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/AndersenWaveDiffWithType_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +20 -20
- package/SVF-doxygen/html/html/Andersen_8h_source.html +15 -15
- package/SVF-doxygen/html/html/BasicTypes_8h_source.html +6 -6
- package/SVF-doxygen/html/html/CHG_8cpp.html +7 -6
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +42 -41
- package/SVF-doxygen/html/html/CHG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CSC_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CSC_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CommonCHG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +2 -2
- package/SVF-doxygen/html/html/Conditions_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Conditions_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ConsGNode_8h_source.html +1 -1
- 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 +9 -9
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CoreBitVector_8h.html +2 -0
- package/SVF-doxygen/html/html/CoreBitVector_8h_source.html +3 -1
- package/SVF-doxygen/html/html/CxtStmt_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/DCHG_8h_source.html +4 -4
- 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/DDAPass_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/DDAPass_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/DDAStat_8h_source.html +2 -2
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +8 -8
- package/SVF-doxygen/html/html/DPItem_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ExtAPI_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ExternalPAG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ExternalPAG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/FSMPTA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +2 -2
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +3 -3
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +16 -16
- package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +4 -4
- package/SVF-doxygen/html/html/GenericGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGStat_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/LLVMModule_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +2 -2
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +2 -2
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +6 -6
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/MHP_8h_source.html +4 -4
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/MTA_8h_source.html +2 -2
- package/SVF-doxygen/html/html/MemModel_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemPartition_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +4 -4
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
- package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +2 -2
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +2 -2
- package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/OfflineConsG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/Options_8cpp_source.html +112 -110
- package/SVF-doxygen/html/html/Options_8h.html +1 -0
- package/SVF-doxygen/html/html/Options_8h_source.html +114 -111
- package/SVF-doxygen/html/html/PAGBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/PAGEdge_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PAG_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/PAG_8h_source.html +5 -5
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +3 -3
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +20 -18
- package/SVF-doxygen/html/html/PTAStat_8h_source.html +19 -17
- package/SVF-doxygen/html/html/PTAType_8h_source.html +4 -4
- package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +4 -4
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +19 -19
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +5 -5
- package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +4 -5
- package/SVF-doxygen/html/html/PointsTo_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/ProgSlice_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SCC_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFBasicTypes_8h.html +32 -26
- package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +52 -49
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/SVFGStat_8h_source.html +5 -5
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFModule_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Steensgaard_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +2 -2
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/TCT_8h_source.html +4 -4
- package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/VFG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +10 -8
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp.html +3 -0
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +80 -67
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8h.html +3 -2
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +78 -69
- package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +8 -8
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/WPASolver_8h_source.html +24 -24
- package/SVF-doxygen/html/html/WPAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/WorkList_8h_source.html +1 -1
- package/SVF-doxygen/html/html/annotated.html +189 -186
- package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AddrPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +33 -33
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat-members.html +10 -7
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +19 -15
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BranchCondManager.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +91 -91
- package/SVF-doxygen/html/html/classSVF_1_1CHNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CSC.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CmpPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +17 -17
- package/SVF-doxygen/html/html/classSVF_1_1CopyPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat-members.html +5 -2
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +14 -10
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +27 -27
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ExternalPAG.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FIObjPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +53 -53
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat-members.html +5 -2
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +17 -13
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepValPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ICFGStat-members.html +5 -2
- package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +7 -3
- package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1LoadPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +36 -36
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +31 -31
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat-members.html +6 -3
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +17 -13
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat-members.html +5 -2
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +12 -8
- package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +17 -17
- package/SVF-doxygen/html/html/classSVF_1_1NormalGepPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +102 -100
- package/SVF-doxygen/html/html/classSVF_1_1Options.html +166 -111
- package/SVF-doxygen/html/html/classSVF_1_1PAG.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilder.html +29 -29
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat-members.html +6 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +87 -56
- package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1SVFGStat-members.html +11 -8
- package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +40 -36
- package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +33 -33
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1StorePE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +17 -17
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1TypeSystem.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ValPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VariantGepPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +161 -162
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +578 -539
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat-members.html +7 -4
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +32 -29
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC-members.html +83 -0
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +297 -0
- package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +60 -60
- package/SVF-doxygen/html/html/classes.html +96 -95
- package/SVF-doxygen/html/html/functions_b.html +11 -5
- package/SVF-doxygen/html/html/functions_c.html +24 -18
- package/SVF-doxygen/html/html/functions_d.html +13 -4
- package/SVF-doxygen/html/html/functions_e.html +3 -0
- package/SVF-doxygen/html/html/functions_enum.html +3 -0
- package/SVF-doxygen/html/html/functions_eval_c.html +3 -0
- package/SVF-doxygen/html/html/functions_eval_w.html +76 -0
- package/SVF-doxygen/html/html/functions_f.html +14 -14
- package/SVF-doxygen/html/html/functions_func_b.html +6 -0
- package/SVF-doxygen/html/html/functions_func_d.html +7 -4
- package/SVF-doxygen/html/html/functions_func_g.html +15 -9
- package/SVF-doxygen/html/html/functions_func_i.html +11 -11
- package/SVF-doxygen/html/html/functions_func_m.html +0 -3
- package/SVF-doxygen/html/html/functions_func_n.html +1 -4
- package/SVF-doxygen/html/html/functions_func_o.html +6 -4
- package/SVF-doxygen/html/html/functions_func_r.html +4 -1
- package/SVF-doxygen/html/html/functions_func_s.html +1 -1
- package/SVF-doxygen/html/html/functions_func_v.html +2 -1
- package/SVF-doxygen/html/html/functions_g.html +15 -9
- package/SVF-doxygen/html/html/functions_i.html +23 -16
- package/SVF-doxygen/html/html/functions_l.html +12 -15
- package/SVF-doxygen/html/html/functions_m.html +1 -16
- package/SVF-doxygen/html/html/functions_n.html +3 -3
- package/SVF-doxygen/html/html/functions_o.html +17 -16
- package/SVF-doxygen/html/html/functions_p.html +16 -13
- package/SVF-doxygen/html/html/functions_r.html +6 -8
- package/SVF-doxygen/html/html/functions_s.html +14 -16
- package/SVF-doxygen/html/html/functions_t.html +9 -9
- package/SVF-doxygen/html/html/functions_type_l.html +1 -4
- package/SVF-doxygen/html/html/functions_type_m.html +1 -1
- package/SVF-doxygen/html/html/functions_type_n.html +3 -0
- package/SVF-doxygen/html/html/functions_type_o.html +0 -3
- package/SVF-doxygen/html/html/functions_type_v.html +0 -3
- package/SVF-doxygen/html/html/functions_u.html +3 -3
- package/SVF-doxygen/html/html/functions_v.html +8 -10
- package/SVF-doxygen/html/html/functions_vars_c.html +3 -3
- package/SVF-doxygen/html/html/functions_vars_d.html +6 -0
- package/SVF-doxygen/html/html/functions_vars_e.html +3 -0
- package/SVF-doxygen/html/html/functions_vars_i.html +7 -0
- package/SVF-doxygen/html/html/functions_vars_l.html +3 -3
- package/SVF-doxygen/html/html/functions_vars_m.html +0 -12
- package/SVF-doxygen/html/html/functions_vars_o.html +3 -3
- package/SVF-doxygen/html/html/functions_vars_p.html +3 -0
- package/SVF-doxygen/html/html/functions_vars_r.html +0 -3
- package/SVF-doxygen/html/html/functions_vars_v.html +3 -3
- package/SVF-doxygen/html/html/functions_vars_y.html +0 -3
- package/SVF-doxygen/html/html/functions_w.html +5 -6
- package/SVF-doxygen/html/html/functions_y.html +0 -3
- package/SVF-doxygen/html/html/globals_f.html +3 -3
- package/SVF-doxygen/html/html/globals_r.html +3 -3
- package/SVF-doxygen/html/html/globals_s.html +6 -6
- package/SVF-doxygen/html/html/hierarchy.html +176 -173
- package/SVF-doxygen/html/html/menudata.js +2 -1
- package/SVF-doxygen/html/html/namespaceSVF.html +68 -30
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +3 -3
- package/SVF-doxygen/html/html/namespacemembers_type_v.html +6 -0
- package/SVF-doxygen/html/html/namespacemembers_v.html +6 -0
- package/SVF-doxygen/html/html/search/all_10.js +4 -3
- package/SVF-doxygen/html/html/search/all_12.js +4 -4
- package/SVF-doxygen/html/html/search/all_13.js +12 -12
- package/SVF-doxygen/html/html/search/all_14.js +6 -6
- package/SVF-doxygen/html/html/search/all_15.js +2 -2
- package/SVF-doxygen/html/html/search/all_16.js +5 -4
- package/SVF-doxygen/html/html/search/all_17.js +2 -1
- package/SVF-doxygen/html/html/search/all_19.js +0 -1
- package/SVF-doxygen/html/html/search/all_2.js +2 -0
- package/SVF-doxygen/html/html/search/all_3.js +2 -1
- package/SVF-doxygen/html/html/search/all_4.js +5 -2
- package/SVF-doxygen/html/html/search/all_5.js +1 -0
- package/SVF-doxygen/html/html/search/all_6.js +6 -6
- package/SVF-doxygen/html/html/search/all_7.js +5 -3
- package/SVF-doxygen/html/html/search/all_8.js +2 -0
- package/SVF-doxygen/html/html/search/all_9.js +5 -3
- package/SVF-doxygen/html/html/search/all_c.js +4 -5
- package/SVF-doxygen/html/html/search/all_d.js +1 -6
- package/SVF-doxygen/html/html/search/all_e.js +5 -5
- package/SVF-doxygen/html/html/search/all_f.js +2 -3
- package/SVF-doxygen/html/html/search/classes_12.js +0 -1
- package/SVF-doxygen/html/html/search/classes_7.js +2 -0
- package/SVF-doxygen/html/html/search/classes_b.js +1 -0
- package/SVF-doxygen/html/html/search/classes_f.js +1 -0
- package/SVF-doxygen/html/html/search/enums_1.js +1 -0
- package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
- package/SVF-doxygen/html/html/search/enumvalues_2.js +1 -0
- package/SVF-doxygen/html/html/search/functions_1.js +2 -0
- package/SVF-doxygen/html/html/search/functions_10.js +2 -2
- package/SVF-doxygen/html/html/search/functions_13.js +1 -1
- package/SVF-doxygen/html/html/search/functions_3.js +3 -2
- package/SVF-doxygen/html/html/search/functions_6.js +5 -3
- package/SVF-doxygen/html/html/search/functions_8.js +2 -2
- package/SVF-doxygen/html/html/search/functions_b.js +0 -1
- package/SVF-doxygen/html/html/search/functions_c.js +0 -1
- package/SVF-doxygen/html/html/search/functions_d.js +1 -1
- package/SVF-doxygen/html/html/search/functions_f.js +1 -0
- package/SVF-doxygen/html/html/search/searchdata.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_14.js +2 -1
- package/SVF-doxygen/html/html/search/typedefs_b.js +1 -2
- package/SVF-doxygen/html/html/search/typedefs_c.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_d.js +1 -0
- package/SVF-doxygen/html/html/search/typedefs_e.js +0 -1
- package/SVF-doxygen/html/html/search/variables_10.js +1 -0
- package/SVF-doxygen/html/html/search/variables_12.js +0 -1
- package/SVF-doxygen/html/html/search/variables_14.js +2 -2
- package/SVF-doxygen/html/html/search/variables_15.js +1 -1
- package/SVF-doxygen/html/html/search/variables_16.js +1 -1
- package/SVF-doxygen/html/html/search/variables_19.js +0 -1
- package/SVF-doxygen/html/html/search/variables_3.js +1 -1
- package/SVF-doxygen/html/html/search/variables_4.js +2 -0
- package/SVF-doxygen/html/html/search/variables_5.js +1 -0
- package/SVF-doxygen/html/html/search/variables_6.js +1 -1
- package/SVF-doxygen/html/html/search/variables_9.js +3 -1
- package/SVF-doxygen/html/html/search/variables_c.js +1 -1
- package/SVF-doxygen/html/html/search/variables_d.js +0 -4
- package/SVF-doxygen/html/html/search/variables_e.js +2 -2
- package/SVF-doxygen/html/html/search/variables_f.js +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01CoreBitVector_01_4-members.html +81 -0
- package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01CoreBitVector_01_4.html +126 -0
- package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01NodePair_01_4.html +3 -3
- package/SVF-doxygen/html/html/structSVF_1_1VersionedFlowSensitive_1_1SCC_1_1NodeData-members.html +83 -0
- package/SVF-doxygen/html/html/structSVF_1_1VersionedFlowSensitive_1_1SCC_1_1NodeData.html +145 -0
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.html +12 -12
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SmallVector_3_01T_00_01N_01_4_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01llvm_1_1SparseBitVector_3_01N_01_4_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4-members.html +81 -0
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +129 -0
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +2 -2
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
- package/include/Graphs/SVFGStat.h +10 -10
- package/include/MemoryModel/PTAStat.h +8 -2
- package/include/Util/CoreBitVector.h +8 -0
- package/include/Util/Options.h +6 -0
- package/include/Util/SVFBasicTypes.h +22 -2
- package/include/WPA/VersionedFlowSensitive.h +96 -65
- package/include/WPA/WPASolver.h +1 -2
- package/lib/SVF-FE/CHG.cpp +3 -2
- package/lib/Util/Options.cpp +16 -0
- package/lib/Util/PTAStat.cpp +17 -2
- package/lib/WPA/VersionedFlowSensitive.cpp +503 -229
- package/lib/WPA/VersionedFlowSensitiveStat.cpp +23 -38
- package/package.json +1 -1
|
@@ -503,7 +503,7 @@ Static Private Attributes</h2></td></tr>
|
|
|
503
503
|
<div class="fragment"><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> {</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(SVFUtil::isa<CallInst>(inst) && <span class="stringliteral">"getFirstIntArg: inst is not a callinst"</span>);</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>  <a class="code" href="classSVF_1_1CallSite.html">CallSite</a> cs = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a202de7ad2bea0311e2f75894c030e7a9">SVFUtil::getLLVMCallSite</a>(inst);</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>((arg_num < cs.<a class="code" href="classSVF_1_1CallSite.html#a145676880fce313b4634d14118476c27">arg_size</a>()) && <span class="stringliteral">"Does not has this argument"</span>);</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ac4e93e1fec646ff222940a663843921b">GetElementPtrInst</a>* gepinst = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#ac4e93e1fec646ff222940a663843921b">GetElementPtrInst</a>>(cs.<a class="code" href="classSVF_1_1CallSite.html#a26a594d36bbb5b77e7085502812d9ca2">getArgument</a>(arg_num));</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7e230c0cba2e3a7c2e5a5f2ee7d88af9">Constant</a>* arrayinst = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#a7e230c0cba2e3a7c2e5a5f2ee7d88af9">Constant</a>>(gepinst->getOperand(0));</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad9ebd847ed5d901cd30b1cfcdaec3462">ConstantDataArray</a>* cxtarray = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a><<a class="code" href="namespaceSVF.html#ad9ebd847ed5d901cd30b1cfcdaec3462">ConstantDataArray</a>>(arrayinst->getOperand(0));</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  <span class="keywordflow">if</span> (!cxtarray)</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  {</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set<std::string></a> strvec;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  <span class="keywordflow">return</span> strvec;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  }</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a88fd7387fcf16caf70abe265cdcf90b9">StringRef</a> vthdcxtstring = cxtarray->getAsCString();</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1LockResultValidator.html#ab8a6935e1ea6f99d60ead862a7b1782f">split</a>(vthdcxtstring.str(), <span class="charliteral">','</span>);</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> }</div><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>
|
|
504
504
|
<div class="ttc" id="classSVF_1_1LockResultValidator_html_ab8a6935e1ea6f99d60ead862a7b1782f"><div class="ttname"><a href="classSVF_1_1LockResultValidator.html#ab8a6935e1ea6f99d60ead862a7b1782f">SVF::LockResultValidator::split</a></div><div class="ttdeci">Set< std::string > & split(const std::string &s, char delim, Set< std::string > &elems)</div><div class="ttdef"><b>Definition:</b> <a href="LockResultValidator_8cpp_source.html#l00032">LockResultValidator.cpp:32</a></div></div>
|
|
505
505
|
<div class="ttc" id="classSVF_1_1CallSite_html_a26a594d36bbb5b77e7085502812d9ca2"><div class="ttname"><a href="classSVF_1_1CallSite.html#a26a594d36bbb5b77e7085502812d9ca2">SVF::CallSite::getArgument</a></div><div class="ttdeci">Value * getArgument(unsigned ArgNo) const</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00322">BasicTypes.h:322</a></div></div>
|
|
506
|
-
<div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set< Key, Hash, KeyEqual, Allocator > Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
506
|
+
<div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set< Key, Hash, KeyEqual, Allocator > Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00095">SVFBasicTypes.h:95</a></div></div>
|
|
507
507
|
<div class="ttc" id="namespaceSVF_html_ad9ebd847ed5d901cd30b1cfcdaec3462"><div class="ttname"><a href="namespaceSVF.html#ad9ebd847ed5d901cd30b1cfcdaec3462">SVF::ConstantDataArray</a></div><div class="ttdeci">llvm::ConstantDataArray ConstantDataArray</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00138">BasicTypes.h:138</a></div></div>
|
|
508
508
|
<div class="ttc" id="namespaceSVF_html_a88fd7387fcf16caf70abe265cdcf90b9"><div class="ttname"><a href="namespaceSVF.html#a88fd7387fcf16caf70abe265cdcf90b9">SVF::StringRef</a></div><div class="ttdeci">llvm::StringRef StringRef</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00102">BasicTypes.h:102</a></div></div>
|
|
509
509
|
<div class="ttc" id="namespaceSVF_html_ac4e93e1fec646ff222940a663843921b"><div class="ttname"><a href="namespaceSVF.html#ac4e93e1fec646ff222940a663843921b">SVF::GetElementPtrInst</a></div><div class="ttdeci">llvm::GetElementPtrInst GetElementPtrInst</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00154">BasicTypes.h:154</a></div></div>
|
|
@@ -662,7 +662,7 @@ Static Private Attributes</h2></td></tr>
|
|
|
662
662
|
|
|
663
663
|
<p class="definition">Definition at line <a class="el" href="LockResultValidator_8cpp_source.html#l00043">43</a> of file <a class="el" href="LockResultValidator_8cpp_source.html">LockResultValidator.cpp</a>.</p>
|
|
664
664
|
<div class="fragment"><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> {</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set<std::string></a> elems;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <a class="code" href="classSVF_1_1LockResultValidator.html#ab8a6935e1ea6f99d60ead862a7b1782f">split</a>(s, delim, elems);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordflow">return</span> elems;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> }</div><div class="ttc" id="classSVF_1_1LockResultValidator_html_ab8a6935e1ea6f99d60ead862a7b1782f"><div class="ttname"><a href="classSVF_1_1LockResultValidator.html#ab8a6935e1ea6f99d60ead862a7b1782f">SVF::LockResultValidator::split</a></div><div class="ttdeci">Set< std::string > & split(const std::string &s, char delim, Set< std::string > &elems)</div><div class="ttdef"><b>Definition:</b> <a href="LockResultValidator_8cpp_source.html#l00032">LockResultValidator.cpp:32</a></div></div>
|
|
665
|
-
<div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set< Key, Hash, KeyEqual, Allocator > Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
665
|
+
<div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set< Key, Hash, KeyEqual, Allocator > Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00095">SVFBasicTypes.h:95</a></div></div>
|
|
666
666
|
</div><!-- fragment -->
|
|
667
667
|
</div>
|
|
668
668
|
</div>
|
|
@@ -697,7 +697,7 @@ Static Private Attributes</h2></td></tr>
|
|
|
697
697
|
<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>
|
|
698
698
|
<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>
|
|
699
699
|
<div class="ttc" id="classSVF_1_1LockAnalysis_html_a7faecaee57dbef533dc46b2708305ab2"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#a7faecaee57dbef533dc46b2708305ab2">SVF::LockAnalysis::getCSTCLS</a></div><div class="ttdeci">CxtStmtToCxtLockSet getCSTCLS()</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00228">LockAnalysis.h:228</a></div></div>
|
|
700
|
-
<div class="ttc" id="classSVF_1_1Options_html_ac609142ee5a0caaf3ac51238ec421c2e"><div class="ttname"><a href="classSVF_1_1Options.html#ac609142ee5a0caaf3ac51238ec421c2e">SVF::Options::PrintValidRes</a></div><div class="ttdeci">static const llvm::cl::opt< bool > PrintValidRes</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#
|
|
700
|
+
<div class="ttc" id="classSVF_1_1Options_html_ac609142ee5a0caaf3ac51238ec421c2e"><div class="ttname"><a href="classSVF_1_1Options.html#ac609142ee5a0caaf3ac51238ec421c2e">SVF::Options::PrintValidRes</a></div><div class="ttdeci">static const llvm::cl::opt< bool > PrintValidRes</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00182">Options.h:182</a></div></div>
|
|
701
701
|
<div class="ttc" id="classSVF_1_1LockResultValidator_html_a760c0f6f891daa4532a44c6594794bb8"><div class="ttname"><a href="classSVF_1_1LockResultValidator.html#a760c0f6f891daa4532a44c6594794bb8">SVF::LockResultValidator::LOCK_IMPRECISE</a></div><div class="ttdeci">static const LOCK_FLAG LOCK_IMPRECISE</div><div class="ttdef"><b>Definition:</b> <a href="LockResultValidator_8h_source.html#l00100">LockResultValidator.h:100</a></div></div>
|
|
702
702
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00387">SVFUtil.cpp:387</a></div></div>
|
|
703
703
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
@@ -590,16 +590,16 @@ Private Member Functions</h2></td></tr>
|
|
|
590
590
|
<p>Start analysis here </p>
|
|
591
591
|
|
|
592
592
|
<p class="definition">Definition at line <a class="el" href="MHP_8cpp_source.html#l00097">97</a> of file <a class="el" href="MHP_8cpp_source.html">MHP.cpp</a>.</p>
|
|
593
|
-
<div class="fragment"><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> </div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">"MHP interleaving analysis\n"</span>));</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">"MHP interleaving analysis\n"</span>));</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<span class="keywordtype">double</span> interleavingStart = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>));</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <a class="code" href="classSVF_1_1MHP.html#adfd90a8d20d630bc3813f5ed71d3abf7">analyzeInterleaving</a>();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<span class="keywordtype">double</span> interleavingEnd = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>));</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<a class="code" href="classSVF_1_1MHP.html#aca306b97c6dcd47a8f407038436473a2">interleavingTime</a> += (interleavingEnd - interleavingStart) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div><div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
593
|
+
<div class="fragment"><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> </div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">"MHP interleaving analysis\n"</span>));</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">pasMsg</a>(<span class="stringliteral">"MHP interleaving analysis\n"</span>));</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<span class="keywordtype">double</span> interleavingStart = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>));</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <a class="code" href="classSVF_1_1MHP.html#adfd90a8d20d630bc3813f5ed71d3abf7">analyzeInterleaving</a>();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<span class="keywordtype">double</span> interleavingEnd = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>));</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<a class="code" href="classSVF_1_1MHP.html#aca306b97c6dcd47a8f407038436473a2">interleavingTime</a> += (interleavingEnd - interleavingStart) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div><div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00167">SVFBasicTypes.h:167</a></div></div>
|
|
594
594
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a609eea630a8f88fe9eaba15ce7e48738"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a609eea630a8f88fe9eaba15ce7e48738">SVF::SVFUtil::pasMsg</a></div><div class="ttdeci">std::string pasMsg(std::string msg)</div><div class="ttdoc">Print each pass/phase message by converting a string into blue string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00101">SVFUtil.cpp:101</a></div></div>
|
|
595
595
|
<div class="ttc" id="classSVF_1_1MHP_html_aca306b97c6dcd47a8f407038436473a2"><div class="ttname"><a href="classSVF_1_1MHP.html#aca306b97c6dcd47a8f407038436473a2">SVF::MHP::interleavingTime</a></div><div class="ttdeci">double interleavingTime</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00260">MHP.h:260</a></div></div>
|
|
596
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
596
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00174">SVFBasicTypes.h:174</a></div></div>
|
|
597
597
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
598
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
598
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00152">SVFBasicTypes.h:152</a></div></div>
|
|
599
599
|
<div class="ttc" id="classSVF_1_1MHP_html_adfd90a8d20d630bc3813f5ed71d3abf7"><div class="ttname"><a href="classSVF_1_1MHP.html#adfd90a8d20d630bc3813f5ed71d3abf7">SVF::MHP::analyzeInterleaving</a></div><div class="ttdeci">void analyzeInterleaving()</div><div class="ttdoc">Analyze thread interleaving. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00112">MHP.cpp:112</a></div></div>
|
|
600
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
601
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_ab6f41e9db3675dc689c5492418885041"><div class="ttname"><a href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a></div><div class="ttdeci">#define DOTIMESTAT(X)</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
602
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#
|
|
600
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
|
|
601
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_ab6f41e9db3675dc689c5492418885041"><div class="ttname"><a href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a></div><div class="ttdeci">#define DOTIMESTAT(X)</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
|
|
602
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
|
|
603
603
|
</div><!-- fragment -->
|
|
604
604
|
</div>
|
|
605
605
|
</div>
|
|
@@ -629,7 +629,7 @@ Private Member Functions</h2></td></tr>
|
|
|
629
629
|
<div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00365">GenericGraph.h:365</a></div></div>
|
|
630
630
|
<div class="ttc" id="classSVF_1_1CxtThread_html_a93d75593046e26eafcf1af3a596bba4a"><div class="ttname"><a href="classSVF_1_1CxtThread.html#a93d75593046e26eafcf1af3a596bba4a">SVF::CxtThread::getContext</a></div><div class="ttdeci">const CallStrCxt & getContext() const</div><div class="ttdoc">Return context of the thread. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00205">CxtStmt.h:205</a></div></div>
|
|
631
631
|
<div class="ttc" id="classSVF_1_1CxtThreadStmt_html_a735d71af28b26d9576f679e53141e303"><div class="ttname"><a href="classSVF_1_1CxtThreadStmt.html#a735d71af28b26d9576f679e53141e303">SVF::CxtThreadStmt::dump</a></div><div class="ttdeci">void dump() const</div><div class="ttdoc">Dump CxtThreadStmt. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00175">CxtStmt.h:175</a></div></div>
|
|
632
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
632
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00167">SVFBasicTypes.h:167</a></div></div>
|
|
633
633
|
<div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
|
|
634
634
|
<div class="ttc" id="classSVF_1_1FIFOWorkList_html_a7056704c224dfb4b57287fe90c004aa8"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a7056704c224dfb4b57287fe90c004aa8">SVF::FIFOWorkList::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00146">WorkList.h:146</a></div></div>
|
|
635
635
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_a5f5a5ec7e707a21994d301cc07d32a5a"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a5f5a5ec7e707a21994d301cc07d32a5a">SVF::PTACallGraph::FunctionSet</a></div><div class="ttdeci">Set< const SVFFunction * > FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00228">PTACallGraph.h:228</a></div></div>
|
|
@@ -644,7 +644,7 @@ Private Member Functions</h2></td></tr>
|
|
|
644
644
|
<div class="ttc" id="classSVF_1_1MHP_html_af769afe6ba6baccda5a497df181c9fb0"><div class="ttname"><a href="classSVF_1_1MHP.html#af769afe6ba6baccda5a497df181c9fb0">SVF::MHP::handleCall</a></div><div class="ttdeci">void handleCall(const CxtThreadStmt &cts, NodeID rootTid)</div><div class="ttdoc">Handle call. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00322">MHP.cpp:322</a></div></div>
|
|
645
645
|
<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>
|
|
646
646
|
<div class="ttc" id="classSVF_1_1MHP_html_a23ab5a03b7c00ba0ebac65568a83a5cc"><div class="ttname"><a href="classSVF_1_1MHP.html#a23ab5a03b7c00ba0ebac65568a83a5cc">SVF::MHP::updateSiblingThreads</a></div><div class="ttdeci">void updateSiblingThreads(NodeID tid)</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00445">MHP.cpp:445</a></div></div>
|
|
647
|
-
<div class="ttc" id="classSVF_1_1Options_html_aa3e6c78eb346a52bbaaac2610573604a"><div class="ttname"><a href="classSVF_1_1Options.html#aa3e6c78eb346a52bbaaac2610573604a">SVF::Options::PrintInterLev</a></div><div class="ttdeci">static const llvm::cl::opt< bool > PrintInterLev</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#
|
|
647
|
+
<div class="ttc" id="classSVF_1_1Options_html_aa3e6c78eb346a52bbaaac2610573604a"><div class="ttname"><a href="classSVF_1_1Options.html#aa3e6c78eb346a52bbaaac2610573604a">SVF::Options::PrintInterLev</a></div><div class="ttdeci">static const llvm::cl::opt< bool > PrintInterLev</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00171">Options.h:171</a></div></div>
|
|
648
648
|
<div class="ttc" id="classSVF_1_1MHP_html_a6990ff8e3efe5af365c8205b7ced38ed"><div class="ttname"><a href="classSVF_1_1MHP.html#a6990ff8e3efe5af365c8205b7ced38ed">SVF::MHP::validateResults</a></div><div class="ttdeci">void validateResults()</div><div class="ttdoc">Use RCResultValidator to validate mhp results. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00673">MHP.cpp:673</a></div></div>
|
|
649
649
|
<div class="ttc" id="classSVF_1_1MHP_html_a76ac9d388529f090ab6dad5829dd0753"><div class="ttname"><a href="classSVF_1_1MHP.html#a76ac9d388529f090ab6dad5829dd0753">SVF::MHP::handleRet</a></div><div class="ttdeci">void handleRet(const CxtThreadStmt &cts)</div><div class="ttdoc">Handle return. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00349">MHP.cpp:349</a></div></div>
|
|
650
650
|
<div class="ttc" id="classSVF_1_1MHP_html_a22f7dc5043fed97f1b4b273b8b710415"><div class="ttname"><a href="classSVF_1_1MHP.html#a22f7dc5043fed97f1b4b273b8b710415">SVF::MHP::printInterleaving</a></div><div class="ttdeci">void printInterleaving()</div><div class="ttdoc">Print interleaving results. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00688">MHP.cpp:688</a></div></div>
|
|
@@ -662,7 +662,7 @@ Private Member Functions</h2></td></tr>
|
|
|
662
662
|
<div class="ttc" id="classSVF_1_1MHP_html_a176eefb65e4ba99ee70513c8add44176"><div class="ttname"><a href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">SVF::MHP::tct</a></div><div class="ttdeci">TCT * tct</div><div class="ttdoc">TCT. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00249">MHP.h:249</a></div></div>
|
|
663
663
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a220f4c09e4c09c58d018719d44ec1dc3"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a220f4c09e4c09c58d018719d44ec1dc3">SVF::SVFUtil::dumpSet</a></div><div class="ttdeci">void dumpSet(NodeBS To, raw_ostream &O=SVFUtil::outs())</div><div class="ttdoc">Dump sparse bitvector set. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00149">SVFUtil.cpp:149</a></div></div>
|
|
664
664
|
<div class="ttc" id="classSVF_1_1CxtThreadStmt_html"><div class="ttname"><a href="classSVF_1_1CxtThreadStmt.html">SVF::CxtThreadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00123">CxtStmt.h:123</a></div></div>
|
|
665
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
665
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
|
|
666
666
|
<div class="ttc" id="classSVF_1_1MHP_html_ab566508ffd73abd4d5ad047a1d7f9c27"><div class="ttname"><a href="classSVF_1_1MHP.html#ab566508ffd73abd4d5ad047a1d7f9c27">SVF::MHP::isTDJoin</a></div><div class="ttdeci">bool isTDJoin(const Instruction *call)</div><div class="ttdoc">Whether it is a join site. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00234">MHP.h:234</a></div></div>
|
|
667
667
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00063">LLVMUtil.h:63</a></div></div>
|
|
668
668
|
</div><!-- fragment -->
|
|
@@ -1039,7 +1039,7 @@ Private Member Functions</h2></td></tr>
|
|
|
1039
1039
|
<div class="ttc" id="classSVF_1_1CxtThreadStmt_html_a3b8f641f2fb7ade7052cae1ee6463884"><div class="ttname"><a href="classSVF_1_1CxtThreadStmt.html#a3b8f641f2fb7ade7052cae1ee6463884">SVF::CxtThreadStmt::getTid</a></div><div class="ttdeci">NodeID getTid() const</div><div class="ttdoc">Return current context. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00139">CxtStmt.h:139</a></div></div>
|
|
1040
1040
|
<div class="ttc" id="classSVF_1_1CxtStmt_html_a5e8c4b10eb5c3240d2e21a020ed834a6"><div class="ttname"><a href="classSVF_1_1CxtStmt.html#a5e8c4b10eb5c3240d2e21a020ed834a6">SVF::CxtStmt::getStmt</a></div><div class="ttdeci">const Instruction * getStmt() const</div><div class="ttdoc">Return current statement. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00062">CxtStmt.h:62</a></div></div>
|
|
1041
1041
|
<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>
|
|
1042
|
-
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1042
|
+
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
|
|
1043
1043
|
<div class="ttc" id="classSVF_1_1MHP_html_ab956b55910ed74c4c81df622d38d746b"><div class="ttname"><a href="classSVF_1_1MHP.html#ab956b55910ed74c4c81df622d38d746b">SVF::MHP::getCBN</a></div><div class="ttdeci">CallBlockNode * getCBN(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00065">MHP.h:65</a></div></div>
|
|
1044
1044
|
<div class="ttc" id="classSVF_1_1CxtStmt_html_a3ce19b8f2de2e199ed4165dbe9d21f28"><div class="ttname"><a href="classSVF_1_1CxtStmt.html#a3ce19b8f2de2e199ed4165dbe9d21f28">SVF::CxtStmt::getContext</a></div><div class="ttdeci">const CallStrCxt & getContext() const</div><div class="ttdoc">Return current context. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00057">CxtStmt.h:57</a></div></div>
|
|
1045
1045
|
<div class="ttc" id="classSVF_1_1MHP_html_a6343dd11dd75d3730dc463321a11445e"><div class="ttname"><a href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">SVF::MHP::addInterleavingThread</a></div><div class="ttdeci">void addInterleavingThread(const CxtThreadStmt &tgr, NodeID tid)</div><div class="ttdoc">Add/Remove interleaving thread for statement inst. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00150">MHP.h:150</a></div></div>
|
|
@@ -1102,7 +1102,7 @@ Private Member Functions</h2></td></tr>
|
|
|
1102
1102
|
<div class="ttc" id="classSVF_1_1CxtStmt_html_a5e8c4b10eb5c3240d2e21a020ed834a6"><div class="ttname"><a href="classSVF_1_1CxtStmt.html#a5e8c4b10eb5c3240d2e21a020ed834a6">SVF::CxtStmt::getStmt</a></div><div class="ttdeci">const Instruction * getStmt() const</div><div class="ttdoc">Return current statement. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00062">CxtStmt.h:62</a></div></div>
|
|
1103
1103
|
<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>
|
|
1104
1104
|
<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>
|
|
1105
|
-
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1105
|
+
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
|
|
1106
1106
|
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_af33e1701215e9818b22f11789746821e"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#af33e1701215e9818b22f11789746821e">SVF::ThreadCallGraph::getForkEdgeBegin</a></div><div class="ttdeci">ForkEdgeSet::const_iterator getForkEdgeBegin(const CallBlockNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00206">ThreadCallGraph.h:206</a></div></div>
|
|
1107
1107
|
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a43513b641e4f05ec165db78e3ac55fef"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a43513b641e4f05ec165db78e3ac55fef">SVF::ThreadCallGraph::getForkEdgeEnd</a></div><div class="ttdeci">ForkEdgeSet::const_iterator getForkEdgeEnd(const CallBlockNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00212">ThreadCallGraph.h:212</a></div></div>
|
|
1108
1108
|
<div class="ttc" id="classSVF_1_1MHP_html_ab956b55910ed74c4c81df622d38d746b"><div class="ttname"><a href="classSVF_1_1MHP.html#ab956b55910ed74c4c81df622d38d746b">SVF::MHP::getCBN</a></div><div class="ttdeci">CallBlockNode * getCBN(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00065">MHP.h:65</a></div></div>
|
|
@@ -1197,7 +1197,7 @@ Private Member Functions</h2></td></tr>
|
|
|
1197
1197
|
|
|
1198
1198
|
<p class="definition">Definition at line <a class="el" href="MHP_8cpp_source.html#l00270">270</a> of file <a class="el" href="MHP_8cpp_source.html">MHP.cpp</a>.</p>
|
|
1199
1199
|
<div class="fragment"><div class="line"><a name="l00271"></a><span class="lineno"> 271</span> {</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span> </div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#adc8b60ca7d60cf6c81feae20e4a04c63">CallInst</a>* call = SVFUtil::cast<CallInst>(cts.<a class="code" href="classSVF_1_1CxtStmt.html#a5e8c4b10eb5c3240d2e21a020ed834a6">getStmt</a>());</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">CallStrCxt</a>& curCxt = cts.<a class="code" href="classSVF_1_1CxtStmt.html#a3ce19b8f2de2e199ed4165dbe9d21f28">getContext</a>();</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span> </div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1MHP.html#ab566508ffd73abd4d5ad047a1d7f9c27">isTDJoin</a>(call));</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> joinedTids = <a class="code" href="classSVF_1_1MHP.html#a9b89800fe8089fd7521ef3f415f6eb12">getDirAndIndJoinedTid</a>(curCxt,call);</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="keywordflow">if</span>(!joinedTids.empty())</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  {</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#abf85e29310b2e4df8925d00a5c081314">Loop</a>* joinLoop = <a class="code" href="classSVF_1_1MHP.html#a98857a1837cef5519c938d07bb771a60">fja</a>-><a class="code" href="classSVF_1_1ForkJoinAnalysis.html#a3449439792a54c847c67b3041094db49">getJoinLoop</a>(call))</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  {</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <a class="code" href="namespaceSVF.html#ad09d8882474ef59b50d1c6a6d3ba0b59">SmallBBVector</a> exitbbs;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  joinLoop->getExitBlocks(exitbbs);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  <span class="keywordflow">while</span>(!exitbbs.empty())</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  {</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* eb = exitbbs.pop_back_val();</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  <a class="code" href="classSVF_1_1CxtThreadStmt.html">CxtThreadStmt</a> newCts(cts.<a class="code" href="classSVF_1_1CxtThreadStmt.html#a3b8f641f2fb7ade7052cae1ee6463884">getTid</a>(),curCxt,&(eb->front()));</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  <a class="code" href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">addInterleavingThread</a>(newCts,cts);</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1MHP.html#afa0d341a2fb7b05522dc6e178eab7e8b">isJoinInSymmetricLoop</a>(curCxt,call))</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  <a class="code" href="classSVF_1_1MHP.html#a5546cb50ca769218a871cdda08a25d18">rmInterleavingThread</a>(newCts,joinedTids,call);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  }</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  }</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  <a class="code" href="classSVF_1_1MHP.html#a5546cb50ca769218a871cdda08a25d18">rmInterleavingThread</a>(cts,joinedTids,call);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>,<a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <span class="stringliteral">"\n\t match join site "</span> << *call << <span class="stringliteral">" for thread "</span> << rootTid << <span class="stringliteral">"\n"</span>);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  }</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  {</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#abf85e29310b2e4df8925d00a5c081314">Loop</a>* joinLoop = <a class="code" href="classSVF_1_1MHP.html#a98857a1837cef5519c938d07bb771a60">fja</a>-><a class="code" href="classSVF_1_1ForkJoinAnalysis.html#a3449439792a54c847c67b3041094db49">getJoinLoop</a>(call))</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  <a class="code" href="namespaceSVF.html#ad09d8882474ef59b50d1c6a6d3ba0b59">SmallBBVector</a> exitbbs;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  joinLoop->getExitBlocks(exitbbs);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  <span class="keywordflow">while</span>(!exitbbs.empty())</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  {</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>  <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>* eb = exitbbs.pop_back_val();</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  <a class="code" href="classSVF_1_1CxtThreadStmt.html">CxtThreadStmt</a> newCts(cts.<a class="code" href="classSVF_1_1CxtThreadStmt.html#a3b8f641f2fb7ade7052cae1ee6463884">getTid</a>(),cts.<a class="code" href="classSVF_1_1CxtStmt.html#a3ce19b8f2de2e199ed4165dbe9d21f28">getContext</a>(),&(eb->front()));</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  <a class="code" href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">addInterleavingThread</a>(newCts,cts);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  }</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  }</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  }</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  <a class="code" href="classSVF_1_1MHP.html#af4d6f0884ce18ea5caf0dfd9799d1aae">handleIntra</a>(cts);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span> }</div><div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00077">BasicTypes.h:77</a></div></div>
|
|
1200
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1200
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00167">SVFBasicTypes.h:167</a></div></div>
|
|
1201
1201
|
<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>
|
|
1202
1202
|
<div class="ttc" id="namespaceSVF_html_adc8b60ca7d60cf6c81feae20e4a04c63"><div class="ttname"><a href="namespaceSVF.html#adc8b60ca7d60cf6c81feae20e4a04c63">SVF::CallInst</a></div><div class="ttdeci">llvm::CallInst CallInst</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00148">BasicTypes.h:148</a></div></div>
|
|
1203
1203
|
<div class="ttc" id="classSVF_1_1MHP_html_af4d6f0884ce18ea5caf0dfd9799d1aae"><div class="ttname"><a href="classSVF_1_1MHP.html#af4d6f0884ce18ea5caf0dfd9799d1aae">SVF::MHP::handleIntra</a></div><div class="ttdeci">void handleIntra(const CxtThreadStmt &cts)</div><div class="ttdoc">Handle intra. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00394">MHP.cpp:394</a></div></div>
|
|
@@ -1205,17 +1205,17 @@ Private Member Functions</h2></td></tr>
|
|
|
1205
1205
|
<div class="ttc" id="classSVF_1_1CxtStmt_html_a5e8c4b10eb5c3240d2e21a020ed834a6"><div class="ttname"><a href="classSVF_1_1CxtStmt.html#a5e8c4b10eb5c3240d2e21a020ed834a6">SVF::CxtStmt::getStmt</a></div><div class="ttdeci">const Instruction * getStmt() const</div><div class="ttdoc">Return current statement. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00062">CxtStmt.h:62</a></div></div>
|
|
1206
1206
|
<div class="ttc" id="namespaceSVF_html_abf85e29310b2e4df8925d00a5c081314"><div class="ttname"><a href="namespaceSVF.html#abf85e29310b2e4df8925d00a5c081314">SVF::Loop</a></div><div class="ttdeci">llvm::Loop Loop</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00088">BasicTypes.h:88</a></div></div>
|
|
1207
1207
|
<div class="ttc" id="namespaceSVF_html_ad09d8882474ef59b50d1c6a6d3ba0b59"><div class="ttname"><a href="namespaceSVF.html#ad09d8882474ef59b50d1c6a6d3ba0b59">SVF::SmallBBVector</a></div><div class="ttdeci">llvm::SmallVector< BasicBlock *, 8 > SmallBBVector</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00117">BasicTypes.h:117</a></div></div>
|
|
1208
|
-
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1208
|
+
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
|
|
1209
1209
|
<div class="ttc" id="classSVF_1_1ForkJoinAnalysis_html_a3449439792a54c847c67b3041094db49"><div class="ttname"><a href="classSVF_1_1ForkJoinAnalysis.html#a3449439792a54c847c67b3041094db49">SVF::ForkJoinAnalysis::getJoinLoop</a></div><div class="ttdeci">const Loop * getJoinLoop(const Instruction *inst)</div><div class="ttdoc">Get loop for join site. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00345">MHP.h:345</a></div></div>
|
|
1210
1210
|
<div class="ttc" id="classSVF_1_1MHP_html_afa0d341a2fb7b05522dc6e178eab7e8b"><div class="ttname"><a href="classSVF_1_1MHP.html#afa0d341a2fb7b05522dc6e178eab7e8b">SVF::MHP::isJoinInSymmetricLoop</a></div><div class="ttdeci">const Loop * isJoinInSymmetricLoop(const CallStrCxt &cxt, const Instruction *call) const</div><div class="ttdoc">Whether a context-sensitive join satisfies symmetric loop pattern. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00528">MHP.cpp:528</a></div></div>
|
|
1211
1211
|
<div class="ttc" id="classSVF_1_1MHP_html_a9b89800fe8089fd7521ef3f415f6eb12"><div class="ttname"><a href="classSVF_1_1MHP.html#a9b89800fe8089fd7521ef3f415f6eb12">SVF::MHP::getDirAndIndJoinedTid</a></div><div class="ttdeci">NodeBS getDirAndIndJoinedTid(const CallStrCxt &cxt, const Instruction *call)</div><div class="ttdoc">Return thread id(s) which are directly or indirectly joined at this join site. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00519">MHP.cpp:519</a></div></div>
|
|
1212
1212
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
1213
1213
|
<div class="ttc" id="classSVF_1_1CxtStmt_html_a3ce19b8f2de2e199ed4165dbe9d21f28"><div class="ttname"><a href="classSVF_1_1CxtStmt.html#a3ce19b8f2de2e199ed4165dbe9d21f28">SVF::CxtStmt::getContext</a></div><div class="ttdeci">const CallStrCxt & getContext() const</div><div class="ttdoc">Return current context. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00057">CxtStmt.h:57</a></div></div>
|
|
1214
1214
|
<div class="ttc" id="classSVF_1_1MHP_html_a6343dd11dd75d3730dc463321a11445e"><div class="ttname"><a href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">SVF::MHP::addInterleavingThread</a></div><div class="ttdeci">void addInterleavingThread(const CxtThreadStmt &tgr, NodeID tid)</div><div class="ttdoc">Add/Remove interleaving thread for statement inst. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00150">MHP.h:150</a></div></div>
|
|
1215
|
-
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1215
|
+
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
|
|
1216
1216
|
<div class="ttc" id="classSVF_1_1MHP_html_a98857a1837cef5519c938d07bb771a60"><div class="ttname"><a href="classSVF_1_1MHP.html#a98857a1837cef5519c938d07bb771a60">SVF::MHP::fja</a></div><div class="ttdeci">ForkJoinAnalysis * fja</div><div class="ttdoc">ForJoin Analysis. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00250">MHP.h:250</a></div></div>
|
|
1217
1217
|
<div class="ttc" id="classSVF_1_1CxtThreadStmt_html"><div class="ttname"><a href="classSVF_1_1CxtThreadStmt.html">SVF::CxtThreadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00123">CxtStmt.h:123</a></div></div>
|
|
1218
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1218
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
|
|
1219
1219
|
<div class="ttc" id="classSVF_1_1MHP_html_ab566508ffd73abd4d5ad047a1d7f9c27"><div class="ttname"><a href="classSVF_1_1MHP.html#ab566508ffd73abd4d5ad047a1d7f9c27">SVF::MHP::isTDJoin</a></div><div class="ttdeci">bool isTDJoin(const Instruction *call)</div><div class="ttdoc">Whether it is a join site. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00234">MHP.h:234</a></div></div>
|
|
1220
1220
|
<div class="ttc" id="classSVF_1_1MHP_html_a5546cb50ca769218a871cdda08a25d18"><div class="ttname"><a href="classSVF_1_1MHP.html#a5546cb50ca769218a871cdda08a25d18">SVF::MHP::rmInterleavingThread</a></div><div class="ttdeci">void rmInterleavingThread(const CxtThreadStmt &tgr, const NodeBS &tids, const Instruction *joinsite)</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00167">MHP.h:167</a></div></div>
|
|
1221
1221
|
</div><!-- fragment -->
|
|
@@ -1259,7 +1259,7 @@ Private Member Functions</h2></td></tr>
|
|
|
1259
1259
|
<div class="ttc" id="classSVF_1_1TCT_html_a21bcc063a406eb8650df42cf5ced68c9"><div class="ttname"><a href="classSVF_1_1TCT.html#a21bcc063a406eb8650df42cf5ced68c9">SVF::TCT::getSVFFun</a></div><div class="ttdeci">const SVFFunction * getSVFFun(const Function *fun) const</div><div class="ttdoc">Get SVFFuntion given Function. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00155">TCT.h:155</a></div></div>
|
|
1260
1260
|
<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>
|
|
1261
1261
|
<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>
|
|
1262
|
-
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1262
|
+
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
|
|
1263
1263
|
<div class="ttc" id="classSVF_1_1PTACallGraphNode_html_adf17f5699c9f40ffc8837e813e3af3ec"><div class="ttname"><a href="classSVF_1_1PTACallGraphNode.html#adf17f5699c9f40ffc8837e813e3af3ec">SVF::PTACallGraphNode::const_iterator</a></div><div class="ttdeci">PTACallGraphEdge::CallGraphEdgeSet::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00180">PTACallGraph.h:180</a></div></div>
|
|
1264
1264
|
<div class="ttc" id="classSVF_1_1CxtStmt_html_a3ce19b8f2de2e199ed4165dbe9d21f28"><div class="ttname"><a href="classSVF_1_1CxtStmt.html#a3ce19b8f2de2e199ed4165dbe9d21f28">SVF::CxtStmt::getContext</a></div><div class="ttdeci">const CallStrCxt & getContext() const</div><div class="ttdoc">Return current context. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00057">CxtStmt.h:57</a></div></div>
|
|
1265
1265
|
<div class="ttc" id="classSVF_1_1MHP_html_a6343dd11dd75d3730dc463321a11445e"><div class="ttname"><a href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">SVF::MHP::addInterleavingThread</a></div><div class="ttdeci">void addInterleavingThread(const CxtThreadStmt &tgr, NodeID tid)</div><div class="ttdoc">Add/Remove interleaving thread for statement inst. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00150">MHP.h:150</a></div></div>
|
|
@@ -1308,7 +1308,7 @@ Private Member Functions</h2></td></tr>
|
|
|
1308
1308
|
<div class="ttc" id="classSVF_1_1CxtStmt_html_a5e8c4b10eb5c3240d2e21a020ed834a6"><div class="ttname"><a href="classSVF_1_1CxtStmt.html#a5e8c4b10eb5c3240d2e21a020ed834a6">SVF::CxtStmt::getStmt</a></div><div class="ttdeci">const Instruction * getStmt() const</div><div class="ttdoc">Return current statement. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00062">CxtStmt.h:62</a></div></div>
|
|
1309
1309
|
<div class="ttc" id="classSVF_1_1TCT_html_a21bcc063a406eb8650df42cf5ced68c9"><div class="ttname"><a href="classSVF_1_1TCT.html#a21bcc063a406eb8650df42cf5ced68c9">SVF::TCT::getSVFFun</a></div><div class="ttdeci">const SVFFunction * getSVFFun(const Function *fun) const</div><div class="ttdoc">Get SVFFuntion given Function. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00155">TCT.h:155</a></div></div>
|
|
1310
1310
|
<div class="ttc" id="classSVF_1_1PTACallGraphEdge_html"><div class="ttname"><a href="classSVF_1_1PTACallGraphEdge.html">SVF::PTACallGraphEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00051">PTACallGraph.h:51</a></div></div>
|
|
1311
|
-
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1311
|
+
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
|
|
1312
1312
|
<div class="ttc" id="classSVF_1_1PTACallGraphNode_html_adf17f5699c9f40ffc8837e813e3af3ec"><div class="ttname"><a href="classSVF_1_1PTACallGraphNode.html#adf17f5699c9f40ffc8837e813e3af3ec">SVF::PTACallGraphNode::const_iterator</a></div><div class="ttdeci">PTACallGraphEdge::CallGraphEdgeSet::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00180">PTACallGraph.h:180</a></div></div>
|
|
1313
1313
|
<div class="ttc" id="classSVF_1_1PTACallGraphNode_html_a959445c97605953fbdebbbd999437a09"><div class="ttname"><a href="classSVF_1_1PTACallGraphNode.html#a959445c97605953fbdebbbd999437a09">SVF::PTACallGraphNode::getFunction</a></div><div class="ttdeci">const SVFFunction * getFunction() const</div><div class="ttdoc">Get function of this call node. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00193">PTACallGraph.h:193</a></div></div>
|
|
1314
1314
|
<div class="ttc" id="classSVF_1_1MHP_html_a8fecc443c4d92a36a9c50ec6a4f5dea8"><div class="ttname"><a href="classSVF_1_1MHP.html#a8fecc443c4d92a36a9c50ec6a4f5dea8">SVF::MHP::InstVec</a></div><div class="ttdeci">TCT::InstVec InstVec</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00029">MHP.h:29</a></div></div>
|
|
@@ -1403,7 +1403,7 @@ Private Member Functions</h2></td></tr>
|
|
|
1403
1403
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_aaab54c670518d9d6790707f76ea76aa1"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">SVF::PTACallGraph::getCallGraphNode</a></div><div class="ttdeci">PTACallGraphNode * getCallGraphNode(NodeID id) const</div><div class="ttdoc">Get call graph node. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00315">PTACallGraph.h:315</a></div></div>
|
|
1404
1404
|
<div class="ttc" id="classSVF_1_1FIFOWorkList_html_a7056704c224dfb4b57287fe90c004aa8"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a7056704c224dfb4b57287fe90c004aa8">SVF::FIFOWorkList::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00146">WorkList.h:146</a></div></div>
|
|
1405
1405
|
<div class="ttc" id="classSVF_1_1TCT_html_afb579a5bdcc0a1c6b075bb9aae36c237"><div class="ttname"><a href="classSVF_1_1TCT.html#afb579a5bdcc0a1c6b075bb9aae36c237">SVF::TCT::PTACGNodeSet</a></div><div class="ttdeci">Set< const PTACallGraphNode * > PTACGNodeSet</div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00125">TCT.h:125</a></div></div>
|
|
1406
|
-
<div class="ttc" id="classSVF_1_1SVFValue_html_adc15c1f7a77158142156fba7524e89c9"><div class="ttname"><a href="classSVF_1_1SVFValue.html#adc15c1f7a77158142156fba7524e89c9">SVF::SVFValue::getName</a></div><div class="ttdeci">const llvm::StringRef getName() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1406
|
+
<div class="ttc" id="classSVF_1_1SVFValue_html_adc15c1f7a77158142156fba7524e89c9"><div class="ttname"><a href="classSVF_1_1SVFValue.html#adc15c1f7a77158142156fba7524e89c9">SVF::SVFValue::getName</a></div><div class="ttdeci">const llvm::StringRef getName() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00229">SVFBasicTypes.h:229</a></div></div>
|
|
1407
1407
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ae5b113921530eee6afe58a65d8e5b3a7"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ae5b113921530eee6afe58a65d8e5b3a7">SVF::GenericNode::InEdgeBegin</a></div><div class="ttdeci">iterator InEdgeBegin()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00209">GenericGraph.h:209</a></div></div>
|
|
1408
1408
|
<div class="ttc" id="classSVF_1_1TCT_html_a21bcc063a406eb8650df42cf5ced68c9"><div class="ttname"><a href="classSVF_1_1TCT.html#a21bcc063a406eb8650df42cf5ced68c9">SVF::TCT::getSVFFun</a></div><div class="ttdeci">const SVFFunction * getSVFFun(const Function *fun) const</div><div class="ttdoc">Get SVFFuntion given Function. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00155">TCT.h:155</a></div></div>
|
|
1409
1409
|
<div class="ttc" id="classSVF_1_1FIFOWorkList_html_ad4c6a48b60c870d63049fe7272cc7eb8"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#ad4c6a48b60c870d63049fe7272cc7eb8">SVF::FIFOWorkList::push</a></div><div class="ttdeci">bool push(Data data)</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00159">WorkList.h:159</a></div></div>
|
|
@@ -1790,9 +1790,9 @@ Private Member Functions</h2></td></tr>
|
|
|
1790
1790
|
<div class="fragment"><div class="line"><a name="l00640"></a><span class="lineno"> 640</span> {</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  <a class="code" href="classSVF_1_1MHP.html#a26ae18993915d76b704232cded9811c2">numOfTotalQueries</a>++;</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span> </div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<span class="keywordtype">double</span> queryStart = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>());</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>  <span class="keywordtype">bool</span> mhp=<a class="code" href="classSVF_1_1MHP.html#a9a4b6d5c57552b61a62a4dd180aef40c">mayHappenInParallelCache</a>(i1,i2);</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<span class="keywordtype">double</span> queryEnd = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>());</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>  <a class="code" href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a>(<a class="code" href="classSVF_1_1MHP.html#ab7d9fe837844197b7acdc0493a50aaa5">interleavingQueriesTime</a> += (queryEnd - queryStart) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>);</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span> </div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>  <span class="keywordflow">return</span> mhp;</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span> }</div><div class="ttc" id="classSVF_1_1MHP_html_ab7d9fe837844197b7acdc0493a50aaa5"><div class="ttname"><a href="classSVF_1_1MHP.html#ab7d9fe837844197b7acdc0493a50aaa5">SVF::MHP::interleavingQueriesTime</a></div><div class="ttdeci">double interleavingQueriesTime</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00261">MHP.h:261</a></div></div>
|
|
1791
1791
|
<div class="ttc" id="classSVF_1_1MHP_html_a9a4b6d5c57552b61a62a4dd180aef40c"><div class="ttname"><a href="classSVF_1_1MHP.html#a9a4b6d5c57552b61a62a4dd180aef40c">SVF::MHP::mayHappenInParallelCache</a></div><div class="ttdeci">virtual bool mayHappenInParallelCache(const Instruction *i1, const Instruction *i2)</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00617">MHP.cpp:617</a></div></div>
|
|
1792
1792
|
<div class="ttc" id="classSVF_1_1MHP_html_a26ae18993915d76b704232cded9811c2"><div class="ttname"><a href="classSVF_1_1MHP.html#a26ae18993915d76b704232cded9811c2">SVF::MHP::numOfTotalQueries</a></div><div class="ttdeci">u32_t numOfTotalQueries</div><div class="ttdoc">Total number of queries. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00258">MHP.h:258</a></div></div>
|
|
1793
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1794
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_ab6f41e9db3675dc689c5492418885041"><div class="ttname"><a href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a></div><div class="ttdeci">#define DOTIMESTAT(X)</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1795
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#
|
|
1793
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00174">SVFBasicTypes.h:174</a></div></div>
|
|
1794
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_ab6f41e9db3675dc689c5492418885041"><div class="ttname"><a href="SVFBasicTypes_8h.html#ab6f41e9db3675dc689c5492418885041">DOTIMESTAT</a></div><div class="ttdeci">#define DOTIMESTAT(X)</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
|
|
1795
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
|
|
1796
1796
|
</div><!-- fragment -->
|
|
1797
1797
|
</div>
|
|
1798
1798
|
</div>
|
|
@@ -1882,7 +1882,7 @@ Private Member Functions</h2></td></tr>
|
|
|
1882
1882
|
<div class="ttc" id="classSVF_1_1MHP_html_ab8bd382e0c70b0feb2a291ecc4043106"><div class="ttname"><a href="classSVF_1_1MHP.html#ab8bd382e0c70b0feb2a291ecc4043106">SVF::MHP::numOfMHPQueries</a></div><div class="ttdeci">u32_t numOfMHPQueries</div><div class="ttdoc">Number of queries are answered as may-happen-in-parallel. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00259">MHP.h:259</a></div></div>
|
|
1883
1883
|
<div class="ttc" id="classSVF_1_1MHP_html_a6841b147e2a681ea372bdddd53616294"><div class="ttname"><a href="classSVF_1_1MHP.html#a6841b147e2a681ea372bdddd53616294">SVF::MHP::hasThreadStmtSet</a></div><div class="ttdeci">bool hasThreadStmtSet(const Instruction *inst) const</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00108">MHP.h:108</a></div></div>
|
|
1884
1884
|
<div class="ttc" id="classSVF_1_1MHP_html_a653460ed316804bea377eecdde412d36"><div class="ttname"><a href="classSVF_1_1MHP.html#a653460ed316804bea377eecdde412d36">SVF::MHP::getInterleavingThreads</a></div><div class="ttdeci">const NodeBS & getInterleavingThreads(const CxtThreadStmt &cts)</div><div class="ttdoc">Get interleaving thread for statement inst. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00090">MHP.h:90</a></div></div>
|
|
1885
|
-
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
1885
|
+
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
|
|
1886
1886
|
<div class="ttc" id="classSVF_1_1MHP_html_a28031502c4f8f0d4012c0827c57efb32"><div class="ttname"><a href="classSVF_1_1MHP.html#a28031502c4f8f0d4012c0827c57efb32">SVF::MHP::CxtThreadStmtSet</a></div><div class="ttdeci">Set< CxtThreadStmt > CxtThreadStmtSet</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00031">MHP.h:31</a></div></div>
|
|
1887
1887
|
<div class="ttc" id="classSVF_1_1CxtThreadStmt_html"><div class="ttname"><a href="classSVF_1_1CxtThreadStmt.html">SVF::CxtThreadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00123">CxtStmt.h:123</a></div></div>
|
|
1888
1888
|
<div class="ttc" id="classSVF_1_1MHP_html_a49504524c0d3e53c769cdbfd9ec1ccb0"><div class="ttname"><a href="classSVF_1_1MHP.html#a49504524c0d3e53c769cdbfd9ec1ccb0">SVF::MHP::getThreadStmtSet</a></div><div class="ttdeci">const CxtThreadStmtSet & getThreadStmtSet(const Instruction *inst) const</div><div class="ttdoc">Get/has ThreadStmt. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00102">MHP.h:102</a></div></div>
|
|
@@ -2067,7 +2067,7 @@ Private Member Functions</h2></td></tr>
|
|
|
2067
2067
|
<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  {</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> joinedTids;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="keywordflow">for</span>(NodeBS::iterator it = tids.begin(), eit = tids.end(); it!=eit; ++it)</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1MHP.html#acd5b010c22a6590f6ea1a5cedd8f43ba">isMustJoin</a>(tgr.getTid(),joinsite))</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  joinedTids.set(*it);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  }</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1MHP.html#afcfc409e625b74cbefd240170627c541">threadStmtToTheadInterLeav</a>[tgr].intersectWithComplement(joinedTids))</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  {</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  <a class="code" href="classSVF_1_1MHP.html#aed7f65ea3f046774eef36602cb41f178">pushToCTSWorkList</a>(tgr);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  }</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  }</div><div class="ttc" id="classSVF_1_1MHP_html_aed7f65ea3f046774eef36602cb41f178"><div class="ttname"><a href="classSVF_1_1MHP.html#aed7f65ea3f046774eef36602cb41f178">SVF::MHP::pushToCTSWorkList</a></div><div class="ttdeci">bool pushToCTSWorkList(const CxtThreadStmt &cs)</div><div class="ttdoc">WorkList helper functions. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00218">MHP.h:218</a></div></div>
|
|
2068
2068
|
<div class="ttc" id="classSVF_1_1MHP_html_acd5b010c22a6590f6ea1a5cedd8f43ba"><div class="ttname"><a href="classSVF_1_1MHP.html#acd5b010c22a6590f6ea1a5cedd8f43ba">SVF::MHP::isMustJoin</a></div><div class="ttdeci">bool isMustJoin(const NodeID curTid, const Instruction *joinsite)</div><div class="ttdoc">Whether a join site must join a thread t. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00510">MHP.cpp:510</a></div></div>
|
|
2069
2069
|
<div class="ttc" id="classSVF_1_1MHP_html_afcfc409e625b74cbefd240170627c541"><div class="ttname"><a href="classSVF_1_1MHP.html#afcfc409e625b74cbefd240170627c541">SVF::MHP::threadStmtToTheadInterLeav</a></div><div class="ttdeci">ThreadStmtToThreadInterleav threadStmtToTheadInterLeav</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00252">MHP.h:252</a></div></div>
|
|
2070
|
-
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2070
|
+
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
|
|
2071
2071
|
</div><!-- fragment -->
|
|
2072
2072
|
</div>
|
|
2073
2073
|
</div>
|
|
@@ -2100,7 +2100,7 @@ Private Member Functions</h2></td></tr>
|
|
|
2100
2100
|
|
|
2101
2101
|
<p class="definition">Definition at line <a class="el" href="MHP_8cpp_source.html#l00410">410</a> of file <a class="el" href="MHP_8cpp_source.html">MHP.cpp</a>.</p>
|
|
2102
2102
|
<div class="fragment"><div class="line"><a name="l00411"></a><span class="lineno"> 411</span> {</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> tds = <a class="code" href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">tct</a>-><a class="code" href="classSVF_1_1TCT.html#aeb7dff0c02a90cb338c8d054d2b78984">getAncestorThread</a>(curTid);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>,<a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <span class="stringliteral">"##Ancestor thread of "</span> << curTid << <span class="stringliteral">" is : "</span>);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>,<a class="code" href="namespaceSVF_1_1SVFUtil.html#a220f4c09e4c09c58d018719d44ec1dc3">dumpSet</a>(tds));</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>,<a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <span class="stringliteral">"\n"</span>);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  tds.set(curTid);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span> </div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  <span class="keywordflow">for</span>(NodeBS::iterator it = tds.begin(), eit = tds.end(); it!=eit; ++it)</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  {</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CxtThread.html">CxtThread</a>& ct = <a class="code" href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">tct</a>-><a class="code" href="classSVF_1_1TCT.html#a7b4ad0b052e1f8b6869733eef15f4e4d">getTCTNode</a>(*it)-><a class="code" href="classSVF_1_1TCTNode.html#a21591b19f6a9267151c31178f9543ee6">getCxtThread</a>();</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#adc8b60ca7d60cf6c81feae20e4a04c63">CallInst</a>* forkInst = ct.<a class="code" href="classSVF_1_1CxtThread.html#a066ba29a83edc1042139641ca088b038">getThread</a>())</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  {</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <a class="code" href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">CallStrCxt</a> forkSiteCxt = <a class="code" href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">tct</a>-><a class="code" href="classSVF_1_1TCT.html#ab4bc72ca330b315df06f2d4d2c1a7b4f">getCxtOfCxtThread</a>(ct);</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <a class="code" href="classSVF_1_1MHP.html#a8fecc443c4d92a36a9c50ec6a4f5dea8">InstVec</a> nextInsts;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <a class="code" href="classSVF_1_1MHP.html#a04357a2827d22e4e727d488d32eb5cb5">getNextInsts</a>(forkInst,nextInsts);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  <span class="keywordflow">for</span>(InstVec::const_iterator nit = nextInsts.begin(), enit = nextInsts.end(); nit!=enit; ++nit)</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  {</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <a class="code" href="classSVF_1_1CxtThreadStmt.html">CxtThreadStmt</a> cts(<a class="code" href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">tct</a>-><a class="code" href="classSVF_1_1TCT.html#a516578af1f8666ff672e6611e61d7152">getParentThread</a>(*it),forkSiteCxt,*nit);</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  <a class="code" href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">addInterleavingThread</a>(cts,curTid);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  }</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  }</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  }</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span> }</div><div class="ttc" id="classSVF_1_1TCT_html_aeb7dff0c02a90cb338c8d054d2b78984"><div class="ttname"><a href="classSVF_1_1TCT.html#aeb7dff0c02a90cb338c8d054d2b78984">SVF::TCT::getAncestorThread</a></div><div class="ttdeci">const NodeBS getAncestorThread(NodeID tid) const</div><div class="ttdoc">Get all ancestor threads. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00286">TCT.h:286</a></div></div>
|
|
2103
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2103
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00167">SVFBasicTypes.h:167</a></div></div>
|
|
2104
2104
|
<div class="ttc" id="classSVF_1_1CxtThread_html"><div class="ttname"><a href="classSVF_1_1CxtThread.html">SVF::CxtThread</a></div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00188">CxtStmt.h:188</a></div></div>
|
|
2105
2105
|
<div class="ttc" id="classSVF_1_1CxtThread_html_a066ba29a83edc1042139641ca088b038"><div class="ttname"><a href="classSVF_1_1CxtThread.html#a066ba29a83edc1042139641ca088b038">SVF::CxtThread::getThread</a></div><div class="ttdeci">const CallInst * getThread() const</div><div class="ttdoc">Return forksite. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00210">CxtStmt.h:210</a></div></div>
|
|
2106
2106
|
<div class="ttc" id="namespaceSVF_html_adc8b60ca7d60cf6c81feae20e4a04c63"><div class="ttname"><a href="namespaceSVF.html#adc8b60ca7d60cf6c81feae20e4a04c63">SVF::CallInst</a></div><div class="ttdeci">llvm::CallInst CallInst</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00148">BasicTypes.h:148</a></div></div>
|
|
@@ -2108,16 +2108,16 @@ Private Member Functions</h2></td></tr>
|
|
|
2108
2108
|
<div class="ttc" id="classSVF_1_1TCTNode_html_a21591b19f6a9267151c31178f9543ee6"><div class="ttname"><a href="classSVF_1_1TCTNode.html#a21591b19f6a9267151c31178f9543ee6">SVF::TCTNode::getCxtThread</a></div><div class="ttdeci">const CxtThread & getCxtThread() const</div><div class="ttdoc">Get CxtThread. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00082">TCT.h:82</a></div></div>
|
|
2109
2109
|
<div class="ttc" id="classSVF_1_1MHP_html_a04357a2827d22e4e727d488d32eb5cb5"><div class="ttname"><a href="classSVF_1_1MHP.html#a04357a2827d22e4e727d488d32eb5cb5">SVF::MHP::getNextInsts</a></div><div class="ttdeci">void getNextInsts(const Instruction *inst, InstVec &instVec)</div><div class="ttdoc">Get the next instructions following control flow. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00201">MHP.h:201</a></div></div>
|
|
2110
2110
|
<div class="ttc" id="classSVF_1_1TCT_html_ab4bc72ca330b315df06f2d4d2c1a7b4f"><div class="ttname"><a href="classSVF_1_1TCT.html#ab4bc72ca330b315df06f2d4d2c1a7b4f">SVF::TCT::getCxtOfCxtThread</a></div><div class="ttdeci">const CallStrCxt & getCxtOfCxtThread(const CxtThread &ct) const</div><div class="ttdoc">get the context of a thread at its spawning site (fork site) </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00326">TCT.h:326</a></div></div>
|
|
2111
|
-
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2111
|
+
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
|
|
2112
2112
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
2113
2113
|
<div class="ttc" id="classSVF_1_1TCT_html_a516578af1f8666ff672e6611e61d7152"><div class="ttname"><a href="classSVF_1_1TCT.html#a516578af1f8666ff672e6611e61d7152">SVF::TCT::getParentThread</a></div><div class="ttdeci">NodeID getParentThread(NodeID tid) const</div><div class="ttdoc">Get parent thread. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00277">TCT.h:277</a></div></div>
|
|
2114
2114
|
<div class="ttc" id="classSVF_1_1MHP_html_a8fecc443c4d92a36a9c50ec6a4f5dea8"><div class="ttname"><a href="classSVF_1_1MHP.html#a8fecc443c4d92a36a9c50ec6a4f5dea8">SVF::MHP::InstVec</a></div><div class="ttdeci">TCT::InstVec InstVec</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00029">MHP.h:29</a></div></div>
|
|
2115
2115
|
<div class="ttc" id="classSVF_1_1MHP_html_a6343dd11dd75d3730dc463321a11445e"><div class="ttname"><a href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">SVF::MHP::addInterleavingThread</a></div><div class="ttdeci">void addInterleavingThread(const CxtThreadStmt &tgr, NodeID tid)</div><div class="ttdoc">Add/Remove interleaving thread for statement inst. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00150">MHP.h:150</a></div></div>
|
|
2116
|
-
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2116
|
+
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
|
|
2117
2117
|
<div class="ttc" id="classSVF_1_1MHP_html_a176eefb65e4ba99ee70513c8add44176"><div class="ttname"><a href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">SVF::MHP::tct</a></div><div class="ttdeci">TCT * tct</div><div class="ttdoc">TCT. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00249">MHP.h:249</a></div></div>
|
|
2118
2118
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a220f4c09e4c09c58d018719d44ec1dc3"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a220f4c09e4c09c58d018719d44ec1dc3">SVF::SVFUtil::dumpSet</a></div><div class="ttdeci">void dumpSet(NodeBS To, raw_ostream &O=SVFUtil::outs())</div><div class="ttdoc">Dump sparse bitvector set. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00149">SVFUtil.cpp:149</a></div></div>
|
|
2119
2119
|
<div class="ttc" id="classSVF_1_1CxtThreadStmt_html"><div class="ttname"><a href="classSVF_1_1CxtThreadStmt.html">SVF::CxtThreadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00123">CxtStmt.h:123</a></div></div>
|
|
2120
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2120
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
|
|
2121
2121
|
</div><!-- fragment -->
|
|
2122
2122
|
</div>
|
|
2123
2123
|
</div>
|
|
@@ -2153,7 +2153,7 @@ Private Member Functions</h2></td></tr>
|
|
|
2153
2153
|
<div class="ttc" id="classSVF_1_1CxtThreadStmt_html_a3b8f641f2fb7ade7052cae1ee6463884"><div class="ttname"><a href="classSVF_1_1CxtThreadStmt.html#a3b8f641f2fb7ade7052cae1ee6463884">SVF::CxtThreadStmt::getTid</a></div><div class="ttdeci">NodeID getTid() const</div><div class="ttdoc">Return current context. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00139">CxtStmt.h:139</a></div></div>
|
|
2154
2154
|
<div class="ttc" id="classSVF_1_1MHP_html_a6841b147e2a681ea372bdddd53616294"><div class="ttname"><a href="classSVF_1_1MHP.html#a6841b147e2a681ea372bdddd53616294">SVF::MHP::hasThreadStmtSet</a></div><div class="ttdeci">bool hasThreadStmtSet(const Instruction *inst) const</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00108">MHP.h:108</a></div></div>
|
|
2155
2155
|
<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>
|
|
2156
|
-
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2156
|
+
<div class="ttc" id="namespaceSVF_html_a542c6d5483bfc74fa58b45ad06b65960"><div class="ttname"><a href="namespaceSVF.html#a542c6d5483bfc74fa58b45ad06b65960">SVF::CallStrCxt</a></div><div class="ttdeci">SmallVector16 CallStrCxt</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00125">SVFBasicTypes.h:125</a></div></div>
|
|
2157
2157
|
<div class="ttc" id="classSVF_1_1TCT_html_aabc2c84e951ed9ae64207e379acb3074"><div class="ttname"><a href="classSVF_1_1TCT.html#aabc2c84e951ed9ae64207e379acb3074">SVF::TCT::getSVFModule</a></div><div class="ttdeci">SVFModule * getSVFModule() const</div><div class="ttdoc">Get SVFFModule. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00159">TCT.h:159</a></div></div>
|
|
2158
2158
|
<div class="ttc" id="classSVF_1_1MHP_html_afcfc409e625b74cbefd240170627c541"><div class="ttname"><a href="classSVF_1_1MHP.html#afcfc409e625b74cbefd240170627c541">SVF::MHP::threadStmtToTheadInterLeav</a></div><div class="ttdeci">ThreadStmtToThreadInterleav threadStmtToTheadInterLeav</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00252">MHP.h:252</a></div></div>
|
|
2159
2159
|
<div class="ttc" id="classSVF_1_1TCT_html_aa69b82c888c8193e97f9e95c62ac99d4"><div class="ttname"><a href="classSVF_1_1TCT.html#aa69b82c888c8193e97f9e95c62ac99d4">SVF::TCT::isCandidateFun</a></div><div class="ttdeci">bool isCandidateFun(const PTACallGraph::FunctionSet &callees) const</div><div class="ttdoc">Whether it is a candidate function for indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00246">TCT.h:246</a></div></div>
|
|
@@ -2202,7 +2202,7 @@ Private Member Functions</h2></td></tr>
|
|
|
2202
2202
|
<div class="fragment"><div class="line"><a name="l00446"></a><span class="lineno"> 446</span> {</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>  <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> tds = <a class="code" href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">tct</a>-><a class="code" href="classSVF_1_1TCT.html#aeb7dff0c02a90cb338c8d054d2b78984">getAncestorThread</a>(curTid);</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  tds.set(curTid);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>  <span class="keywordflow">for</span>(NodeBS::iterator cit = tds.begin(), ecit = tds.end(); cit!=ecit; ++cit)</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  {</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> siblingTds = <a class="code" href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">tct</a>-><a class="code" href="classSVF_1_1TCT.html#a60e63f6ddfe78c4cf4fd3a70875b727f">getSiblingThread</a>(*cit);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  <span class="keywordflow">for</span>(NodeBS::iterator it = siblingTds.begin(), eit = siblingTds.end(); it!=eit; ++it)</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>  {</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span> </div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>  <span class="keywordflow">if</span>((<a class="code" href="classSVF_1_1MHP.html#a6f07427b45991b2d8a3ff21582121d23">isHBPair</a>(*cit,*it) && <a class="code" href="classSVF_1_1MHP.html#a0356a8ccc53999549fb369f67faad306">isRecurFullJoin</a>(*cit,curTid)) || <a class="code" href="classSVF_1_1MHP.html#a6f07427b45991b2d8a3ff21582121d23">isHBPair</a>(*it,*cit) )</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span> </div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CxtThread.html">CxtThread</a>& ct = <a class="code" href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">tct</a>-><a class="code" href="classSVF_1_1TCT.html#a7b4ad0b052e1f8b6869733eef15f4e4d">getTCTNode</a>(*it)-><a class="code" href="classSVF_1_1TCTNode.html#a21591b19f6a9267151c31178f9543ee6">getCxtThread</a>();</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* routine = <a class="code" href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">tct</a>-><a class="code" href="classSVF_1_1TCT.html#a7ccacac1c673b38215b90e4eb480581f">getStartRoutineOfCxtThread</a>(ct);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>* stmt = &(routine->getEntryBlock().front());</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  <a class="code" href="classSVF_1_1CxtThreadStmt.html">CxtThreadStmt</a> cts(*it,ct.<a class="code" href="classSVF_1_1CxtThread.html#a93d75593046e26eafcf1af3a596bba4a">getContext</a>(),stmt);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  <a class="code" href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">addInterleavingThread</a>(cts,curTid);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  }</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span> </div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>,<a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <span class="stringliteral">"##Sibling thread of "</span> << curTid << <span class="stringliteral">" is : "</span>);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>,<a class="code" href="namespaceSVF_1_1SVFUtil.html#a220f4c09e4c09c58d018719d44ec1dc3">dumpSet</a>(siblingTds));</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  <a class="code" href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a>(<a class="code" href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a>,<a class="code" href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">outs</a>() << <span class="stringliteral">"\n"</span>);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  }</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span> }</div><div class="ttc" id="classSVF_1_1TCT_html_a7ccacac1c673b38215b90e4eb480581f"><div class="ttname"><a href="classSVF_1_1TCT.html#a7ccacac1c673b38215b90e4eb480581f">SVF::TCT::getStartRoutineOfCxtThread</a></div><div class="ttdeci">const Function * getStartRoutineOfCxtThread(const CxtThread &ct) const</div><div class="ttdoc">get the start routine function of a thread </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00334">TCT.h:334</a></div></div>
|
|
2203
2203
|
<div class="ttc" id="classSVF_1_1TCT_html_aeb7dff0c02a90cb338c8d054d2b78984"><div class="ttname"><a href="classSVF_1_1TCT.html#aeb7dff0c02a90cb338c8d054d2b78984">SVF::TCT::getAncestorThread</a></div><div class="ttdeci">const NodeBS getAncestorThread(NodeID tid) const</div><div class="ttdoc">Get all ancestor threads. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00286">TCT.h:286</a></div></div>
|
|
2204
2204
|
<div class="ttc" id="classSVF_1_1CxtThread_html_a93d75593046e26eafcf1af3a596bba4a"><div class="ttname"><a href="classSVF_1_1CxtThread.html#a93d75593046e26eafcf1af3a596bba4a">SVF::CxtThread::getContext</a></div><div class="ttdeci">const CallStrCxt & getContext() const</div><div class="ttdoc">Return context of the thread. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00205">CxtStmt.h:205</a></div></div>
|
|
2205
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2205
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a217a1ccdaec1abb103cf6b0373631234"><div class="ttname"><a href="SVFBasicTypes_8h.html#a217a1ccdaec1abb103cf6b0373631234">DMTA</a></div><div class="ttdeci">#define DMTA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00167">SVFBasicTypes.h:167</a></div></div>
|
|
2206
2206
|
<div class="ttc" id="classSVF_1_1CxtThread_html"><div class="ttname"><a href="classSVF_1_1CxtThread.html">SVF::CxtThread</a></div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00188">CxtStmt.h:188</a></div></div>
|
|
2207
2207
|
<div class="ttc" id="classSVF_1_1MHP_html_a6f07427b45991b2d8a3ff21582121d23"><div class="ttname"><a href="classSVF_1_1MHP.html#a6f07427b45991b2d8a3ff21582121d23">SVF::MHP::isHBPair</a></div><div class="ttdeci">bool isHBPair(NodeID tid1, NodeID tid2)</div><div class="ttdoc">Whether thread t1 happens before t2 based on ForkJoin Analysis. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00537">MHP.cpp:537</a></div></div>
|
|
2208
2208
|
<div class="ttc" id="classSVF_1_1TCT_html_a7b4ad0b052e1f8b6869733eef15f4e4d"><div class="ttname"><a href="classSVF_1_1TCT.html#a7b4ad0b052e1f8b6869733eef15f4e4d">SVF::TCT::getTCTNode</a></div><div class="ttdeci">TCTNode * getTCTNode(NodeID id) const</div><div class="ttdoc">Get TCT node. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00174">TCT.h:174</a></div></div>
|
|
@@ -2213,11 +2213,11 @@ Private Member Functions</h2></td></tr>
|
|
|
2213
2213
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
2214
2214
|
<div class="ttc" id="classSVF_1_1MHP_html_a0356a8ccc53999549fb369f67faad306"><div class="ttname"><a href="classSVF_1_1MHP.html#a0356a8ccc53999549fb369f67faad306">SVF::MHP::isRecurFullJoin</a></div><div class="ttdeci">bool isRecurFullJoin(NodeID parentTid, NodeID curTid)</div><div class="ttdoc">Thread curTid can be fully joined by parentTid recurively. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00474">MHP.cpp:474</a></div></div>
|
|
2215
2215
|
<div class="ttc" id="classSVF_1_1MHP_html_a6343dd11dd75d3730dc463321a11445e"><div class="ttname"><a href="classSVF_1_1MHP.html#a6343dd11dd75d3730dc463321a11445e">SVF::MHP::addInterleavingThread</a></div><div class="ttdeci">void addInterleavingThread(const CxtThreadStmt &tgr, NodeID tid)</div><div class="ttdoc">Add/Remove interleaving thread for statement inst. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00150">MHP.h:150</a></div></div>
|
|
2216
|
-
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2216
|
+
<div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
|
|
2217
2217
|
<div class="ttc" id="classSVF_1_1MHP_html_a176eefb65e4ba99ee70513c8add44176"><div class="ttname"><a href="classSVF_1_1MHP.html#a176eefb65e4ba99ee70513c8add44176">SVF::MHP::tct</a></div><div class="ttdeci">TCT * tct</div><div class="ttdoc">TCT. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00249">MHP.h:249</a></div></div>
|
|
2218
2218
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a220f4c09e4c09c58d018719d44ec1dc3"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a220f4c09e4c09c58d018719d44ec1dc3">SVF::SVFUtil::dumpSet</a></div><div class="ttdeci">void dumpSet(NodeBS To, raw_ostream &O=SVFUtil::outs())</div><div class="ttdoc">Dump sparse bitvector set. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00149">SVFUtil.cpp:149</a></div></div>
|
|
2219
2219
|
<div class="ttc" id="classSVF_1_1CxtThreadStmt_html"><div class="ttname"><a href="classSVF_1_1CxtThreadStmt.html">SVF::CxtThreadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00123">CxtStmt.h:123</a></div></div>
|
|
2220
|
-
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#
|
|
2220
|
+
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
|
|
2221
2221
|
</div><!-- fragment -->
|
|
2222
2222
|
</div>
|
|
2223
2223
|
</div>
|