svf-tools 1.0.553 → 1.0.554
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
- package/SVF-doxygen/html/html/Annotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/BreakConstantExpr_8cpp.html +1 -1
- package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/BreakConstantExpr_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/CFLAlias_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +18 -18
- package/SVF-doxygen/html/html/CHGBuilder_8h.html +1 -0
- package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +11 -10
- package/SVF-doxygen/html/html/CHG_8cpp.html +2 -2
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/CHG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +17 -17
- package/SVF-doxygen/html/html/CPPUtil_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CxtStmt_8h_source.html +3 -3
- package/SVF-doxygen/html/html/DCHG_8cpp.html +2 -2
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +38 -35
- package/SVF-doxygen/html/html/DCHG_8h_source.html +9 -10
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +11 -14
- package/SVF-doxygen/html/html/DDAPass_8h_source.html +12 -13
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DPItem_8h_source.html +2 -2
- package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +7 -7
- package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ExeState_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ExtAPI_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +5 -5
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/LLVMModule_8h_source.html +20 -18
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +27 -27
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +17 -17
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MHP_8cpp.html +2 -2
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/MHP_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +4 -4
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/MTA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +3 -3
- package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +11 -11
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h.html +2 -0
- package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h_source.html +110 -109
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +60 -60
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +40 -40
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFModule_8h_source.html +4 -4
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/SVFUtil_8h_source.html +49 -52
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +10 -10
- package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +4 -4
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +34 -34
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +5 -5
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/TCT_8h_source.html +8 -8
- package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +4 -4
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +2 -2
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h.html +0 -2
- package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +79 -80
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/VFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +9 -12
- package/SVF-doxygen/html/html/WPAPass_8h_source.html +10 -11
- 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_1ActualParmVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +50 -50
- package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +41 -41
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CondVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CxtDPItem.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +114 -111
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass-members.html +5 -6
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +42 -79
- package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +12 -12
- 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_1FunEntryICFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +1 -1
- 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_1InterPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IteratedDominanceFrontier.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet-members.html +20 -19
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +95 -54
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +19 -19
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MutablePTData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTACFInfoBuilder.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +61 -61
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +79 -79
- package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +40 -40
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +19 -19
- 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 +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass-members.html +4 -5
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +28 -66
- package/SVF-doxygen/html/html/functions_b.html +1 -1
- package/SVF-doxygen/html/html/functions_func_b.html +1 -1
- package/SVF-doxygen/html/html/functions_func_g.html +6 -6
- package/SVF-doxygen/html/html/functions_func_r.html +3 -3
- package/SVF-doxygen/html/html/functions_g.html +7 -7
- package/SVF-doxygen/html/html/functions_r.html +2 -4
- package/SVF-doxygen/html/html/namespaceSVF.html +141 -141
- package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +49 -49
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +168 -171
- package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +28 -28
- package/SVF-doxygen/html/html/search/all_11.js +1 -1
- package/SVF-doxygen/html/html/search/all_13.js +1 -1
- package/SVF-doxygen/html/html/search/all_2.js +1 -1
- package/SVF-doxygen/html/html/search/all_7.js +1 -1
- package/SVF-doxygen/html/html/search/functions_1.js +1 -1
- package/SVF-doxygen/html/html/search/functions_10.js +1 -1
- package/SVF-doxygen/html/html/search/functions_6.js +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +3 -3
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +4 -4
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +4 -4
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
- package/include/DDA/DDAPass.h +0 -3
- package/include/SVF-FE/BasicTypes.h +1 -0
- package/include/SVF-FE/CHGBuilder.h +1 -0
- package/include/SVF-FE/DCHG.h +1 -1
- package/include/SVF-FE/LLVMModule.h +17 -0
- package/include/Util/BasicTypes.h +0 -1
- package/include/Util/SVFUtil.h +1 -13
- package/include/WPA/WPAPass.h +0 -3
- package/lib/DDA/DDAPass.cpp +0 -7
- package/lib/SVF-FE/DCHG.cpp +4 -7
- package/lib/WPA/WPAPass.cpp +0 -10
- package/package.json +1 -1
|
@@ -207,7 +207,7 @@ template<class EdgeIter > </div>
|
|
|
207
207
|
<div class="fragment"><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <a class="code" href="classSVF_1_1CFLEdge.html">CFLEdge</a>* edge = *(EI.getCurrent());</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  assert(edge && <span class="stringliteral">"No edge found!!"</span>);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <span class="keywordflow">if</span> (edge-><a class="code" href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">getEdgeKind</a>() == <a class="code" href="CFLGrammar_8txt.html#a017fa6c558fa1eff0a13180c8340aba8">ConstraintEdge::Addr</a>)</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  {</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  rawstr << <span class="stringliteral">"color=green"</span>;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  }</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (edge-><a class="code" href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">getEdgeKind</a>() == <a class="code" href="CFLGrammar_8txt.html#a36f63c7a581bf6d351f835c6127a2519">ConstraintEdge::Copy</a>)</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>  }</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (edge-><a class="code" href="classSVF_1_1CFLEdge.html#a5d11e42f5571287992362669fee9e159">getEdgeKindWithMask</a>() == ConstraintEdge::NormalGep)</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  rawstr << <span class="stringliteral">"color=purple,label="</span> << <span class="charliteral">'"'</span> << <span class="stringliteral">"Gep_"</span> << edge-><a class="code" href="classSVF_1_1CFLEdge.html#ae4c8562ff6801503de9e3cb0c4ebe2b8">getEdgeAttri</a>() << <span class="charliteral">'"'</span>;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (edge-><a class="code" href="classSVF_1_1CFLEdge.html#a5d11e42f5571287992362669fee9e159">getEdgeKindWithMask</a>() == ConstraintEdge::VariantGep)</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  rawstr << <span class="stringliteral">"color=purple,label="</span> << <span class="charliteral">'"'</span> << <span class="stringliteral">"VGep"</span> << <span class="charliteral">'"'</span>;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  }</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (edge-><a class="code" href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">getEdgeKind</a>() == <a class="code" href="CFLGrammar_8txt.html#a4459b9e008c1693c8d592cf0544912f6">ConstraintEdge::Store</a>)</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  rawstr << <span class="stringliteral">"color=blue"</span>;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  }</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (edge-><a class="code" href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">getEdgeKind</a>() == <a class="code" href="CFLGrammar_8txt.html#af3f0b3f464e928b7fc87347dc041501d">ConstraintEdge::Load</a>)</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  {</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  rawstr << <span class="stringliteral">"color=red"</span>;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (edge-><a class="code" href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">getEdgeKind</a>() == graph-><a class="code" href="classSVF_1_1CFLGraph.html#a685fb852b2cd3767258225aa3b87caa4">getStartKind</a>())</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  {</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  rawstr << <span class="stringliteral">"color=Turquoise"</span>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  }</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  rawstr << <span class="stringliteral">"style=invis"</span>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  }</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  }</div><div class="ttc" id="classSVF_1_1CFLEdge_html_ae4c8562ff6801503de9e3cb0c4ebe2b8"><div class="ttname"><a href="classSVF_1_1CFLEdge.html#ae4c8562ff6801503de9e3cb0c4ebe2b8">SVF::CFLEdge::getEdgeAttri</a></div><div class="ttdeci">GEdgeKind getEdgeAttri() const</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00066">CFLGraph.h:66</a></div></div>
|
|
208
208
|
<div class="ttc" id="CFLGrammar_8txt_html_a36f63c7a581bf6d351f835c6127a2519"><div class="ttname"><a href="CFLGrammar_8txt.html#a36f63c7a581bf6d351f835c6127a2519">Copy</a></div><div class="ttdeci">F F Copy</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8txt_source.html#l00007">CFLGrammar.txt:7</a></div></div>
|
|
209
209
|
<div class="ttc" id="classSVF_1_1CFLEdge_html_a5d11e42f5571287992362669fee9e159"><div class="ttname"><a href="classSVF_1_1CFLEdge.html#a5d11e42f5571287992362669fee9e159">SVF::CFLEdge::getEdgeKindWithMask</a></div><div class="ttdeci">GEdgeKind getEdgeKindWithMask() const</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00061">CFLGraph.h:61</a></div></div>
|
|
210
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
210
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
211
211
|
<div class="ttc" id="classSVF_1_1CFLGraph_html_a685fb852b2cd3767258225aa3b87caa4"><div class="ttname"><a href="classSVF_1_1CFLGraph.html#a685fb852b2cd3767258225aa3b87caa4">SVF::CFLGraph::getStartKind</a></div><div class="ttdeci">Kind getStartKind() const</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8cpp_source.html#l00037">CFLGraph.cpp:37</a></div></div>
|
|
212
212
|
<div class="ttc" id="classSVF_1_1CFLEdge_html_acab367a1633d00afdafadf3f3a43e0c8"><div class="ttname"><a href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">SVF::CFLEdge::getEdgeKind</a></div><div class="ttdeci">GEdgeKind getEdgeKind() const</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00056">CFLGraph.h:56</a></div></div>
|
|
213
213
|
<div class="ttc" id="CFLGrammar_8txt_html_a4459b9e008c1693c8d592cf0544912f6"><div class="ttname"><a href="CFLGrammar_8txt.html#a4459b9e008c1693c8d592cf0544912f6">Store</a></div><div class="ttdeci">Memflow Load Store</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8txt_source.html#l00030">CFLGrammar.txt:30</a></div></div>
|
|
@@ -255,7 +255,7 @@ template<class EdgeIter > </div>
|
|
|
255
255
|
</div><div class="memdoc">
|
|
256
256
|
|
|
257
257
|
<p class="definition">Definition at line <a class="el" href="CFLGraph_8cpp_source.html#l00157">157</a> of file <a class="el" href="CFLGraph_8cpp_source.html">CFLGraph.cpp</a>.</p>
|
|
258
|
-
<div class="fragment"><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  {</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <a class="code" href="classSVF_1_1CFLEdge.html">CFLEdge</a>* edge = *(EI.getCurrent());</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  assert(edge && <span class="stringliteral">"No edge found!!"</span>);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  rawstr << <span class="stringliteral">"Edge label: "</span> << edge-><a class="code" href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">getEdgeKind</a>() << <span class="stringliteral">" "</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
258
|
+
<div class="fragment"><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  {</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <a class="code" href="classSVF_1_1CFLEdge.html">CFLEdge</a>* edge = *(EI.getCurrent());</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  assert(edge && <span class="stringliteral">"No edge found!!"</span>);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  rawstr << <span class="stringliteral">"Edge label: "</span> << edge-><a class="code" href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">getEdgeKind</a>() << <span class="stringliteral">" "</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
259
259
|
<div class="ttc" id="classSVF_1_1CFLEdge_html_acab367a1633d00afdafadf3f3a43e0c8"><div class="ttname"><a href="classSVF_1_1CFLEdge.html#acab367a1633d00afdafadf3f3a43e0c8">SVF::CFLEdge::getEdgeKind</a></div><div class="ttdeci">GEdgeKind getEdgeKind() const</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00056">CFLGraph.h:56</a></div></div>
|
|
260
260
|
<div class="ttc" id="classSVF_1_1CFLEdge_html"><div class="ttname"><a href="classSVF_1_1CFLEdge.html">SVF::CFLEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00047">CFLGraph.h:47</a></div></div>
|
|
261
261
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
@@ -367,7 +367,7 @@ template<class EdgeIter > </div>
|
|
|
367
367
|
<p>Return function name;. </p>
|
|
368
368
|
|
|
369
369
|
<p class="definition">Definition at line <a class="el" href="CFLGraph_8cpp_source.html#l00101">101</a> of file <a class="el" href="CFLGraph_8cpp_source.html">CFLGraph.cpp</a>.</p>
|
|
370
|
-
<div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  {</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  rawstr << <span class="stringliteral">"Node ID: "</span> << node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">" "</span>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
370
|
+
<div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  {</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  rawstr << <span class="stringliteral">"Node ID: "</span> << node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">" "</span>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
371
371
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
|
|
372
372
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
373
373
|
</div><!-- fragment -->
|
package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html
CHANGED
|
@@ -361,7 +361,7 @@ template<class EdgeIter > </div>
|
|
|
361
361
|
<p class="definition">Definition at line <a class="el" href="ConsG_8cpp_source.html#l00709">709</a> of file <a class="el" href="ConsG_8cpp_source.html">ConsG.cpp</a>.</p>
|
|
362
362
|
<div class="fragment"><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>  {</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>  <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* node = SVFIR::getPAG()->getGNode(<a class="code" href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a>->getId());</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>  <span class="keywordtype">bool</span> briefDisplay = Options::BriefConsCGDotGraph;</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>  <span class="keywordtype">bool</span> nameDisplay = <span class="keyword">true</span>;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span> </div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>  <span class="keywordflow">if</span> (briefDisplay)</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>  {</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>  <span class="keywordflow">if</span> (SVFUtil::isa<ValVar>(node))</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>  {</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>  <span class="keywordflow">if</span> (nameDisplay)</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>  rawstr << node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">":"</span> << node-><a class="code" href="classSVF_1_1SVFVar.html#a54b2a5ed3ed21e54eaf04182f0338333">getValueName</a>();</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>  rawstr << node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>  }</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>  rawstr << node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>  }</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>  {</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>  <span class="comment">// print the whole value</span></div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>  <span class="keywordflow">if</span> (!SVFUtil::isa<DummyValVar>(node) && !SVFUtil::isa<DummyObjVar>(node))</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>  rawstr << node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">":"</span> << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(node-><a class="code" href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">getValue</a>());</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>  rawstr << node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">":"</span>;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span> </div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>  }</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span> </div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  }</div><div class="ttc" id="classSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00045">SVFVariables.h:45</a></div></div>
|
|
363
363
|
<div class="ttc" id="cJSON_8cpp_html_ab6e2ea6dc7bd57d1483413449998230a"><div class="ttname"><a href="cJSON_8cpp.html#ab6e2ea6dc7bd57d1483413449998230a">n</a></div><div class="ttdeci">cJSON * n</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02558">cJSON.cpp:2558</a></div></div>
|
|
364
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
364
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
365
365
|
<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#l00390">SVFUtil.cpp:390</a></div></div>
|
|
366
366
|
<div class="ttc" id="classSVF_1_1SVFVar_html_afaa33caa8d2a306f6741d9d066243e40"><div class="ttname"><a href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">SVF::SVFVar::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdoc">Get/has methods of the components. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00091">SVFVariables.h:91</a></div></div>
|
|
367
367
|
<div class="ttc" id="classSVF_1_1SVFVar_html_a54b2a5ed3ed21e54eaf04182f0338333"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a54b2a5ed3ed21e54eaf04182f0338333">SVF::SVFVar::getValueName</a></div><div class="ttdeci">virtual const std::string getValueName() const =0</div><div class="ttdoc">Get name of the LLVM value. </div></div>
|
|
@@ -248,7 +248,7 @@ template<class EdgeIter > </div>
|
|
|
248
248
|
<p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00600">600</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
|
|
249
249
|
<div class="fragment"><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>  {</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>  <a class="code" href="classSVF_1_1ICFGEdge.html">ICFGEdge</a>* edge = *(EI.getCurrent());</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>  assert(edge && <span class="stringliteral">"No edge found!!"</span>);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span> </div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CallCFGEdge.html">CallCFGEdge</a>* dirCall = SVFUtil::dyn_cast<CallCFGEdge>(edge))</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>  rawstr << dirCall->getCallSite();</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1RetCFGEdge.html">RetCFGEdge</a>* dirRet = SVFUtil::dyn_cast<RetCFGEdge>(edge))</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>  rawstr << dirRet->getCallSite();</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span> </div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>  }</div><div class="ttc" id="classSVF_1_1ICFGEdge_html"><div class="ttname"><a href="classSVF_1_1ICFGEdge.html">SVF::ICFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00044">ICFGEdge.h:44</a></div></div>
|
|
250
250
|
<div class="ttc" id="classSVF_1_1CallCFGEdge_html"><div class="ttname"><a href="classSVF_1_1CallCFGEdge.html">SVF::CallCFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00168">ICFGEdge.h:168</a></div></div>
|
|
251
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
251
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
252
252
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
253
253
|
<div class="ttc" id="classSVF_1_1RetCFGEdge_html"><div class="ttname"><a href="classSVF_1_1RetCFGEdge.html">SVF::RetCFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00216">ICFGEdge.h:216</a></div></div>
|
|
254
254
|
</div><!-- fragment -->
|
|
@@ -319,7 +319,7 @@ template<class EdgeIter > </div>
|
|
|
319
319
|
</div><div class="memdoc">
|
|
320
320
|
|
|
321
321
|
<p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00548">548</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
|
|
322
|
-
<div class="fragment"><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  {</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span> </div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  <span class="keywordflow">if</span>(SVFUtil::isa<IntraICFGNode>(node))</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  {</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  }</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FunEntryICFGNode>(node))</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>  {</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  rawstr << <span class="stringliteral">"color=yellow"</span>;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  }</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FunExitICFGNode>(node))</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>  {</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  rawstr << <span class="stringliteral">"color=green"</span>;</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  }</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<CallICFGNode>(node))</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>  {</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  rawstr << <span class="stringliteral">"color=red"</span>;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  }</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<RetICFGNode>(node))</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  {</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>  rawstr << <span class="stringliteral">"color=blue"</span>;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>  }</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<GlobalICFGNode>(node))</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  {</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  rawstr << <span class="stringliteral">"color=purple"</span>;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>  }</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  assert(<span class="keyword">false</span> && <span class="stringliteral">"no such kind of node!!"</span>);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span> </div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  rawstr << <span class="stringliteral">""</span>;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span> </div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
322
|
+
<div class="fragment"><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  {</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span> </div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  <span class="keywordflow">if</span>(SVFUtil::isa<IntraICFGNode>(node))</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  {</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  }</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FunEntryICFGNode>(node))</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>  {</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  rawstr << <span class="stringliteral">"color=yellow"</span>;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  }</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FunExitICFGNode>(node))</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>  {</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  rawstr << <span class="stringliteral">"color=green"</span>;</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  }</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<CallICFGNode>(node))</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>  {</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  rawstr << <span class="stringliteral">"color=red"</span>;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  }</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<RetICFGNode>(node))</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  {</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>  rawstr << <span class="stringliteral">"color=blue"</span>;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>  }</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<GlobalICFGNode>(node))</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  {</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  rawstr << <span class="stringliteral">"color=purple"</span>;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>  }</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  assert(<span class="keyword">false</span> && <span class="stringliteral">"no such kind of node!!"</span>);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span> </div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>  rawstr << <span class="stringliteral">""</span>;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span> </div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
323
323
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
324
324
|
</div><!-- fragment -->
|
|
325
325
|
</div>
|
|
@@ -378,7 +378,7 @@ template<class EdgeIter > </div>
|
|
|
378
378
|
|
|
379
379
|
<p class="definition">Definition at line <a class="el" href="IRGraph_8cpp_source.html#l00153">153</a> of file <a class="el" href="IRGraph_8cpp_source.html">IRGraph.cpp</a>.</p>
|
|
380
380
|
<div class="fragment"><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="comment">// print function info</span></div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keywordflow">if</span> (node-><a class="code" href="classSVF_1_1SVFVar.html#a53439a493963d16e5a1b5ed36ab6d33e">getFunction</a>())</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  rawstr << <span class="stringliteral">"["</span> << node-><a class="code" href="classSVF_1_1SVFVar.html#a53439a493963d16e5a1b5ed36ab6d33e">getFunction</a>()->getName() << <span class="stringliteral">"] "</span>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span> </div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  rawstr << node-><a class="code" href="classSVF_1_1SVFVar.html#ada932ef2ae0a3e712174df479c35b0dd">toString</a>();</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  }</div><div class="ttc" id="classSVF_1_1SVFVar_html_ada932ef2ae0a3e712174df479c35b0dd"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ada932ef2ae0a3e712174df479c35b0dd">SVF::SVFVar::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8cpp_source.html#l00092">SVFVariables.cpp:92</a></div></div>
|
|
381
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
381
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
382
382
|
<div class="ttc" id="classSVF_1_1SVFVar_html_a53439a493963d16e5a1b5ed36ab6d33e"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a53439a493963d16e5a1b5ed36ab6d33e">SVF::SVFVar::getFunction</a></div><div class="ttdeci">virtual const Function * getFunction() const</div><div class="ttdoc">Return the function that this SVFVar resides in. Return nullptr if it is a global or constantexpr nod...</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00127">SVFVariables.h:127</a></div></div>
|
|
383
383
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
384
384
|
</div><!-- fragment -->
|
|
@@ -267,7 +267,7 @@ template<class EdgeIter > </div>
|
|
|
267
267
|
|
|
268
268
|
<p class="definition">Definition at line <a class="el" href="PTACallGraph_8cpp_source.html#l00395">395</a> of file <a class="el" href="PTACallGraph_8cpp_source.html">PTACallGraph.cpp</a>.</p>
|
|
269
269
|
<div class="fragment"><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  {</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <a class="code" href="classSVF_1_1PTACallGraphEdge.html">PTACallGraphEdge</a>* edge = *(EI.getCurrent());</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  assert(edge && <span class="stringliteral">"No edge found!!"</span>);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span> </div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  rawstr << edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#af9ca9cfffbba3b68838d41be62c914ac">getCallSiteID</a>();</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span> </div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  }</div><div class="ttc" id="classSVF_1_1PTACallGraphEdge_html_af9ca9cfffbba3b68838d41be62c914ac"><div class="ttname"><a href="classSVF_1_1PTACallGraphEdge.html#af9ca9cfffbba3b68838d41be62c914ac">SVF::PTACallGraphEdge::getCallSiteID</a></div><div class="ttdeci">CallSiteID getCallSiteID() const</div><div class="ttdoc">Get direct and indirect calls. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00083">PTACallGraph.h:83</a></div></div>
|
|
270
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
270
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
271
271
|
<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>
|
|
272
272
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
273
273
|
</div><!-- fragment -->
|
|
@@ -338,9 +338,9 @@ template<class EdgeIter > </div>
|
|
|
338
338
|
</div><div class="memdoc">
|
|
339
339
|
|
|
340
340
|
<p class="definition">Definition at line <a class="el" href="PTACallGraph_8cpp_source.html#l00354">354</a> of file <a class="el" href="PTACallGraph_8cpp_source.html">PTACallGraph.cpp</a>.</p>
|
|
341
|
-
<div class="fragment"><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  {</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = node-><a class="code" href="classSVF_1_1PTACallGraphNode.html#a959445c97605953fbdebbbd999437a09">getFunction</a>();</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  <span class="keywordflow">if</span> (!<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVFUtil::isExtCall</a>(fun))</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  {</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keywordflow">return</span> <span class="stringliteral">"shape=box"</span>;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  }</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordflow">return</span> <span class="stringliteral">"shape=Mrecord"</span>;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  }</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
341
|
+
<div class="fragment"><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  {</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = node-><a class="code" href="classSVF_1_1PTACallGraphNode.html#a959445c97605953fbdebbbd999437a09">getFunction</a>();</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  <span class="keywordflow">if</span> (!<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVFUtil::isExtCall</a>(fun))</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  {</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keywordflow">return</span> <span class="stringliteral">"shape=box"</span>;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  }</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordflow">return</span> <span class="stringliteral">"shape=Mrecord"</span>;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  }</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
|
|
342
342
|
<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>
|
|
343
|
-
<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="SVFUtil_8h_source.html#
|
|
343
|
+
<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="SVFUtil_8h_source.html#l00346">SVFUtil.h:346</a></div></div>
|
|
344
344
|
</div><!-- fragment -->
|
|
345
345
|
</div>
|
|
346
346
|
</div>
|
|
@@ -213,7 +213,7 @@ struct llvm::DOTGraphTraits< SVFG * ></h3>
|
|
|
213
213
|
<div class="ttc" id="classSVF_1_1ActualINSVFGNode_html"><div class="ttname"><a href="classSVF_1_1ActualINSVFGNode.html">SVF::ActualINSVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00180">SVFGNode.h:180</a></div></div>
|
|
214
214
|
<div class="ttc" id="classSVF_1_1UnaryOPVFGNode_html"><div class="ttname"><a href="classSVF_1_1UnaryOPVFGNode.html">SVF::UnaryOPVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00465">VFGNode.h:465</a></div></div>
|
|
215
215
|
<div class="ttc" id="classSVF_1_1CmpVFGNode_html"><div class="ttname"><a href="classSVF_1_1CmpVFGNode.html">SVF::CmpVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00324">VFGNode.h:324</a></div></div>
|
|
216
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
216
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
217
217
|
<div class="ttc" id="classSVF_1_1ActualRetVFGNode_html"><div class="ttname"><a href="classSVF_1_1ActualRetVFGNode.html">SVF::ActualRetVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00967">VFGNode.h:967</a></div></div>
|
|
218
218
|
<div class="ttc" id="classSVF_1_1StmtVFGNode_html"><div class="ttname"><a href="classSVF_1_1StmtVFGNode.html">SVF::StmtVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00116">VFGNode.h:116</a></div></div>
|
|
219
219
|
<div class="ttc" id="classSVF_1_1FormalParmVFGNode_html"><div class="ttname"><a href="classSVF_1_1FormalParmVFGNode.html">SVF::FormalParmVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00898">VFGNode.h:898</a></div></div>
|
|
@@ -312,7 +312,7 @@ template<class EdgeIter > </div>
|
|
|
312
312
|
<div class="ttc" id="classSVF_1_1CallIndSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1CallIndSVFGEdge.html">SVF::CallIndSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00126">SVFGEdge.h:126</a></div></div>
|
|
313
313
|
<div class="ttc" id="classSVF_1_1CallDirSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1CallDirSVFGEdge.html">SVF::CallDirSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00211">VFGEdge.h:211</a></div></div>
|
|
314
314
|
<div class="ttc" id="classSVF_1_1VFGEdge_html"><div class="ttname"><a href="classSVF_1_1VFGEdge.html">SVF::VFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00044">VFGEdge.h:44</a></div></div>
|
|
315
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
315
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
316
316
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
317
317
|
<div class="ttc" id="classSVF_1_1RetDirSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1RetDirSVFGEdge.html">SVF::RetDirSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00254">VFGEdge.h:254</a></div></div>
|
|
318
318
|
</div><!-- fragment -->
|
|
@@ -387,7 +387,7 @@ template<class EdgeIter > </div>
|
|
|
387
387
|
<div class="fragment"><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>  {</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span> </div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1StmtVFGNode.html">StmtSVFGNode</a>* stmtNode = SVFUtil::dyn_cast<StmtSVFGNode>(node))</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>  {</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = stmtNode->getPAGEdge();</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>  <span class="keywordflow">if</span> (SVFUtil::isa<AddrStmt>(edge))</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>  {</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>  rawstr << <span class="stringliteral">"color=green"</span>;</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  }</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<CopyStmt>(edge))</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>  {</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>  }</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<RetPE>(edge))</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>  {</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>  rawstr << <span class="stringliteral">"color=black,style=dotted"</span>;</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>  }</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<GepStmt>(edge))</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>  {</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>  rawstr << <span class="stringliteral">"color=purple"</span>;</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>  }</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<StoreStmt>(edge))</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>  {</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>  rawstr << <span class="stringliteral">"color=blue"</span>;</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>  }</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<LoadStmt>(edge))</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>  {</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>  rawstr << <span class="stringliteral">"color=red"</span>;</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>  }</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>  {</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>  assert(0 && <span class="stringliteral">"No such kind edge!!"</span>);</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>  }</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>  rawstr << <span class="stringliteral">""</span>;</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>  }</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<MSSAPHISVFGNode>(node))</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>  {</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>  }</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<PHISVFGNode>(node))</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>  {</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>  }</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<NullPtrSVFGNode>(node))</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>  {</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>  }</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FormalINSVFGNode>(node))</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>  {</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>  }</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FormalOUTSVFGNode>(node))</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>  {</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>  }</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FormalParmSVFGNode>(node))</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>  {</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>  }</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<ActualINSVFGNode>(node))</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>  {</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>  }</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<ActualOUTSVFGNode>(node))</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>  {</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>  }</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<ActualParmSVFGNode>(node))</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>  {</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>  }</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<ActualRetSVFGNode>(node))</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>  {</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>  }</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<FormalRetSVFGNode>(node))</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>  {</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>  }</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<BinaryOPVFGNode>(node))</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>  {</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>  rawstr << <span class="stringliteral">"color=black,penwidth=2"</span>;</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>  }</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<CmpVFGNode>(node))</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>  {</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>  rawstr << <span class="stringliteral">"color=black,penwidth=2"</span>;</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>  }</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<UnaryOPVFGNode>(node))</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>  {</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>  rawstr << <span class="stringliteral">"color=black,penwidth=2"</span>;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>  }</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>  assert(<span class="keyword">false</span> && <span class="stringliteral">"no such kind of node!!"</span>);</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> </div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>  <span class="keywordflow">if</span>(graph-><a class="code" href="classSVF_1_1SVFG.html#a8ba934714a7f2caf2e041002fdb66137">getStat</a>()-><a class="code" href="classSVF_1_1SVFGStat.html#a72c93b86e95bdbe32ade33f7264f4c0a">isSource</a>(node))</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>  {</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>  rawstr << <span class="stringliteral">",style=filled, fillcolor=red"</span>;</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>  }</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(graph-><a class="code" href="classSVF_1_1SVFG.html#a8ba934714a7f2caf2e041002fdb66137">getStat</a>()-><a class="code" href="classSVF_1_1SVFGStat.html#ae905f0d64db3039f8fd3c117c4624e31">isSink</a>(node))</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>  {</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>  rawstr << <span class="stringliteral">",style=filled, fillcolor=blue"</span>;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>  }</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(graph-><a class="code" href="classSVF_1_1SVFG.html#a8ba934714a7f2caf2e041002fdb66137">getStat</a>()-><a class="code" href="classSVF_1_1SVFGStat.html#a6e68486e02db81cbbedc942ace3e9590">inBackwardSlice</a>(node))</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>  {</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>  rawstr << <span class="stringliteral">",style=filled, fillcolor=yellow"</span>;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>  }</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(graph-><a class="code" href="classSVF_1_1SVFG.html#a8ba934714a7f2caf2e041002fdb66137">getStat</a>()-><a class="code" href="classSVF_1_1SVFGStat.html#adc6a5c3e430bdf942f1462e101ac6917">inForwardSlice</a>(node))</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>  rawstr << <span class="stringliteral">",style=filled, fillcolor=gray"</span>;</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> </div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>  rawstr << <span class="stringliteral">""</span>;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> </div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>  }</div><div class="ttc" id="classSVF_1_1SVFG_html_a8ba934714a7f2caf2e041002fdb66137"><div class="ttname"><a href="classSVF_1_1SVFG.html#a8ba934714a7f2caf2e041002fdb66137">SVF::SVFG::getStat</a></div><div class="ttdeci">SVFGStat * getStat() const</div><div class="ttdoc">Return statistics. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00125">SVFG.h:125</a></div></div>
|
|
388
388
|
<div class="ttc" id="classSVF_1_1SVFGStat_html_a72c93b86e95bdbe32ade33f7264f4c0a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a72c93b86e95bdbe32ade33f7264f4c0a">SVF::SVFGStat::isSource</a></div><div class="ttdeci">bool isSource(const SVFGNode *node) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00261">SVFGStat.h:261</a></div></div>
|
|
389
389
|
<div class="ttc" id="classSVF_1_1SVFGStat_html_ae905f0d64db3039f8fd3c117c4624e31"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ae905f0d64db3039f8fd3c117c4624e31">SVF::SVFGStat::isSink</a></div><div class="ttdeci">bool isSink(const SVFGNode *node) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00265">SVFGStat.h:265</a></div></div>
|
|
390
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
390
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
391
391
|
<div class="ttc" id="classSVF_1_1SVFGStat_html_a6e68486e02db81cbbedc942ace3e9590"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a6e68486e02db81cbbedc942ace3e9590">SVF::SVFGStat::inBackwardSlice</a></div><div class="ttdeci">bool inBackwardSlice(const SVFGNode *node) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00257">SVFGStat.h:257</a></div></div>
|
|
392
392
|
<div class="ttc" id="classSVF_1_1StmtVFGNode_html"><div class="ttname"><a href="classSVF_1_1StmtVFGNode.html">SVF::StmtVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00116">VFGNode.h:116</a></div></div>
|
|
393
393
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
@@ -480,7 +480,7 @@ template<class EdgeIter > </div>
|
|
|
480
480
|
<div class="ttc" id="classSVF_1_1ActualINSVFGNode_html"><div class="ttname"><a href="classSVF_1_1ActualINSVFGNode.html">SVF::ActualINSVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00180">SVFGNode.h:180</a></div></div>
|
|
481
481
|
<div class="ttc" id="classSVF_1_1UnaryOPVFGNode_html"><div class="ttname"><a href="classSVF_1_1UnaryOPVFGNode.html">SVF::UnaryOPVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00465">VFGNode.h:465</a></div></div>
|
|
482
482
|
<div class="ttc" id="classSVF_1_1CmpVFGNode_html"><div class="ttname"><a href="classSVF_1_1CmpVFGNode.html">SVF::CmpVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00324">VFGNode.h:324</a></div></div>
|
|
483
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
483
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
484
484
|
<div class="ttc" id="classSVF_1_1ActualRetVFGNode_html"><div class="ttname"><a href="classSVF_1_1ActualRetVFGNode.html">SVF::ActualRetVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00967">VFGNode.h:967</a></div></div>
|
|
485
485
|
<div class="ttc" id="classSVF_1_1StmtVFGNode_html"><div class="ttname"><a href="classSVF_1_1StmtVFGNode.html">SVF::StmtVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00116">VFGNode.h:116</a></div></div>
|
|
486
486
|
<div class="ttc" id="classSVF_1_1FormalParmVFGNode_html"><div class="ttname"><a href="classSVF_1_1FormalParmVFGNode.html">SVF::FormalParmVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00898">VFGNode.h:898</a></div></div>
|
|
@@ -208,7 +208,7 @@ struct llvm::DOTGraphTraits< VFG * ></h3>
|
|
|
208
208
|
<div class="ttc" id="classSVF_1_1MRSVFGNode_html"><div class="ttname"><a href="classSVF_1_1MRSVFGNode.html">SVF::MRSVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00042">SVFGNode.h:42</a></div></div>
|
|
209
209
|
<div class="ttc" id="classSVF_1_1UnaryOPVFGNode_html"><div class="ttname"><a href="classSVF_1_1UnaryOPVFGNode.html">SVF::UnaryOPVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00465">VFGNode.h:465</a></div></div>
|
|
210
210
|
<div class="ttc" id="classSVF_1_1CmpVFGNode_html"><div class="ttname"><a href="classSVF_1_1CmpVFGNode.html">SVF::CmpVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00324">VFGNode.h:324</a></div></div>
|
|
211
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
211
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
212
212
|
<div class="ttc" id="classSVF_1_1ActualRetVFGNode_html"><div class="ttname"><a href="classSVF_1_1ActualRetVFGNode.html">SVF::ActualRetVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00967">VFGNode.h:967</a></div></div>
|
|
213
213
|
<div class="ttc" id="classSVF_1_1StmtVFGNode_html"><div class="ttname"><a href="classSVF_1_1StmtVFGNode.html">SVF::StmtVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00116">VFGNode.h:116</a></div></div>
|
|
214
214
|
<div class="ttc" id="classSVF_1_1FormalParmVFGNode_html"><div class="ttname"><a href="classSVF_1_1FormalParmVFGNode.html">SVF::FormalParmVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00898">VFGNode.h:898</a></div></div>
|
|
@@ -304,7 +304,7 @@ template<class EdgeIter > </div>
|
|
|
304
304
|
<p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l01341">1341</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
|
|
305
305
|
<div class="fragment"><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>  {</div><div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>  <a class="code" href="classSVF_1_1VFGEdge.html">VFGEdge</a>* edge = *(EI.getCurrent());</div><div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>  assert(edge && <span class="stringliteral">"No edge found!!"</span>);</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> </div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CallDirSVFGEdge.html">CallDirSVFGEdge</a>* dirCall = SVFUtil::dyn_cast<CallDirSVFGEdge>(edge))</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>  rawstr << dirCall->getCallSiteId();</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1RetDirSVFGEdge.html">RetDirSVFGEdge</a>* dirRet = SVFUtil::dyn_cast<RetDirSVFGEdge>(edge))</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>  rawstr << dirRet->getCallSiteId();</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> </div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>  }</div><div class="ttc" id="classSVF_1_1CallDirSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1CallDirSVFGEdge.html">SVF::CallDirSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00211">VFGEdge.h:211</a></div></div>
|
|
306
306
|
<div class="ttc" id="classSVF_1_1VFGEdge_html"><div class="ttname"><a href="classSVF_1_1VFGEdge.html">SVF::VFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00044">VFGEdge.h:44</a></div></div>
|
|
307
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
307
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
308
308
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
309
309
|
<div class="ttc" id="classSVF_1_1RetDirSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1RetDirSVFGEdge.html">SVF::RetDirSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00254">VFGEdge.h:254</a></div></div>
|
|
310
310
|
</div><!-- fragment -->
|
|
@@ -375,7 +375,7 @@ template<class EdgeIter > </div>
|
|
|
375
375
|
</div><div class="memdoc">
|
|
376
376
|
|
|
377
377
|
<p class="definition">Definition at line <a class="el" href="VFG_8cpp_source.html#l01224">1224</a> of file <a class="el" href="VFG_8cpp_source.html">VFG.cpp</a>.</p>
|
|
378
|
-
<div class="fragment"><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>  {</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> </div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1StmtVFGNode.html">StmtVFGNode</a>* stmtNode = SVFUtil::dyn_cast<StmtVFGNode>(node))</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>  {</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = stmtNode->getPAGEdge();</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>  <span class="keywordflow">if</span> (SVFUtil::isa<AddrStmt>(edge))</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>  {</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>  rawstr << <span class="stringliteral">"color=green"</span>;</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>  }</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<CopyStmt>(edge))</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>  {</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>  }</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<RetPE>(edge))</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>  {</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>  rawstr << <span class="stringliteral">"color=black,style=dotted"</span>;</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>  }</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<GepStmt>(edge))</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>  {</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>  rawstr << <span class="stringliteral">"color=purple"</span>;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>  }</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<StoreStmt>(edge))</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>  {</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>  rawstr << <span class="stringliteral">"color=blue"</span>;</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>  }</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<LoadStmt>(edge))</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>  {</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>  rawstr << <span class="stringliteral">"color=red"</span>;</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>  }</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>  {</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>  assert(0 && <span class="stringliteral">"No such kind edge!!"</span>);</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>  }</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>  rawstr << <span class="stringliteral">""</span>;</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>  }</div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<CmpVFGNode>(node))</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>  {</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>  }</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<BinaryOPVFGNode>(node))</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>  {</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>  }</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<UnaryOPVFGNode>(node))</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>  {</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>  }</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<PHIVFGNode>(node))</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>  {</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>  }</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<NullPtrVFGNode>(node))</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>  {</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>  }</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FormalParmVFGNode>(node))</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>  {</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>  }</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<ActualParmVFGNode>(node))</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>  {</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>  }</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<ActualRetVFGNode>(node))</div><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>  {</div><div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>  }</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<FormalRetVFGNode>(node))</div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>  {</div><div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>  }</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<MRSVFGNode>(node))</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>  {</div><div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>  rawstr << <span class="stringliteral">"color=orange,penwidth=2"</span>;</div><div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>  }</div><div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>  assert(<span class="keyword">false</span> && <span class="stringliteral">"no such kind of node!!"</span>);</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> </div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>  rawstr << <span class="stringliteral">""</span>;</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> </div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>  }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
|
|
378
|
+
<div class="fragment"><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>  {</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> </div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1StmtVFGNode.html">StmtVFGNode</a>* stmtNode = SVFUtil::dyn_cast<StmtVFGNode>(node))</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>  {</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = stmtNode->getPAGEdge();</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>  <span class="keywordflow">if</span> (SVFUtil::isa<AddrStmt>(edge))</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>  {</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>  rawstr << <span class="stringliteral">"color=green"</span>;</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>  }</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<CopyStmt>(edge))</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>  {</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>  }</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<RetPE>(edge))</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>  {</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>  rawstr << <span class="stringliteral">"color=black,style=dotted"</span>;</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>  }</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<GepStmt>(edge))</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>  {</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>  rawstr << <span class="stringliteral">"color=purple"</span>;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>  }</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<StoreStmt>(edge))</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>  {</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>  rawstr << <span class="stringliteral">"color=blue"</span>;</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>  }</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<LoadStmt>(edge))</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>  {</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>  rawstr << <span class="stringliteral">"color=red"</span>;</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>  }</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>  {</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>  assert(0 && <span class="stringliteral">"No such kind edge!!"</span>);</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>  }</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>  rawstr << <span class="stringliteral">""</span>;</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>  }</div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<CmpVFGNode>(node))</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>  {</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>  }</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<BinaryOPVFGNode>(node))</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>  {</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>  }</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<UnaryOPVFGNode>(node))</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>  {</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>  }</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<PHIVFGNode>(node))</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>  {</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>  rawstr << <span class="stringliteral">"color=black"</span>;</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>  }</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<NullPtrVFGNode>(node))</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>  {</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>  rawstr << <span class="stringliteral">"color=grey"</span>;</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>  }</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<FormalParmVFGNode>(node))</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>  {</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>  }</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa<ActualParmVFGNode>(node))</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>  {</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>  }</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<ActualRetVFGNode>(node))</div><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>  {</div><div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>  }</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<FormalRetVFGNode>(node))</div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>  {</div><div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>  rawstr << <span class="stringliteral">"color=yellow,penwidth=2"</span>;</div><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>  }</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa<MRSVFGNode>(node))</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>  {</div><div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>  rawstr << <span class="stringliteral">"color=orange,penwidth=2"</span>;</div><div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>  }</div><div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>  assert(<span class="keyword">false</span> && <span class="stringliteral">"no such kind of node!!"</span>);</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> </div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>  rawstr << <span class="stringliteral">""</span>;</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> </div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>  }</div><div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
379
379
|
<div class="ttc" id="classSVF_1_1StmtVFGNode_html"><div class="ttname"><a href="classSVF_1_1StmtVFGNode.html">SVF::StmtVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00116">VFGNode.h:116</a></div></div>
|
|
380
380
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
381
381
|
<div class="ttc" id="classSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00047">SVFStatements.h:47</a></div></div>
|
|
@@ -462,7 +462,7 @@ template<class EdgeIter > </div>
|
|
|
462
462
|
<div class="ttc" id="classSVF_1_1PHIVFGNode_html"><div class="ttname"><a href="classSVF_1_1PHIVFGNode.html">SVF::PHIVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00635">VFGNode.h:635</a></div></div>
|
|
463
463
|
<div class="ttc" id="classSVF_1_1UnaryOPVFGNode_html"><div class="ttname"><a href="classSVF_1_1UnaryOPVFGNode.html">SVF::UnaryOPVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00465">VFGNode.h:465</a></div></div>
|
|
464
464
|
<div class="ttc" id="classSVF_1_1CmpVFGNode_html"><div class="ttname"><a href="classSVF_1_1CmpVFGNode.html">SVF::CmpVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00324">VFGNode.h:324</a></div></div>
|
|
465
|
-
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#
|
|
465
|
+
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
|
|
466
466
|
<div class="ttc" id="classSVF_1_1ActualRetVFGNode_html"><div class="ttname"><a href="classSVF_1_1ActualRetVFGNode.html">SVF::ActualRetVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00967">VFGNode.h:967</a></div></div>
|
|
467
467
|
<div class="ttc" id="classSVF_1_1StmtVFGNode_html"><div class="ttname"><a href="classSVF_1_1StmtVFGNode.html">SVF::StmtVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00116">VFGNode.h:116</a></div></div>
|
|
468
468
|
<div class="ttc" id="classSVF_1_1FormalParmVFGNode_html"><div class="ttname"><a href="classSVF_1_1FormalParmVFGNode.html">SVF::FormalParmVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00898">VFGNode.h:898</a></div></div>
|