svf-tools 1.0.619 → 1.0.621
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/Andersen_8h_source.html +4 -3
- package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +9 -4
- package/SVF-doxygen/html/html/CFLAlias_8h.html +4 -0
- package/SVF-doxygen/html/html/CFLAlias_8h_source.html +19 -10
- package/SVF-doxygen/html/html/CFLBase_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/CFLBase_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CFLDataBuilder_8h.html +96 -0
- package/SVF-doxygen/html/html/CFLDataBuilder_8h_source.html +99 -0
- package/SVF-doxygen/html/html/CFLData_8h.html +106 -0
- package/SVF-doxygen/html/html/CFLData_8h_source.html +136 -0
- package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CFLSolver_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/CFLSolver_8h.html +4 -0
- package/SVF-doxygen/html/html/CFLSolver_8h_source.html +22 -16
- package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CommandLine_8h.html +129 -0
- package/SVF-doxygen/html/html/CommandLine_8h_source.html +132 -0
- package/SVF-doxygen/html/html/ConsGNode_8h_source.html +5 -5
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/DCHG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +20 -19
- package/SVF-doxygen/html/html/DDAPass_8h_source.html +9 -9
- package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/GraphWriter_8cpp_source.html +2 -1
- package/SVF-doxygen/html/html/GraphWriter_8h_source.html +2 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +21 -20
- package/SVF-doxygen/html/html/LLVMModule_8h_source.html +17 -17
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +6 -6
- package/SVF-doxygen/html/html/Options_8cpp.html +1 -0
- package/SVF-doxygen/html/html/Options_8cpp_source.html +124 -119
- package/SVF-doxygen/html/html/Options_8h.html +1 -1
- package/SVF-doxygen/html/html/Options_8h_source.html +125 -120
- package/SVF-doxygen/html/html/PCG_8cpp.html +2 -1
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +13 -12
- package/SVF-doxygen/html/html/PCG_8h_source.html +12 -12
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +13 -13
- package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFIR2ItvExeState_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +4 -3
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +5 -4
- package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFType_8h.html +2 -2
- package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +10 -9
- package/SVF-doxygen/html/html/WPAPass_8h_source.html +4 -4
- package/SVF-doxygen/html/html/Z3Expr_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/annotated.html +363 -353
- package/SVF-doxygen/html/html/cfl_8cpp.html +3 -85
- package/SVF-doxygen/html/html/cfl_8cpp_source.html +3 -5
- package/SVF-doxygen/html/html/classOption-members.html +99 -0
- package/SVF-doxygen/html/html/classOption.html +567 -0
- package/SVF-doxygen/html/html/classOption.png +0 -0
- package/SVF-doxygen/html/html/classOptionBase-members.html +95 -0
- package/SVF-doxygen/html/html/classOptionBase.html +823 -0
- package/SVF-doxygen/html/html/classOptionBase.png +0 -0
- package/SVF-doxygen/html/html/classOptionMap-members.html +97 -0
- package/SVF-doxygen/html/html/classOptionMap.html +428 -0
- package/SVF-doxygen/html/html/classOptionMap.png +0 -0
- package/SVF-doxygen/html/html/classOptionMultiple-members.html +97 -0
- package/SVF-doxygen/html/html/classOptionMultiple.html +460 -0
- package/SVF-doxygen/html/html/classOptionMultiple.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +16 -15
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +7 -6
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +33 -30
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLBase.html +9 -8
- package/SVF-doxygen/html/html/classSVF_1_1CFLBase.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLData-members.html +110 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLData.html +1126 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLDataBuilder-members.html +88 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLDataBuilder.html +380 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraphBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CFLSolver.html +48 -39
- package/SVF-doxygen/html/html/classSVF_1_1CFLSolver.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +72 -72
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +36 -35
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +22 -8
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1GraphWriter.html +3 -2
- package/SVF-doxygen/html/html/classSVF_1_1HybridData-members.html +89 -0
- package/SVF-doxygen/html/html/classSVF_1_1HybridData.html +449 -0
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IntervalExeState.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +73 -72
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +121 -120
- package/SVF-doxygen/html/html/classSVF_1_1Options.html +641 -615
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +28 -28
- package/SVF-doxygen/html/html/classSVF_1_1POCRAlias-members.html +281 -0
- package/SVF-doxygen/html/html/classSVF_1_1POCRAlias.html +828 -0
- package/SVF-doxygen/html/html/classSVF_1_1POCRAlias.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1POCRSolver-members.html +98 -0
- package/SVF-doxygen/html/html/classSVF_1_1POCRSolver.html +245 -0
- package/SVF-doxygen/html/html/classSVF_1_1POCRSolver.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +20 -19
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +9 -8
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR2ItvExeState.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +18 -18
- package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1SVFType.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +27 -26
- package/SVF-doxygen/html/html/classSVF_1_1Z3Expr.html +6 -6
- package/SVF-doxygen/html/html/classes.html +110 -108
- package/SVF-doxygen/html/html/dda_8cpp.html +51 -248
- package/SVF-doxygen/html/html/dda_8cpp_source.html +9 -10
- package/SVF-doxygen/html/html/dir_95e22971b5dbae2382075a3453e365b4.html +2 -0
- package/SVF-doxygen/html/html/dir_ae8aa099e368efaa962140c6624142bc.html +4 -0
- package/SVF-doxygen/html/html/files.html +27 -24
- package/SVF-doxygen/html/html/functions.html +7 -1
- package/SVF-doxygen/html/html/functions_0x7e.html +18 -0
- package/SVF-doxygen/html/html/functions_a.html +45 -21
- package/SVF-doxygen/html/html/functions_b.html +15 -7
- package/SVF-doxygen/html/html/functions_c.html +72 -49
- package/SVF-doxygen/html/html/functions_d.html +25 -16
- package/SVF-doxygen/html/html/functions_e.html +11 -4
- package/SVF-doxygen/html/html/functions_f.html +19 -16
- package/SVF-doxygen/html/html/functions_func.html +35 -11
- package/SVF-doxygen/html/html/functions_func_0x7e.html +18 -0
- package/SVF-doxygen/html/html/functions_func_b.html +11 -3
- package/SVF-doxygen/html/html/functions_func_c.html +55 -34
- package/SVF-doxygen/html/html/functions_func_e.html +5 -1
- package/SVF-doxygen/html/html/functions_func_f.html +4 -1
- package/SVF-doxygen/html/html/functions_func_g.html +26 -7
- package/SVF-doxygen/html/html/functions_func_h.html +10 -3
- package/SVF-doxygen/html/html/functions_func_i.html +25 -10
- package/SVF-doxygen/html/html/functions_func_m.html +3 -2
- package/SVF-doxygen/html/html/functions_func_n.html +4 -1
- package/SVF-doxygen/html/html/functions_func_o.html +23 -6
- package/SVF-doxygen/html/html/functions_func_p.html +15 -3
- package/SVF-doxygen/html/html/functions_func_s.html +20 -19
- package/SVF-doxygen/html/html/functions_func_t.html +3 -0
- package/SVF-doxygen/html/html/functions_func_u.html +3 -0
- package/SVF-doxygen/html/html/functions_g.html +28 -9
- package/SVF-doxygen/html/html/functions_h.html +13 -6
- package/SVF-doxygen/html/html/functions_i.html +44 -20
- package/SVF-doxygen/html/html/functions_k.html +1 -1
- package/SVF-doxygen/html/html/functions_l.html +4 -4
- package/SVF-doxygen/html/html/functions_m.html +14 -13
- package/SVF-doxygen/html/html/functions_n.html +9 -5
- package/SVF-doxygen/html/html/functions_o.html +48 -25
- package/SVF-doxygen/html/html/functions_p.html +65 -34
- package/SVF-doxygen/html/html/functions_r.html +7 -9
- package/SVF-doxygen/html/html/functions_s.html +34 -32
- package/SVF-doxygen/html/html/functions_t.html +17 -8
- package/SVF-doxygen/html/html/functions_type_c.html +2 -1
- package/SVF-doxygen/html/html/functions_type_d.html +3 -0
- package/SVF-doxygen/html/html/functions_type_i.html +2 -1
- package/SVF-doxygen/html/html/functions_type_o.html +7 -0
- package/SVF-doxygen/html/html/functions_type_p.html +6 -0
- package/SVF-doxygen/html/html/functions_type_t.html +3 -0
- package/SVF-doxygen/html/html/functions_u.html +6 -3
- package/SVF-doxygen/html/html/functions_v.html +7 -5
- package/SVF-doxygen/html/html/functions_vars.html +7 -1
- package/SVF-doxygen/html/html/functions_vars_a.html +7 -7
- package/SVF-doxygen/html/html/functions_vars_b.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_c.html +15 -12
- package/SVF-doxygen/html/html/functions_vars_d.html +21 -15
- package/SVF-doxygen/html/html/functions_vars_e.html +5 -2
- package/SVF-doxygen/html/html/functions_vars_f.html +6 -6
- package/SVF-doxygen/html/html/functions_vars_g.html +2 -2
- package/SVF-doxygen/html/html/functions_vars_h.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_i.html +14 -6
- package/SVF-doxygen/html/html/functions_vars_k.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_l.html +4 -4
- package/SVF-doxygen/html/html/functions_vars_m.html +11 -11
- package/SVF-doxygen/html/html/functions_vars_n.html +3 -2
- package/SVF-doxygen/html/html/functions_vars_o.html +5 -2
- package/SVF-doxygen/html/html/functions_vars_p.html +34 -21
- package/SVF-doxygen/html/html/functions_vars_r.html +5 -5
- package/SVF-doxygen/html/html/functions_vars_s.html +13 -10
- package/SVF-doxygen/html/html/functions_vars_t.html +7 -4
- package/SVF-doxygen/html/html/functions_vars_u.html +3 -3
- package/SVF-doxygen/html/html/functions_vars_v.html +6 -4
- package/SVF-doxygen/html/html/functions_vars_w.html +3 -3
- package/SVF-doxygen/html/html/functions_w.html +11 -7
- package/SVF-doxygen/html/html/globals_d.html +4 -4
- package/SVF-doxygen/html/html/globals_e.html +6 -6
- package/SVF-doxygen/html/html/globals_f.html +2 -2
- package/SVF-doxygen/html/html/globals_func.html +6 -58
- package/SVF-doxygen/html/html/globals_i.html +4 -12
- package/SVF-doxygen/html/html/globals_l.html +2 -2
- package/SVF-doxygen/html/html/globals_r.html +4 -4
- package/SVF-doxygen/html/html/globals_s.html +0 -4
- package/SVF-doxygen/html/html/globals_type.html +3 -0
- package/SVF-doxygen/html/html/globals_u.html +3 -0
- package/SVF-doxygen/html/html/globals_vars.html +43 -12
- package/SVF-doxygen/html/html/hierarchy.html +517 -496
- package/SVF-doxygen/html/html/include_2MTA_2MTAResultValidator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/menudata.js +1 -2
- package/SVF-doxygen/html/html/mta_8cpp.html +4 -47
- package/SVF-doxygen/html/html/mta_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/namespaceSVF.html +29 -0
- package/SVF-doxygen/html/html/namespaceSVF_1_1DOT.html +3 -2
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_l.html +3 -0
- package/SVF-doxygen/html/html/namespacemembers_type_l.html +3 -0
- package/SVF-doxygen/html/html/saber_8cpp.html +38 -136
- package/SVF-doxygen/html/html/saber_8cpp_source.html +8 -7
- package/SVF-doxygen/html/html/search/all_0.js +2 -1
- package/SVF-doxygen/html/html/search/all_1.js +15 -8
- package/SVF-doxygen/html/html/search/all_10.js +33 -25
- package/SVF-doxygen/html/html/search/all_11.js +9 -9
- package/SVF-doxygen/html/html/search/all_12.js +22 -22
- package/SVF-doxygen/html/html/search/all_13.js +14 -11
- package/SVF-doxygen/html/html/search/all_14.js +5 -4
- package/SVF-doxygen/html/html/search/all_15.js +5 -5
- package/SVF-doxygen/html/html/search/all_16.js +4 -4
- package/SVF-doxygen/html/html/search/all_19.js +6 -0
- package/SVF-doxygen/html/html/search/all_2.js +5 -3
- package/SVF-doxygen/html/html/search/all_3.js +25 -18
- package/SVF-doxygen/html/html/search/all_4.js +20 -18
- package/SVF-doxygen/html/html/search/all_5.js +8 -6
- package/SVF-doxygen/html/html/search/all_6.js +9 -8
- package/SVF-doxygen/html/html/search/all_7.js +9 -3
- package/SVF-doxygen/html/html/search/all_8.js +5 -3
- package/SVF-doxygen/html/html/search/all_9.js +16 -11
- package/SVF-doxygen/html/html/search/all_b.js +2 -2
- package/SVF-doxygen/html/html/search/all_c.js +7 -6
- package/SVF-doxygen/html/html/search/all_d.js +13 -13
- package/SVF-doxygen/html/html/search/all_e.js +4 -3
- package/SVF-doxygen/html/html/search/all_f.js +24 -6
- package/SVF-doxygen/html/html/search/classes_10.js +1 -0
- package/SVF-doxygen/html/html/search/classes_2.js +2 -0
- package/SVF-doxygen/html/html/search/classes_7.js +2 -1
- package/SVF-doxygen/html/html/search/classes_c.js +15 -0
- package/SVF-doxygen/html/html/search/classes_d.js +2 -0
- package/SVF-doxygen/html/html/search/files_2.js +3 -0
- package/SVF-doxygen/html/html/search/functions_0.js +8 -1
- package/SVF-doxygen/html/html/search/functions_1.js +4 -2
- package/SVF-doxygen/html/html/search/functions_10.js +0 -2
- package/SVF-doxygen/html/html/search/functions_11.js +2 -3
- package/SVF-doxygen/html/html/search/functions_12.js +1 -0
- package/SVF-doxygen/html/html/search/functions_13.js +1 -0
- package/SVF-doxygen/html/html/search/functions_17.js +6 -0
- package/SVF-doxygen/html/html/search/functions_2.js +5 -1
- package/SVF-doxygen/html/html/search/functions_3.js +0 -2
- package/SVF-doxygen/html/html/search/functions_4.js +2 -4
- package/SVF-doxygen/html/html/search/functions_5.js +2 -1
- package/SVF-doxygen/html/html/search/functions_6.js +7 -1
- package/SVF-doxygen/html/html/search/functions_7.js +4 -2
- package/SVF-doxygen/html/html/search/functions_8.js +6 -3
- package/SVF-doxygen/html/html/search/functions_b.js +1 -1
- package/SVF-doxygen/html/html/search/functions_c.js +1 -1
- package/SVF-doxygen/html/html/search/functions_d.js +1 -0
- package/SVF-doxygen/html/html/search/functions_e.js +7 -3
- package/SVF-doxygen/html/html/search/functions_f.js +3 -0
- package/SVF-doxygen/html/html/search/typedefs_11.js +2 -1
- package/SVF-doxygen/html/html/search/typedefs_12.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_2.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_3.js +1 -0
- package/SVF-doxygen/html/html/search/typedefs_7.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_a.js +1 -0
- package/SVF-doxygen/html/html/search/typedefs_d.js +2 -0
- package/SVF-doxygen/html/html/search/typedefs_e.js +2 -0
- package/SVF-doxygen/html/html/search/variables_0.js +2 -1
- package/SVF-doxygen/html/html/search/variables_1.js +7 -7
- package/SVF-doxygen/html/html/search/variables_10.js +25 -21
- package/SVF-doxygen/html/html/search/variables_11.js +7 -5
- package/SVF-doxygen/html/html/search/variables_12.js +11 -10
- package/SVF-doxygen/html/html/search/variables_13.js +9 -8
- package/SVF-doxygen/html/html/search/variables_14.js +3 -3
- package/SVF-doxygen/html/html/search/variables_15.js +4 -4
- package/SVF-doxygen/html/html/search/variables_16.js +3 -3
- package/SVF-doxygen/html/html/search/variables_2.js +1 -1
- package/SVF-doxygen/html/html/search/variables_3.js +13 -12
- package/SVF-doxygen/html/html/search/variables_4.js +19 -15
- package/SVF-doxygen/html/html/search/variables_5.js +6 -2
- package/SVF-doxygen/html/html/search/variables_6.js +7 -6
- package/SVF-doxygen/html/html/search/variables_7.js +2 -2
- package/SVF-doxygen/html/html/search/variables_8.js +1 -1
- package/SVF-doxygen/html/html/search/variables_9.js +9 -7
- package/SVF-doxygen/html/html/search/variables_b.js +1 -1
- package/SVF-doxygen/html/html/search/variables_c.js +5 -4
- package/SVF-doxygen/html/html/search/variables_d.js +11 -11
- package/SVF-doxygen/html/html/search/variables_e.js +2 -2
- package/SVF-doxygen/html/html/search/variables_f.js +3 -2
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +4 -4
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/structSVF_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1Symbol.html +4 -4
- package/SVF-doxygen/html/html/structSVF_1_1HybridData_1_1TreeNode-members.html +86 -0
- package/SVF-doxygen/html/html/structSVF_1_1HybridData_1_1TreeNode.html +255 -0
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +12 -55
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +8 -8
- package/SVF-doxygen/html/html/tools_2MTA_2MTAResultValidator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/wpa_8cpp.html +4 -47
- package/SVF-doxygen/html/html/wpa_8cpp_source.html +4 -4
- package/include/CFL/CFLAlias.h +34 -0
- package/include/CFL/CFLData.h +316 -0
- package/include/CFL/CFLDataBuilder.h +91 -0
- package/include/CFL/CFLSolver.h +21 -0
- package/include/Util/CommandLine.h +527 -0
- package/include/Util/Options.h +125 -124
- package/include/WPA/Andersen.h +5 -5
- package/lib/AbstractExecution/SVFIR2ItvExeState.cpp +2 -2
- package/lib/CFL/CFLAlias.cpp +40 -4
- package/lib/CFL/CFLBase.cpp +4 -4
- package/lib/CFL/CFLGraphBuilder.cpp +2 -2
- package/lib/CFL/CFLVF.cpp +5 -5
- package/lib/DDA/ContextDDA.cpp +1 -1
- package/lib/DDA/DDAPass.cpp +14 -13
- package/lib/DDA/FlowDDA.cpp +1 -1
- package/lib/Graphs/ConsG.cpp +10 -10
- package/lib/Graphs/ICFG.cpp +1 -1
- package/lib/Graphs/IRGraph.cpp +2 -2
- package/lib/Graphs/SVFG.cpp +5 -5
- package/lib/Graphs/SVFGOPT.cpp +5 -5
- package/lib/Graphs/VFG.cpp +1 -1
- package/lib/MSSA/MemRegion.cpp +2 -2
- package/lib/MSSA/MemSSA.cpp +4 -4
- package/lib/MSSA/SVFGBuilder.cpp +4 -4
- package/lib/MTA/FSMPTA.cpp +13 -13
- package/lib/MTA/MHP.cpp +1 -1
- package/lib/MTA/MTA.cpp +2 -2
- package/lib/MTA/MTAStat.cpp +1 -1
- package/lib/MTA/PCG.cpp +8 -2
- package/lib/MTA/TCT.cpp +2 -2
- package/lib/MemoryModel/PointerAnalysis.cpp +13 -13
- package/lib/MemoryModel/PointerAnalysisImpl.cpp +13 -13
- package/lib/MemoryModel/PointsTo.cpp +1 -1
- package/lib/SABER/DoubleFreeChecker.cpp +1 -1
- package/lib/SABER/LeakChecker.cpp +1 -1
- package/lib/SABER/SaberCondAllocator.cpp +1 -1
- package/lib/SABER/SrcSnkDDA.cpp +5 -5
- package/lib/SVF-LLVM/CHGBuilder.cpp +1 -1
- package/lib/SVF-LLVM/DCHG.cpp +1 -1
- package/lib/SVF-LLVM/LLVMLoopAnalysis.cpp +2 -2
- package/lib/SVF-LLVM/LLVMModule.cpp +10 -4
- package/lib/SVF-LLVM/SVFIRBuilder.cpp +8 -8
- package/lib/SVF-LLVM/SymbolTableBuilder.cpp +5 -5
- package/lib/SVFIR/SVFIR.cpp +4 -4
- package/lib/SVFIR/SVFStatements.cpp +16 -16
- package/lib/SVFIR/SVFVariables.cpp +5 -5
- package/lib/SVFIR/SymbolTableInfo.cpp +6 -6
- package/lib/Util/NodeIDAllocator.cpp +9 -9
- package/lib/Util/Options.cpp +431 -412
- package/lib/Util/SVFStat.cpp +5 -5
- package/lib/Util/SVFUtil.cpp +1 -1
- package/lib/Util/Z3Expr.cpp +2 -2
- package/lib/WPA/Andersen.cpp +13 -13
- package/lib/WPA/AndersenSCD.cpp +3 -3
- package/lib/WPA/FlowSensitive.cpp +8 -8
- package/lib/WPA/TypeAnalysis.cpp +1 -1
- package/lib/WPA/VersionedFlowSensitive.cpp +4 -4
- package/lib/WPA/WPAPass.cpp +10 -9
- package/package.json +1 -1
- package/tools/CFL/cfl.cpp +8 -14
- package/tools/DDA/dda.cpp +39 -29
- package/tools/Example/svf-ex.cpp +5 -8
- package/tools/MTA/LockResultValidator.cpp +2 -2
- package/tools/MTA/MTAAnnotator.cpp +5 -5
- package/tools/MTA/MTAResultValidator.cpp +8 -8
- package/tools/MTA/mta.cpp +5 -8
- package/tools/SABER/saber.cpp +23 -17
- package/tools/WPA/wpa.cpp +6 -9
|
@@ -100,6 +100,7 @@ Inheritance diagram for SVF::PointerAnalysis:</div>
|
|
|
100
100
|
<area href="classSVF_1_1VersionedFlowSensitive.html" alt="SVF::VersionedFlowSensitive" shape="rect" coords="1462,168,1677,192"/>
|
|
101
101
|
<area href="classSVF_1_1AndersenSCD.html" alt="SVF::AndersenSCD" shape="rect" coords="0,224,215,248"/>
|
|
102
102
|
<area href="classSVF_1_1AndersenWaveDiff.html" alt="SVF::AndersenWaveDiff" shape="rect" coords="225,224,440,248"/>
|
|
103
|
+
<area href="classSVF_1_1POCRAlias.html" alt="SVF::POCRAlias" shape="rect" coords="787,224,1002,248"/>
|
|
103
104
|
<area href="classSVF_1_1AndersenSFR.html" alt="SVF::AndersenSFR" shape="rect" coords="0,280,215,304"/>
|
|
104
105
|
</map>
|
|
105
106
|
</div></div>
|
|
@@ -692,11 +693,10 @@ Private Member Functions</h2></td></tr>
|
|
|
692
693
|
<p>Constructor </p>
|
|
693
694
|
|
|
694
695
|
<p class="definition">Definition at line <a class="el" href="PointerAnalysis_8cpp_source.html#l00069">69</a> of file <a class="el" href="PointerAnalysis_8cpp_source.html">PointerAnalysis.cpp</a>.</p>
|
|
695
|
-
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  :</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a>(ty),<a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">icfg</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a> = <a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">OnTheFlyIterBudgetForStat</a> = <a class="code" href="classSVF_1_1Options.html#
|
|
696
|
-
<div class="ttc" id="cJSON_8cpp_html_a009ef1d888ab6dbe77e6b42b0b39f1ae"><div class="ttname"><a href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a></div><div class="ttdeci">cJSON * p</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02559">cJSON.cpp:2559</a></div></div>
|
|
696
|
+
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  :</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a>(ty),<a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">icfg</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a> = <a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">OnTheFlyIterBudgetForStat</a> = <a class="code" href="classSVF_1_1Options.html#ad2f3ffd1b8d579ebe4c19a015cd599e2">Options::StatBudget</a>();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a> = <a class="code" href="classSVF_1_1Options.html#ac9d18f2d6853f45548f4f85fa2f661c4">Options::PStat</a>();</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">ptaImplTy</a> = <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">BaseImpl</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">alias_validation</a> = (alias_check && <a class="code" href="classSVF_1_1Options.html#a5f07ff361307017b35fb6b9a97919a73">Options::EnableAliasCheck</a>());</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> }</div><div class="ttc" id="cJSON_8cpp_html_a009ef1d888ab6dbe77e6b42b0b39f1ae"><div class="ttname"><a href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a></div><div class="ttdeci">cJSON * p</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02559">cJSON.cpp:2559</a></div></div>
|
|
697
697
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a962cc91e4d68b25ce201072c384d8fc2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">SVF::PointerAnalysis::icfg</a></div><div class="ttdeci">ICFG * icfg</div><div class="ttdoc">Interprocedural control-flow graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00156">PointerAnalysis.h:156</a></div></div>
|
|
698
698
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">SVF::PointerAnalysis::BaseImpl</a></div><div class="ttdoc">Represents PointerAnalaysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00096">PointerAnalysis.h:96</a></div></div>
|
|
699
|
-
<div class="ttc" id="
|
|
699
|
+
<div class="ttc" id="classSVF_1_1Options_html_ac9d18f2d6853f45548f4f85fa2f661c4"><div class="ttname"><a href="classSVF_1_1Options.html#ac9d18f2d6853f45548f4f85fa2f661c4">SVF::Options::PStat</a></div><div class="ttdeci">static const Option< bool > PStat</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00132">Options.h:132</a></div></div>
|
|
700
700
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a219baed92b811d5519b056ad393fceed"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">SVF::PointerAnalysis::typeSystem</a></div><div class="ttdeci">TypeSystem * typeSystem</div><div class="ttdoc">TypeSystem. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00160">PointerAnalysis.h:160</a></div></div>
|
|
701
701
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad47b39252e02c68dfb466d4f42dc7ebe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">SVF::PointerAnalysis::ptaCallGraph</a></div><div class="ttdeci">PTACallGraph * ptaCallGraph</div><div class="ttdoc">Call graph used for pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00152">PointerAnalysis.h:152</a></div></div>
|
|
702
702
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7e8b3f6843e5ea75fd189162d2cd60a5"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">SVF::PointerAnalysis::svfMod</a></div><div class="ttdeci">SVFModule * svfMod</div><div class="ttdoc">Module. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00144">PointerAnalysis.h:144</a></div></div>
|
|
@@ -704,12 +704,13 @@ Private Member Functions</h2></td></tr>
|
|
|
704
704
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0c0fce2539bb9ec6c824f6584a0f6b33"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">SVF::PointerAnalysis::chgraph</a></div><div class="ttdeci">CommonCHGraph * chgraph</div><div class="ttdoc">CHGraph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00158">PointerAnalysis.h:158</a></div></div>
|
|
705
705
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ade83738ac754d5ffc2a3b497b600cad4"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">SVF::PointerAnalysis::ptaTy</a></div><div class="ttdeci">PTATY ptaTy</div><div class="ttdoc">Pointer analysis Type. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00146">PointerAnalysis.h:146</a></div></div>
|
|
706
706
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae3b651799345d9d92b6d736dafb03f63"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">SVF::PointerAnalysis::callGraphSCC</a></div><div class="ttdeci">CallGraphSCC * callGraphSCC</div><div class="ttdoc">SCC for CallGraph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00154">PointerAnalysis.h:154</a></div></div>
|
|
707
|
-
<div class="ttc" id="classSVF_1_1Options_html_a4da18281b973b9ffb5068dd53060524c"><div class="ttname"><a href="classSVF_1_1Options.html#a4da18281b973b9ffb5068dd53060524c">SVF::Options::EnableAliasCheck</a></div><div class="ttdeci">static const llvm::cl::opt< bool > EnableAliasCheck</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00141">Options.h:141</a></div></div>
|
|
708
707
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a5ec3d9bf1fc81346c9df29638daedc0f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">SVF::PointerAnalysis::stat</a></div><div class="ttdeci">PTAStat * stat</div><div class="ttdoc">Statistics. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00150">PointerAnalysis.h:150</a></div></div>
|
|
709
708
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_aac1a133d478bd14c74309d9c4eaf0c8e"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">SVF::PointerAnalysis::alias_validation</a></div><div class="ttdeci">bool alias_validation</div><div class="ttdoc">Flag for validating points-to/alias results. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00136">PointerAnalysis.h:136</a></div></div>
|
|
710
709
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a5d3c3094e263bf16a4f312a118c1bd36"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">SVF::PointerAnalysis::ptaImplTy</a></div><div class="ttdeci">PTAImplTy ptaImplTy</div><div class="ttdoc">PTA implementation type. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00148">PointerAnalysis.h:148</a></div></div>
|
|
710
|
+
<div class="ttc" id="classSVF_1_1Options_html_a5f07ff361307017b35fb6b9a97919a73"><div class="ttname"><a href="classSVF_1_1Options.html#a5f07ff361307017b35fb6b9a97919a73">SVF::Options::EnableAliasCheck</a></div><div class="ttdeci">static const Option< bool > EnableAliasCheck</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00141">Options.h:141</a></div></div>
|
|
711
711
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_adc7f5c71efb9cd1bec4f5ca9127654c3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">SVF::PointerAnalysis::pag</a></div><div class="ttdeci">static SVFIR * pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00142">PointerAnalysis.h:142</a></div></div>
|
|
712
712
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a3550ea3f087ec557a6fe076bc443b05d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">SVF::PointerAnalysis::print_stat</a></div><div class="ttdeci">bool print_stat</div><div class="ttdoc">User input flags. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00134">PointerAnalysis.h:134</a></div></div>
|
|
713
|
+
<div class="ttc" id="classSVF_1_1Options_html_ad2f3ffd1b8d579ebe4c19a015cd599e2"><div class="ttname"><a href="classSVF_1_1Options.html#ad2f3ffd1b8d579ebe4c19a015cd599e2">SVF::Options::StatBudget</a></div><div class="ttdeci">static const Option< u32_t > StatBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00133">Options.h:133</a></div></div>
|
|
713
714
|
</div><!-- fragment -->
|
|
714
715
|
</div>
|
|
715
716
|
</div>
|
|
@@ -1327,22 +1328,22 @@ Private Member Functions</h2></td></tr>
|
|
|
1327
1328
|
<p>Reimplemented in <a class="el" href="classSVF_1_1CondPTAImpl.html#a9bdc3a50c695029a28371116ddc3ef8d">SVF::CondPTAImpl< Cond ></a>, <a class="el" href="classSVF_1_1CondPTAImpl.html#a9bdc3a50c695029a28371116ddc3ef8d">SVF::CondPTAImpl< ContextCond ></a>, <a class="el" href="classSVF_1_1Andersen.html#ad90c8cf193bd81870ce8dd88c9580e2c">SVF::Andersen</a>, <a class="el" href="classSVF_1_1BVDataPTAImpl.html#a638f58c3bf6efdb3787fafaa4e6f19ca">SVF::BVDataPTAImpl</a>, <a class="el" href="classSVF_1_1FlowSensitive.html#a911aa7dd8d696b96a85d85af852e1e58">SVF::FlowSensitive</a>, <a class="el" href="classSVF_1_1FlowDDA.html#a5abae08577ab24684653421dc712431a">SVF::FlowDDA</a>, <a class="el" href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d">SVF::CFLBase</a>, <a class="el" href="classSVF_1_1AndersenBase.html#a28a1c3571cdee5e05004b29ace364e67">SVF::AndersenBase</a>, <a class="el" href="classSVF_1_1ContextDDA.html#ae34cd06ee3b7d763c81ec418af76d244">SVF::ContextDDA</a>, <a class="el" href="classSVF_1_1TypeAnalysis.html#a8efef079c8b33e2215f92ac3629789e6">SVF::TypeAnalysis</a>, <a class="el" href="classSVF_1_1VersionedFlowSensitive.html#ad955fda89f4f749151a1bd14562b03f6">SVF::VersionedFlowSensitive</a>, <a class="el" href="classSVF_1_1CFLAlias.html#a1b7e49b3f42d625f1f25258044f8b885">SVF::CFLAlias</a>, and <a class="el" href="classSVF_1_1CFLVF.html#a6047084ea0cfe2827130facdd54e4806">SVF::CFLVF</a>.</p>
|
|
1328
1329
|
|
|
1329
1330
|
<p class="definition">Definition at line <a class="el" href="PointerAnalysis_8cpp_source.html#l00179">179</a> of file <a class="el" href="PointerAnalysis_8cpp_source.html">PointerAnalysis.cpp</a>.</p>
|
|
1330
|
-
<div class="fragment"><div class="line"><a name="l00180"></a><span class="lineno"> 180</span> {</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#ab83b827ea42d3a61aad20b1a1485d866">dumpStat</a>();</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#
|
|
1331
|
-
<div class="ttc" id="classSVF_1_1Options_html_a113ee30422ef08b6790eed9a83277b9c"><div class="ttname"><a href="classSVF_1_1Options.html#a113ee30422ef08b6790eed9a83277b9c">SVF::Options::PTSAllPrint</a></div><div class="ttdeci">static const llvm::cl::opt< bool > PTSAllPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00131">Options.h:131</a></div></div>
|
|
1332
|
-
<div class="ttc" id="classSVF_1_1Options_html_ace0fa364337374ce75a58a9e2f229e24"><div class="ttname"><a href="classSVF_1_1Options.html#ace0fa364337374ce75a58a9e2f229e24">SVF::Options::PTSPrint</a></div><div class="ttdeci">static const llvm::cl::opt< bool > PTSPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00130">Options.h:130</a></div></div>
|
|
1333
|
-
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a062f1f2d6d47694caa9ac64a9e68c7b3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">SVF::PointerAnalysis::printIndCSTargets</a></div><div class="ttdeci">void printIndCSTargets()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00351">PointerAnalysis.cpp:351</a></div></div>
|
|
1331
|
+
<div class="fragment"><div class="line"><a name="l00180"></a><span class="lineno"> 180</span> {</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#ab83b827ea42d3a61aad20b1a1485d866">dumpStat</a>();</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a428e892b31dcb783be36a35e878a0337">Options::PTSPrint</a>())</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a627bdc95485fd65e8846fcaa5e89559f">dumpTopLevelPtsTo</a>();</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <span class="comment">//dumpAllPts();</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="comment">//dumpCPts();</span></div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  }</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a83103f0d5f166e0bb062aa7d7b393ddd">Options::TypePrint</a>())</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a08399de593c073b6dd848a8d849dad27">dumpAllTypes</a>();</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#a737f3501a93f954790fe93d36c43fb00">Options::PTSAllPrint</a>())</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a861554c2fdeaa406131c2c920b4c7908">dumpAllPts</a>();</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#abb91435e1e06b07548c539e7f7761563">Options::FuncPointerPrint</a>())</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a>();</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-><a class="code" href="classSVF_1_1PTACallGraph.html#ac695d78f0a78e2e5f1fb4f93264e52b8">verifyCallGraph</a>();</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a0a998c2e1d701b2052985691babc4567">Options::CallGraphDotGraph</a>())</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-><a class="code" href="classSVF_1_1PTACallGraph.html#a841be22581a7896d8924564e7199f62b">dump</a>(<span class="stringliteral">"callgraph_final"</span>);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <span class="keywordflow">if</span>(!<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1IRGraph.html#a41423da58a07b344bc7ca8dd96d48f98">isBuiltFromFile</a>() && <a class="code" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">alias_validation</a>)</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a0454332c89e60729956bb7d69a1a24df">validateTests</a>();</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1Options.html#a742a42d855c5b96fb7c70a2d0ab64021">Options::UsePreCompFieldSensitive</a>())</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">resetObjFieldSensitive</a>();</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span> }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a062f1f2d6d47694caa9ac64a9e68c7b3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">SVF::PointerAnalysis::printIndCSTargets</a></div><div class="ttdeci">void printIndCSTargets()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00351">PointerAnalysis.cpp:351</a></div></div>
|
|
1334
1332
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ab83b827ea42d3a61aad20b1a1485d866"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ab83b827ea42d3a61aad20b1a1485d866">SVF::PointerAnalysis::dumpStat</a></div><div class="ttdeci">void dumpStat()</div><div class="ttdoc">Dump the statistics. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00166">PointerAnalysis.cpp:166</a></div></div>
|
|
1333
|
+
<div class="ttc" id="classSVF_1_1Options_html_a742a42d855c5b96fb7c70a2d0ab64021"><div class="ttname"><a href="classSVF_1_1Options.html#a742a42d855c5b96fb7c70a2d0ab64021">SVF::Options::UsePreCompFieldSensitive</a></div><div class="ttdeci">static const Option< bool > UsePreCompFieldSensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00140">Options.h:140</a></div></div>
|
|
1335
1334
|
<div class="ttc" id="classSVF_1_1IRGraph_html_a41423da58a07b344bc7ca8dd96d48f98"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a41423da58a07b344bc7ca8dd96d48f98">SVF::IRGraph::isBuiltFromFile</a></div><div class="ttdeci">bool isBuiltFromFile()</div><div class="ttdoc">Whether this SVFIR built from a txt file. </div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00110">IRGraph.h:110</a></div></div>
|
|
1336
1335
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_a841be22581a7896d8924564e7199f62b"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a841be22581a7896d8924564e7199f62b">SVF::PTACallGraph::dump</a></div><div class="ttdeci">void dump(const std::string &filename)</div><div class="ttdoc">Dump the graph. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8cpp_source.html#l00317">PTACallGraph.cpp:317</a></div></div>
|
|
1336
|
+
<div class="ttc" id="classSVF_1_1Options_html_abb91435e1e06b07548c539e7f7761563"><div class="ttname"><a href="classSVF_1_1Options.html#abb91435e1e06b07548c539e7f7761563">SVF::Options::FuncPointerPrint</a></div><div class="ttdeci">static const Option< bool > FuncPointerPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00129">Options.h:129</a></div></div>
|
|
1337
1337
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0454332c89e60729956bb7d69a1a24df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0454332c89e60729956bb7d69a1a24df">SVF::PointerAnalysis::validateTests</a></div><div class="ttdeci">virtual void validateTests()</div><div class="ttdoc">Alias check functions to verify correctness of pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00217">PointerAnalysis.cpp:217</a></div></div>
|
|
1338
1338
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00174">PointerAnalysis.h:174</a></div></div>
|
|
1339
|
+
<div class="ttc" id="classSVF_1_1Options_html_a0a998c2e1d701b2052985691babc4567"><div class="ttname"><a href="classSVF_1_1Options.html#a0a998c2e1d701b2052985691babc4567">SVF::Options::CallGraphDotGraph</a></div><div class="ttdeci">static const Option< bool > CallGraphDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00137">Options.h:137</a></div></div>
|
|
1339
1340
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a627bdc95485fd65e8846fcaa5e89559f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a627bdc95485fd65e8846fcaa5e89559f">SVF::PointerAnalysis::dumpTopLevelPtsTo</a></div><div class="ttdeci">virtual void dumpTopLevelPtsTo()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00257">PointerAnalysis.h:257</a></div></div>
|
|
1340
1341
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a861554c2fdeaa406131c2c920b4c7908"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a861554c2fdeaa406131c2c920b4c7908">SVF::PointerAnalysis::dumpAllPts</a></div><div class="ttdeci">virtual void dumpAllPts()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00258">PointerAnalysis.h:258</a></div></div>
|
|
1341
|
-
<div class="ttc" id="
|
|
1342
|
+
<div class="ttc" id="classSVF_1_1Options_html_a737f3501a93f954790fe93d36c43fb00"><div class="ttname"><a href="classSVF_1_1Options.html#a737f3501a93f954790fe93d36c43fb00">SVF::Options::PTSAllPrint</a></div><div class="ttdeci">static const Option< bool > PTSAllPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00131">Options.h:131</a></div></div>
|
|
1343
|
+
<div class="ttc" id="classSVF_1_1Options_html_a83103f0d5f166e0bb062aa7d7b393ddd"><div class="ttname"><a href="classSVF_1_1Options.html#a83103f0d5f166e0bb062aa7d7b393ddd">SVF::Options::TypePrint</a></div><div class="ttdeci">static const Option< bool > TypePrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00128">Options.h:128</a></div></div>
|
|
1342
1344
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_aac1a133d478bd14c74309d9c4eaf0c8e"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">SVF::PointerAnalysis::alias_validation</a></div><div class="ttdeci">bool alias_validation</div><div class="ttdoc">Flag for validating points-to/alias results. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00136">PointerAnalysis.h:136</a></div></div>
|
|
1343
|
-
<div class="ttc" id="classSVF_1_1Options_html_a14ceeb5d7de81a0946389159986e4955"><div class="ttname"><a href="classSVF_1_1Options.html#a14ceeb5d7de81a0946389159986e4955">SVF::Options::FuncPointerPrint</a></div><div class="ttdeci">static const llvm::cl::opt< bool > FuncPointerPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00129">Options.h:129</a></div></div>
|
|
1344
1345
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_adc7f5c71efb9cd1bec4f5ca9127654c3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">SVF::PointerAnalysis::pag</a></div><div class="ttdeci">static SVFIR * pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00142">PointerAnalysis.h:142</a></div></div>
|
|
1345
|
-
<div class="ttc" id="
|
|
1346
|
+
<div class="ttc" id="classSVF_1_1Options_html_a428e892b31dcb783be36a35e878a0337"><div class="ttname"><a href="classSVF_1_1Options.html#a428e892b31dcb783be36a35e878a0337">SVF::Options::PTSPrint</a></div><div class="ttdeci">static const Option< bool > PTSPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00130">Options.h:130</a></div></div>
|
|
1346
1347
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a73fb8e595473e0c7df1dd0de4968ad13"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">SVF::PointerAnalysis::resetObjFieldSensitive</a></div><div class="ttdeci">void resetObjFieldSensitive()</div><div class="ttdoc">Reset all object node as field-sensitive. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00153">PointerAnalysis.cpp:153</a></div></div>
|
|
1347
1348
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_ac695d78f0a78e2e5f1fb4f93264e52b8"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#ac695d78f0a78e2e5f1fb4f93264e52b8">SVF::PTACallGraph::verifyCallGraph</a></div><div class="ttdeci">void verifyCallGraph()</div><div class="ttdoc">Issue a warning if the function which has indirect call sites can not be reached from program entry...</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8cpp_source.html#l00266">PTACallGraph.cpp:266</a></div></div>
|
|
1348
1349
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a08399de593c073b6dd848a8d849dad27"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a08399de593c073b6dd848a8d849dad27">SVF::PointerAnalysis::dumpAllTypes</a></div><div class="ttdeci">void dumpAllTypes()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00235">PointerAnalysis.cpp:235</a></div></div>
|
|
@@ -2201,19 +2202,19 @@ Private Member Functions</h2></td></tr>
|
|
|
2201
2202
|
<p>Initialization of pointer analysis </p>
|
|
2202
2203
|
<p>initialise pta call graph for every pointer analysis instance </p>
|
|
2203
2204
|
|
|
2204
|
-
<p>Reimplemented in <a class="el" href="classSVF_1_1AndersenWaveDiff.html#a40514a439869d0c025afb4f6b6fb4071">SVF::AndersenWaveDiff</a>, <a class="el" href="classSVF_1_1Andersen.html#a20617a69c112ad423b1b5021e48a8548">SVF::Andersen</a>, <a class="el" href="classSVF_1_1AndersenSFR.html#a3b255068b3ea53041af94fd373a53bd4">SVF::AndersenSFR</a>, <a class="el" href="classSVF_1_1FlowSensitive.html#ad3566c57f8456e98542f5a0b765e3cc6">SVF::FlowSensitive</a>, <a class="el" href="classSVF_1_1FlowDDA.html#af1fcf058a9feefeda63f07d4189513a1">SVF::FlowDDA</a>, <a class="el" href="classSVF_1_1AndersenBase.html#a891816407a4c6346f56bc01a67b78aac">SVF::AndersenBase</a>, <a class="el" href="classSVF_1_1ContextDDA.html#adb9f21a86daeb2dd79537f3939c393cf">SVF::ContextDDA</a>, <a class="el" href="classSVF_1_1TypeAnalysis.html#a34177236a41f7a2b432243062f829985">SVF::TypeAnalysis</a>, <a class="el" href="classSVF_1_1VersionedFlowSensitive.html#a81d3528fd082018e4345f0b026bf3584">SVF::VersionedFlowSensitive</a>, <a class="el" href="classSVF_1_1CFLAlias.html#aef129edd61d7f15947c6539f8d0c36a0">SVF::CFLAlias</a>, and <a class="el" href="classSVF_1_1CFLVF.html#a852ed935576ca426287cf4afa6a585e3">SVF::CFLVF</a>.</p>
|
|
2205
|
+
<p>Reimplemented in <a class="el" href="classSVF_1_1AndersenWaveDiff.html#a40514a439869d0c025afb4f6b6fb4071">SVF::AndersenWaveDiff</a>, <a class="el" href="classSVF_1_1Andersen.html#a20617a69c112ad423b1b5021e48a8548">SVF::Andersen</a>, <a class="el" href="classSVF_1_1POCRAlias.html#aad3e90950c4393abddb52afd68cb9f89">SVF::POCRAlias</a>, <a class="el" href="classSVF_1_1AndersenSFR.html#a3b255068b3ea53041af94fd373a53bd4">SVF::AndersenSFR</a>, <a class="el" href="classSVF_1_1FlowSensitive.html#ad3566c57f8456e98542f5a0b765e3cc6">SVF::FlowSensitive</a>, <a class="el" href="classSVF_1_1FlowDDA.html#af1fcf058a9feefeda63f07d4189513a1">SVF::FlowDDA</a>, <a class="el" href="classSVF_1_1AndersenBase.html#a891816407a4c6346f56bc01a67b78aac">SVF::AndersenBase</a>, <a class="el" href="classSVF_1_1ContextDDA.html#adb9f21a86daeb2dd79537f3939c393cf">SVF::ContextDDA</a>, <a class="el" href="classSVF_1_1TypeAnalysis.html#a34177236a41f7a2b432243062f829985">SVF::TypeAnalysis</a>, <a class="el" href="classSVF_1_1VersionedFlowSensitive.html#a81d3528fd082018e4345f0b026bf3584">SVF::VersionedFlowSensitive</a>, <a class="el" href="classSVF_1_1CFLAlias.html#aef129edd61d7f15947c6539f8d0c36a0">SVF::CFLAlias</a>, and <a class="el" href="classSVF_1_1CFLVF.html#a852ed935576ca426287cf4afa6a585e3">SVF::CFLVF</a>.</p>
|
|
2205
2206
|
|
|
2206
2207
|
<p class="definition">Definition at line <a class="el" href="PointerAnalysis_8cpp_source.html#l00105">105</a> of file <a class="el" href="PointerAnalysis_8cpp_source.html">PointerAnalysis.cpp</a>.</p>
|
|
2207
|
-
<div class="fragment"><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  assert(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a> && <span class="stringliteral">"SVFIR has not been built!"</span>);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a> = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#ad6e18f520f6b559f2304002792f6b701">getModule</a>();</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a> = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#a7e8059ebd9bdeed8891fb231d148316d">getCHG</a>();</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#
|
|
2208
|
+
<div class="fragment"><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  assert(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a> && <span class="stringliteral">"SVFIR has not been built!"</span>);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a> = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#ad6e18f520f6b559f2304002792f6b701">getModule</a>();</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a> = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#a7e8059ebd9bdeed8891fb231d148316d">getCHG</a>();</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#a1daf36a755523519187c3a8e9a19b58d">Options::EnableThreadCallGraph</a>())</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <a class="code" href="classSVF_1_1ThreadCallGraph.html">ThreadCallGraph</a>* cg = <span class="keyword">new</span> <a class="code" href="classSVF_1_1ThreadCallGraph.html">ThreadCallGraph</a>();</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <a class="code" href="classSVF_1_1ThreadCallGraphBuilder.html">ThreadCallGraphBuilder</a> bd(cg, <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#aa1943d53e75aef9b014953143c6894da">getICFG</a>());</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a> = bd.buildThreadCallGraph(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#ad6e18f520f6b559f2304002792f6b701">getModule</a>());</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  }</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* cg = <span class="keyword">new</span> <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>();</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <a class="code" href="classSVF_1_1CallGraphBuilder.html">CallGraphBuilder</a> bd(cg,<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#aa1943d53e75aef9b014953143c6894da">getICFG</a>());</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  ptaCallGraph = bd.<a class="code" href="classSVF_1_1CallGraphBuilder.html#aa64a27e99434908a203e566074c66ebc">buildCallGraph</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#ad6e18f520f6b559f2304002792f6b701">getModule</a>());</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  }</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">callGraphSCCDetection</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>  <span class="comment">// dump callgraph</span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a0a998c2e1d701b2052985691babc4567">Options::CallGraphDotGraph</a>())</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-><a class="code" href="classSVF_1_1PTACallGraph.html#a841be22581a7896d8924564e7199f62b">dump</a>(<span class="stringliteral">"callgraph_initial"</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a7e8059ebd9bdeed8891fb231d148316d"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a7e8059ebd9bdeed8891fb231d148316d">SVF::SVFIR::getCHG</a></div><div class="ttdeci">CommonCHGraph * getCHG()</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00173">SVFIR.h:173</a></div></div>
|
|
2208
2209
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_a841be22581a7896d8924564e7199f62b"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a841be22581a7896d8924564e7199f62b">SVF::PTACallGraph::dump</a></div><div class="ttdeci">void dump(const std::string &filename)</div><div class="ttdoc">Dump the graph. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8cpp_source.html#l00317">PTACallGraph.cpp:317</a></div></div>
|
|
2209
|
-
<div class="ttc" id="classSVF_1_1Options_html_a153d42a480ef1763ad59fd7258ac3ac5"><div class="ttname"><a href="classSVF_1_1Options.html#a153d42a480ef1763ad59fd7258ac3ac5">SVF::Options::EnableThreadCallGraph</a></div><div class="ttdeci">static const llvm::cl::opt< bool > EnableThreadCallGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00142">Options.h:142</a></div></div>
|
|
2210
2210
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad47b39252e02c68dfb466d4f42dc7ebe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">SVF::PointerAnalysis::ptaCallGraph</a></div><div class="ttdeci">PTACallGraph * ptaCallGraph</div><div class="ttdoc">Call graph used for pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00152">PointerAnalysis.h:152</a></div></div>
|
|
2211
2211
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_aafa5df4aa576a144476e547b1da35795"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">SVF::PointerAnalysis::callGraphSCCDetection</a></div><div class="ttdeci">void callGraphSCCDetection()</div><div class="ttdoc">CallGraph SCC related methods. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00397">PointerAnalysis.h:397</a></div></div>
|
|
2212
2212
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7e8b3f6843e5ea75fd189162d2cd60a5"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">SVF::PointerAnalysis::svfMod</a></div><div class="ttdeci">SVFModule * svfMod</div><div class="ttdoc">Module. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00144">PointerAnalysis.h:144</a></div></div>
|
|
2213
2213
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0c0fce2539bb9ec6c824f6584a0f6b33"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">SVF::PointerAnalysis::chgraph</a></div><div class="ttdeci">CommonCHGraph * chgraph</div><div class="ttdoc">CHGraph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00158">PointerAnalysis.h:158</a></div></div>
|
|
2214
2214
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00174">PointerAnalysis.h:174</a></div></div>
|
|
2215
|
+
<div class="ttc" id="classSVF_1_1Options_html_a1daf36a755523519187c3a8e9a19b58d"><div class="ttname"><a href="classSVF_1_1Options.html#a1daf36a755523519187c3a8e9a19b58d">SVF::Options::EnableThreadCallGraph</a></div><div class="ttdeci">static const Option< bool > EnableThreadCallGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00142">Options.h:142</a></div></div>
|
|
2216
|
+
<div class="ttc" id="classSVF_1_1Options_html_a0a998c2e1d701b2052985691babc4567"><div class="ttname"><a href="classSVF_1_1Options.html#a0a998c2e1d701b2052985691babc4567">SVF::Options::CallGraphDotGraph</a></div><div class="ttdeci">static const Option< bool > CallGraphDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00137">Options.h:137</a></div></div>
|
|
2215
2217
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html">SVF::PTACallGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00218">PTACallGraph.h:218</a></div></div>
|
|
2216
|
-
<div class="ttc" id="classSVF_1_1Options_html_a61c9d525088cc044f8937a39bb96aa93"><div class="ttname"><a href="classSVF_1_1Options.html#a61c9d525088cc044f8937a39bb96aa93">SVF::Options::CallGraphDotGraph</a></div><div class="ttdeci">static const llvm::cl::opt< bool > CallGraphDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00137">Options.h:137</a></div></div>
|
|
2217
2218
|
<div class="ttc" id="classSVF_1_1ThreadCallGraph_html"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html">SVF::ThreadCallGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00160">ThreadCallGraph.h:160</a></div></div>
|
|
2218
2219
|
<div class="ttc" id="classSVF_1_1CallGraphBuilder_html_aa64a27e99434908a203e566074c66ebc"><div class="ttname"><a href="classSVF_1_1CallGraphBuilder.html#aa64a27e99434908a203e566074c66ebc">SVF::CallGraphBuilder::buildCallGraph</a></div><div class="ttdeci">PTACallGraph * buildCallGraph(SVFModule *svfModule)</div><div class="ttdoc">Build normal callgraph. </div><div class="ttdef"><b>Definition:</b> <a href="CallGraphBuilder_8cpp_source.html#l00038">CallGraphBuilder.cpp:38</a></div></div>
|
|
2219
2220
|
<div class="ttc" id="classSVF_1_1CallGraphBuilder_html"><div class="ttname"><a href="classSVF_1_1CallGraphBuilder.html">SVF::CallGraphBuilder</a></div><div class="ttdef"><b>Definition:</b> <a href="CallGraphBuilder_8h_source.html#l00042">CallGraphBuilder.h:42</a></div></div>
|
|
@@ -2765,11 +2766,11 @@ Private Member Functions</h2></td></tr>
|
|
|
2765
2766
|
<p>Resolve cpp indirect call edges. </p>
|
|
2766
2767
|
|
|
2767
2768
|
<p class="definition">Definition at line <a class="el" href="PointerAnalysis_8cpp_source.html#l00502">502</a> of file <a class="el" href="PointerAnalysis_8cpp_source.html">PointerAnalysis.cpp</a>.</p>
|
|
2768
|
-
<div class="fragment"><div class="line"><a name="l00503"></a><span class="lineno"> 503</span> {</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  assert(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVFUtil::getSVFCallSite</a>(cs-><a class="code" href="classSVF_1_1CallICFGNode.html#a90fd0b8e44fba1a7eb76d15bce085d66">getCallSite</a>()).isVirtualCall() && <span class="stringliteral">"not cpp virtual call"</span>);</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span> </div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> vfns;</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#
|
|
2769
|
+
<div class="fragment"><div class="line"><a name="l00503"></a><span class="lineno"> 503</span> {</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  assert(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVFUtil::getSVFCallSite</a>(cs-><a class="code" href="classSVF_1_1CallICFGNode.html#a90fd0b8e44fba1a7eb76d15bce085d66">getCallSite</a>()).isVirtualCall() && <span class="stringliteral">"not cpp virtual call"</span>);</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span> </div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> vfns;</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#abf71061d93d4a3b32246f19dc71e5127">Options::ConnectVCallOnCHA</a>())</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">getVFnsFromCHA</a>(cs, vfns);</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a011b8401f5ed5fdb6cd507053465a7a2">getVFnsFromPts</a>(cs, target, vfns);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a6a5dec067fa2a1babc83f36daa8afcc3">connectVCallToVFns</a>(cs, vfns, newEdges);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span> }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a9815a5b31ac7dc21239d08e5b9f61106"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVF::SVFUtil::getSVFCallSite</a></div><div class="ttdeci">CallSite getSVFCallSite(const SVFInstruction *inst)</div><div class="ttdoc">Return LLVM callsite given an instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00194">SVFUtil.h:194</a></div></div>
|
|
2769
2770
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ade41f3562704d56c7490dcfc941b3437"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">SVF::PointerAnalysis::getVFnsFromCHA</a></div><div class="ttdeci">void getVFnsFromCHA(const CallICFGNode *cs, VFunSet &vfns)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00445">PointerAnalysis.cpp:445</a></div></div>
|
|
2770
2771
|
<div class="ttc" id="classSVF_1_1CallICFGNode_html_a90fd0b8e44fba1a7eb76d15bce085d66"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a90fd0b8e44fba1a7eb76d15bce085d66">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const SVFInstruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00380">ICFGNode.h:380</a></div></div>
|
|
2772
|
+
<div class="ttc" id="classSVF_1_1Options_html_abf71061d93d4a3b32246f19dc71e5127"><div class="ttname"><a href="classSVF_1_1Options.html#abf71061d93d4a3b32246f19dc71e5127">SVF::Options::ConnectVCallOnCHA</a></div><div class="ttdeci">static const Option< bool > ConnectVCallOnCHA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00143">Options.h:143</a></div></div>
|
|
2771
2773
|
<div class="ttc" id="namespaceSVF_html_ad2b487757f1e1a1d81073120fc1d49c7"><div class="ttname"><a href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">SVF::VFunSet</a></div><div class="ttdeci">Set< const SVFFunction * > VFunSet</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00047">CHG.h:47</a></div></div>
|
|
2772
|
-
<div class="ttc" id="classSVF_1_1Options_html_a485ec0be47c5e78bac4511d00687aee1"><div class="ttname"><a href="classSVF_1_1Options.html#a485ec0be47c5e78bac4511d00687aee1">SVF::Options::ConnectVCallOnCHA</a></div><div class="ttdeci">static const llvm::cl::opt< bool > ConnectVCallOnCHA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00143">Options.h:143</a></div></div>
|
|
2773
2774
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a6a5dec067fa2a1babc83f36daa8afcc3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a6a5dec067fa2a1babc83f36daa8afcc3">SVF::PointerAnalysis::connectVCallToVFns</a></div><div class="ttdeci">void connectVCallToVFns(const CallICFGNode *cs, const VFunSet &vfns, CallEdgeMap &newEdges)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00480">PointerAnalysis.cpp:480</a></div></div>
|
|
2774
2775
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a011b8401f5ed5fdb6cd507053465a7a2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a011b8401f5ed5fdb6cd507053465a7a2">SVF::PointerAnalysis::getVFnsFromPts</a></div><div class="ttdeci">void getVFnsFromPts(const CallICFGNode *cs, const PointsTo &target, VFunSet &vfns)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00454">PointerAnalysis.cpp:454</a></div></div>
|
|
2775
2776
|
</div><!-- fragment -->
|
|
@@ -2821,7 +2822,7 @@ Private Member Functions</h2></td></tr>
|
|
|
2821
2822
|
<p>if the arg size does not match then we do not need to connect this parameter even if the callee is a variadic function (the first parameter of variadic function is its paramter number) </p>
|
|
2822
2823
|
|
|
2823
2824
|
<p class="definition">Definition at line <a class="el" href="PointerAnalysis_8cpp_source.html#l00386">386</a> of file <a class="el" href="PointerAnalysis_8cpp_source.html">PointerAnalysis.cpp</a>.</p>
|
|
2824
|
-
<div class="fragment"><div class="line"><a name="l00387"></a><span class="lineno"> 387</span> {</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span> </div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  assert(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#a3dbe0b17694daa74f648a70e77efaf23">isIndirectCallSites</a>(cs) && <span class="stringliteral">"not an indirect callsite?"</span>);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> ii = target.<a class="code" href="classSVF_1_1PointsTo.html#ad5b582d2672617806c61e6170d0b5a7e">begin</a>(), ie = target.<a class="code" href="classSVF_1_1PointsTo.html#a6e2ff63437d07a30cc6db35de032728a">end</a>();</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  ii != ie; ii++)</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  {</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span> </div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb">getNumOfResolvedIndCallEdge</a>() >= <a class="code" href="classSVF_1_1Options.html#
|
|
2825
|
+
<div class="fragment"><div class="line"><a name="l00387"></a><span class="lineno"> 387</span> {</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span> </div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  assert(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#a3dbe0b17694daa74f648a70e77efaf23">isIndirectCallSites</a>(cs) && <span class="stringliteral">"not an indirect callsite?"</span>);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> ii = target.<a class="code" href="classSVF_1_1PointsTo.html#ad5b582d2672617806c61e6170d0b5a7e">begin</a>(), ie = target.<a class="code" href="classSVF_1_1PointsTo.html#a6e2ff63437d07a30cc6db35de032728a">end</a>();</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  ii != ie; ii++)</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  {</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span> </div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb">getNumOfResolvedIndCallEdge</a>() >= <a class="code" href="classSVF_1_1Options.html#aa5bae1db07c401517c1c0f8fd9f2deef">Options::IndirectCallLimit</a>())</div><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="namespaceSVF_1_1SVFUtil.html#a6c06020737f7dff22a666b75c28c5e7d">wrnMsg</a>(<span class="stringliteral">"Resolved Indirect Call Edges are Out-Of-Budget, please increase the limit"</span>);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <span class="keywordflow">return</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> </div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1ObjVar.html">ObjVar</a>* objPN = SVFUtil::dyn_cast<ObjVar>(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(*ii)))</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  {</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* obj = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(objPN);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span> </div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <span class="keywordflow">if</span>(obj-><a class="code" href="classSVF_1_1MemObj.html#ae1d14e2bf0be36cdadebf119822f607b">isFunction</a>())</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  {</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* calleefun = SVFUtil::cast<SVFFunction>(obj-><a class="code" href="classSVF_1_1MemObj.html#a2f70e9c830b18f25c56b530722f106c4">getValue</a>());</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* callee = calleefun-><a class="code" href="classSVF_1_1SVFFunction.html#a804a41f4eb078586f20f7d5755ea6fdd">getDefFunForMultipleModule</a>();</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span> </div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ab541df6fc703c0b21c2c308584c0b7ff">matchArgs</a>(cs, callee) == <span class="keyword">false</span>)</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span> </div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  <span class="keywordflow">if</span>(0 == <a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>()[cs].<a class="code" href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">count</a>(callee))</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  {</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  newEdges[cs].insert(callee);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>()[cs].insert(callee);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span> </div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>-><a class="code" href="classSVF_1_1PTACallGraph.html#a46416c668e2f0099394e79f685ede758">addIndirectCallGraphEdge</a>(cs, cs-><a class="code" href="classSVF_1_1CallICFGNode.html#a18f4077d42b23c3fed35efc793b6102e">getCaller</a>(), callee);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  <span class="comment">// FIXME: do we need to update llvm call graph here?</span></div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  <span class="comment">// The indirect call is maintained by ourself, We may update llvm's when we need to</span></div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <span class="comment">//CallGraphNode* callgraphNode = callgraph->getOrInsertFunction(cs.getCaller());</span></div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <span class="comment">//callgraphNode->addCalledFunction(cs,callgraph->getOrInsertFunction(callee));</span></div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  }</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  }</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  }</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  }</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span> }</div><div class="ttc" id="classSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00348">SymbolTableInfo.h:348</a></div></div>
|
|
2825
2826
|
<div class="ttc" id="classSVF_1_1MemObj_html_a2f70e9c830b18f25c56b530722f106c4"><div class="ttname"><a href="classSVF_1_1MemObj.html#a2f70e9c830b18f25c56b530722f106c4">SVF::MemObj::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdoc">Get the reference value to this object. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00372">SymbolTableInfo.h:372</a></div></div>
|
|
2826
2827
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a6e2ff63437d07a30cc6db35de032728a"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a6e2ff63437d07a30cc6db35de032728a">SVF::PointsTo::end</a></div><div class="ttdeci">const_iterator end() const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00132">PointsTo.h:132</a></div></div>
|
|
2827
2828
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_a46416c668e2f0099394e79f685ede758"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a46416c668e2f0099394e79f685ede758">SVF::PTACallGraph::addIndirectCallGraphEdge</a></div><div class="ttdeci">void addIndirectCallGraphEdge(const CallICFGNode *cs, const SVFFunction *callerFun, const SVFFunction *calleeFun)</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8cpp_source.html#l00188">PTACallGraph.cpp:188</a></div></div>
|
|
@@ -2829,7 +2830,6 @@ Private Member Functions</h2></td></tr>
|
|
|
2829
2830
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a3dbe0b17694daa74f648a70e77efaf23"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a3dbe0b17694daa74f648a70e77efaf23">SVF::SVFIR::isIndirectCallSites</a></div><div class="ttdeci">bool isIndirectCallSites(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00334">SVFIR.h:334</a></div></div>
|
|
2830
2831
|
<div class="ttc" id="classSVF_1_1PointsTo_1_1PointsToIterator_html"><div class="ttname"><a href="classSVF_1_1PointsTo_1_1PointsToIterator.html">SVF::PointsTo::PointsToIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00181">PointsTo.h:181</a></div></div>
|
|
2831
2832
|
<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="SVFValue_8h_source.html#l00257">SVFValue.h:257</a></div></div>
|
|
2832
|
-
<div class="ttc" id="classSVF_1_1Options_html_ad6c29b05188c9e06aa89623c61865ed8"><div class="ttname"><a href="classSVF_1_1Options.html#ad6c29b05188c9e06aa89623c61865ed8">SVF::Options::IndirectCallLimit</a></div><div class="ttdeci">static const llvm::cl::opt< unsigned > IndirectCallLimit</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00139">Options.h:139</a></div></div>
|
|
2833
2833
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad47b39252e02c68dfb466d4f42dc7ebe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">SVF::PointerAnalysis::ptaCallGraph</a></div><div class="ttdeci">PTACallGraph * ptaCallGraph</div><div class="ttdoc">Call graph used for pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00152">PointerAnalysis.h:152</a></div></div>
|
|
2834
2834
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ab541df6fc703c0b21c2c308584c0b7ff"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ab541df6fc703c0b21c2c308584c0b7ff">SVF::PointerAnalysis::matchArgs</a></div><div class="ttdeci">bool matchArgs(const CallICFGNode *cs, const SVFFunction *callee)</div><div class="ttdoc">Match arguments for callsite at caller and callee. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00434">PointerAnalysis.cpp:434</a></div></div>
|
|
2835
2835
|
<div class="ttc" id="classSVF_1_1ObjVar_html"><div class="ttname"><a href="classSVF_1_1ObjVar.html">SVF::ObjVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00304">SVFVariables.h:304</a></div></div>
|
|
@@ -2837,6 +2837,7 @@ Private Member Functions</h2></td></tr>
|
|
|
2837
2837
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad2c8654a6672472f9bf17681aa9b60bb"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb">SVF::PointerAnalysis::getNumOfResolvedIndCallEdge</a></div><div class="ttdeci">u32_t getNumOfResolvedIndCallEdge() const</div><div class="ttdoc">Return number of resolved indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00169">PointerAnalysis.h:169</a></div></div>
|
|
2838
2838
|
<div class="ttc" id="classSVF_1_1CallICFGNode_html_a18f4077d42b23c3fed35efc793b6102e"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a18f4077d42b23c3fed35efc793b6102e">SVF::CallICFGNode::getCaller</a></div><div class="ttdeci">const SVFFunction * getCaller() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00399">ICFGNode.h:399</a></div></div>
|
|
2839
2839
|
<div class="ttc" id="cJSON_8h_html_ad43c3812e6d13e0518d9f8b8f463ffcf"><div class="ttname"><a href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">count</a></div><div class="ttdeci">int count</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00216">cJSON.h:216</a></div></div>
|
|
2840
|
+
<div class="ttc" id="classSVF_1_1Options_html_aa5bae1db07c401517c1c0f8fd9f2deef"><div class="ttname"><a href="classSVF_1_1Options.html#aa5bae1db07c401517c1c0f8fd9f2deef">SVF::Options::IndirectCallLimit</a></div><div class="ttdeci">static const Option< u32_t > IndirectCallLimit</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00139">Options.h:139</a></div></div>
|
|
2840
2841
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_adc7f5c71efb9cd1bec4f5ca9127654c3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">SVF::PointerAnalysis::pag</a></div><div class="ttdeci">static SVFIR * pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00142">PointerAnalysis.h:142</a></div></div>
|
|
2841
2842
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a6c06020737f7dff22a666b75c28c5e7d"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a6c06020737f7dff22a666b75c28c5e7d">SVF::SVFUtil::wrnMsg</a></div><div class="ttdeci">std::string wrnMsg(std::string msg)</div><div class="ttdoc">Returns warning message by converting a string into yellow string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00061">SVFUtil.cpp:61</a></div></div>
|
|
2842
2843
|
<div class="ttc" id="classSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00395">GenericGraph.h:395</a></div></div>
|
|
Binary file
|
|
@@ -328,11 +328,11 @@ Static Private Attributes</h2></td></tr>
|
|
|
328
328
|
<p>Construct empty points-to set. </p>
|
|
329
329
|
|
|
330
330
|
<p class="definition">Definition at line <a class="el" href="PointsTo_8cpp_source.html#l00025">25</a> of file <a class="el" href="PointsTo_8cpp_source.html">PointsTo.cpp</a>.</p>
|
|
331
|
-
<div class="fragment"><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  : <a class="code" href="classSVF_1_1PointsTo.html#aaa9c956187f2c04a7a242ce440d1416f">type</a>(<a class="code" href="classSVF_1_1Options.html#
|
|
331
|
+
<div class="fragment"><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  : <a class="code" href="classSVF_1_1PointsTo.html#aaa9c956187f2c04a7a242ce440d1416f">type</a>(<a class="code" href="classSVF_1_1Options.html#a595a98babd7d51af6dacd935bd27d1f0">Options::PtType</a>()), <a class="code" href="classSVF_1_1PointsTo.html#acd7eab32125de90020c55c757d6adfda">nodeMapping</a>(<a class="code" href="classSVF_1_1PointsTo.html#a98781dd444ada40af7eef9aefe76123d">currentBestNodeMapping</a>),</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  <a class="code" href="classSVF_1_1PointsTo.html#a1ae4abe690d21eb5aaf2154243b604c1">reverseNodeMapping</a>(<a class="code" href="classSVF_1_1PointsTo.html#a53e1230c87912d26604990eb8b0cbc0c">currentBestReverseNodeMapping</a>)</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> {</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1PointsTo.html#aaa9c956187f2c04a7a242ce440d1416f">type</a> == <a class="code" href="classSVF_1_1PointsTo.html#a8f757f92ebf0a2ebdb5e6b001606923eacccb6e19f3e8db5f5b5b8858b22da61a">SBV</a>) <span class="keyword">new</span> (&<a class="code" href="classSVF_1_1PointsTo.html#aecd6b98c0687de59aebb297ec38a7084">sbv</a>) SparseBitVector<>();</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1PointsTo.html#aaa9c956187f2c04a7a242ce440d1416f">type</a> == <a class="code" href="classSVF_1_1PointsTo.html#a8f757f92ebf0a2ebdb5e6b001606923ea0397c2678894d1792fcd3432a7aa64fb">CBV</a>) <span class="keyword">new</span> (&<a class="code" href="classSVF_1_1PointsTo.html#a79333c4ae5c002d9632fa589956b3605">cbv</a>) CoreBitVector();</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1PointsTo.html#aaa9c956187f2c04a7a242ce440d1416f">type</a> == <a class="code" href="classSVF_1_1PointsTo.html#a8f757f92ebf0a2ebdb5e6b001606923eafd6e0658d0eb4cdba368fa8e77d4d892">BV</a>) <span class="keyword">new</span> (&<a class="code" href="classSVF_1_1PointsTo.html#a668be9270539fdfc5dbf3efb9cc17587">bv</a>) BitVector();</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  <span class="keywordflow">else</span> assert(<span class="keyword">false</span> && <span class="stringliteral">"PointsTo::PointsTo: unknown type"</span>);</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> }</div><div class="ttc" id="classSVF_1_1PointsTo_html_a8f757f92ebf0a2ebdb5e6b001606923eacccb6e19f3e8db5f5b5b8858b22da61a"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a8f757f92ebf0a2ebdb5e6b001606923eacccb6e19f3e8db5f5b5b8858b22da61a">SVF::PointsTo::SBV</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00033">PointsTo.h:33</a></div></div>
|
|
332
332
|
<div class="ttc" id="classSVF_1_1PointsTo_html_aecd6b98c0687de59aebb297ec38a7084"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aecd6b98c0687de59aebb297ec38a7084">SVF::PointsTo::sbv</a></div><div class="ttdeci">SparseBitVector sbv</div><div class="ttdoc">Sparse bit vector backing. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00166">PointsTo.h:166</a></div></div>
|
|
333
333
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a1ae4abe690d21eb5aaf2154243b604c1"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a1ae4abe690d21eb5aaf2154243b604c1">SVF::PointsTo::reverseNodeMapping</a></div><div class="ttdeci">MappingPtr reverseNodeMapping</div><div class="ttdoc">Internal nodes -> external nodes. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00178">PointsTo.h:178</a></div></div>
|
|
334
334
|
<div class="ttc" id="classSVF_1_1PointsTo_html_acd7eab32125de90020c55c757d6adfda"><div class="ttname"><a href="classSVF_1_1PointsTo.html#acd7eab32125de90020c55c757d6adfda">SVF::PointsTo::nodeMapping</a></div><div class="ttdeci">MappingPtr nodeMapping</div><div class="ttdoc">External nodes -> internal nodes. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00176">PointsTo.h:176</a></div></div>
|
|
335
|
-
<div class="ttc" id="
|
|
335
|
+
<div class="ttc" id="classSVF_1_1Options_html_a595a98babd7d51af6dacd935bd27d1f0"><div class="ttname"><a href="classSVF_1_1Options.html#a595a98babd7d51af6dacd935bd27d1f0">SVF::Options::PtType</a></div><div class="ttdeci">static const OptionMap< PointsTo::Type > PtType</div><div class="ttdoc">Type of points-to set to use for all analyses. </div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00050">Options.h:50</a></div></div>
|
|
336
336
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a668be9270539fdfc5dbf3efb9cc17587"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a668be9270539fdfc5dbf3efb9cc17587">SVF::PointsTo::bv</a></div><div class="ttdeci">BitVector bv</div><div class="ttdoc">Bit vector backing. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00170">PointsTo.h:170</a></div></div>
|
|
337
337
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a8f757f92ebf0a2ebdb5e6b001606923eafd6e0658d0eb4cdba368fa8e77d4d892"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a8f757f92ebf0a2ebdb5e6b001606923eafd6e0658d0eb4cdba368fa8e77d4d892">SVF::PointsTo::BV</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00035">PointsTo.h:35</a></div></div>
|
|
338
338
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a79333c4ae5c002d9632fa589956b3605"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a79333c4ae5c002d9632fa589956b3605">SVF::PointsTo::cbv</a></div><div class="ttdeci">CoreBitVector cbv</div><div class="ttdoc">Core bit vector backing. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00168">PointsTo.h:168</a></div></div>
|
|
@@ -1277,7 +1277,7 @@ Static Private Attributes</h2></td></tr>
|
|
|
1277
1277
|
<div class="ttc" id="classSVF_1_1RaceResultValidator_html_aa4129053b7248d4e95763f0b41044e4c"><div class="ttname"><a href="classSVF_1_1RaceResultValidator.html#aa4129053b7248d4e95763f0b41044e4c">SVF::RaceResultValidator::RC_MHP</a></div><div class="ttdeci">static const RC_FLAG RC_MHP</div><div class="ttdoc">Constant RC_FLAG values. </div><div class="ttdef"><b>Definition:</b> <a href="include_2MTA_2MTAResultValidator_8h_source.html#l00438">MTAResultValidator.h:438</a></div></div>
|
|
1278
1278
|
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00095">LLVMModule.h:95</a></div></div>
|
|
1279
1279
|
<div class="ttc" id="classSVF_1_1RaceResultValidator_html_ade9f150c970aa2cc481c878aebf71662"><div class="ttname"><a href="classSVF_1_1RaceResultValidator.html#ade9f150c970aa2cc481c878aebf71662">SVF::RaceResultValidator::mayAccessAliases</a></div><div class="ttdeci">virtual bool mayAccessAliases(const Instruction *I1, const Instruction *I2)</div><div class="ttdef"><b>Definition:</b> <a href="include_2MTA_2MTAResultValidator_8h_source.html#l00244">MTAResultValidator.h:244</a></div></div>
|
|
1280
|
-
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_afdd77bc1fca91f70b2ec362f1dacd392"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#afdd77bc1fca91f70b2ec362f1dacd392">SVF::LLVMModuleSet::getSVFValue</a></div><div class="ttdeci">SVFValue * getSVFValue(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#
|
|
1280
|
+
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_afdd77bc1fca91f70b2ec362f1dacd392"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#afdd77bc1fca91f70b2ec362f1dacd392">SVF::LLVMModuleSet::getSVFValue</a></div><div class="ttdeci">SVFValue * getSVFValue(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00938">LLVMModule.cpp:938</a></div></div>
|
|
1281
1281
|
<div class="ttc" id="classSVF_1_1RaceResultValidator_html_a1df6b00752e373ac7bf08a2cae0b9641"><div class="ttname"><a href="classSVF_1_1RaceResultValidator.html#a1df6b00752e373ac7bf08a2cae0b9641">SVF::RaceResultValidator::mayHaveDataRace</a></div><div class="ttdeci">virtual bool mayHaveDataRace(const Instruction *I1, const Instruction *I2)</div><div class="ttdef"><b>Definition:</b> <a href="include_2MTA_2MTAResultValidator_8h_source.html#l00262">MTAResultValidator.h:262</a></div></div>
|
|
1282
1282
|
<div class="ttc" id="classSVF_1_1RaceResultValidator_html_aeb24aa510c7073ef71062e89a11fe00a"><div class="ttname"><a href="classSVF_1_1RaceResultValidator.html#aeb24aa510c7073ef71062e89a11fe00a">SVF::RaceResultValidator::protectedByCommonLocks</a></div><div class="ttdeci">virtual bool protectedByCommonLocks(const Instruction *I1, const Instruction *I2)</div><div class="ttdef"><b>Definition:</b> <a href="include_2MTA_2MTAResultValidator_8h_source.html#l00256">MTAResultValidator.h:256</a></div></div>
|
|
1283
1283
|
</div><!-- fragment -->
|
|
@@ -1323,7 +1323,7 @@ Static Private Attributes</h2></td></tr>
|
|
|
1323
1323
|
<div class="ttc" id="classSVF_1_1RaceResultValidator_html_aa4129053b7248d4e95763f0b41044e4c"><div class="ttname"><a href="classSVF_1_1RaceResultValidator.html#aa4129053b7248d4e95763f0b41044e4c">SVF::RaceResultValidator::RC_MHP</a></div><div class="ttdeci">static const RC_FLAG RC_MHP</div><div class="ttdoc">Constant RC_FLAG values. </div><div class="ttdef"><b>Definition:</b> <a href="include_2MTA_2MTAResultValidator_8h_source.html#l00438">MTAResultValidator.h:438</a></div></div>
|
|
1324
1324
|
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_acf40310917909e4234282c0695a43160"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#acf40310917909e4234282c0695a43160">SVF::LLVMModuleSet::getLLVMModuleSet</a></div><div class="ttdeci">static LLVMModuleSet * getLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00095">LLVMModule.h:95</a></div></div>
|
|
1325
1325
|
<div class="ttc" id="classSVF_1_1RaceResultValidator_html_ade9f150c970aa2cc481c878aebf71662"><div class="ttname"><a href="classSVF_1_1RaceResultValidator.html#ade9f150c970aa2cc481c878aebf71662">SVF::RaceResultValidator::mayAccessAliases</a></div><div class="ttdeci">virtual bool mayAccessAliases(const Instruction *I1, const Instruction *I2)</div><div class="ttdef"><b>Definition:</b> <a href="include_2MTA_2MTAResultValidator_8h_source.html#l00244">MTAResultValidator.h:244</a></div></div>
|
|
1326
|
-
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_afdd77bc1fca91f70b2ec362f1dacd392"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#afdd77bc1fca91f70b2ec362f1dacd392">SVF::LLVMModuleSet::getSVFValue</a></div><div class="ttdeci">SVFValue * getSVFValue(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#
|
|
1326
|
+
<div class="ttc" id="classSVF_1_1LLVMModuleSet_html_afdd77bc1fca91f70b2ec362f1dacd392"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#afdd77bc1fca91f70b2ec362f1dacd392">SVF::LLVMModuleSet::getSVFValue</a></div><div class="ttdeci">SVFValue * getSVFValue(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8cpp_source.html#l00938">LLVMModule.cpp:938</a></div></div>
|
|
1327
1327
|
<div class="ttc" id="classSVF_1_1RaceResultValidator_html_a1df6b00752e373ac7bf08a2cae0b9641"><div class="ttname"><a href="classSVF_1_1RaceResultValidator.html#a1df6b00752e373ac7bf08a2cae0b9641">SVF::RaceResultValidator::mayHaveDataRace</a></div><div class="ttdeci">virtual bool mayHaveDataRace(const Instruction *I1, const Instruction *I2)</div><div class="ttdef"><b>Definition:</b> <a href="include_2MTA_2MTAResultValidator_8h_source.html#l00262">MTAResultValidator.h:262</a></div></div>
|
|
1328
1328
|
<div class="ttc" id="classSVF_1_1RaceResultValidator_html_aeb24aa510c7073ef71062e89a11fe00a"><div class="ttname"><a href="classSVF_1_1RaceResultValidator.html#aeb24aa510c7073ef71062e89a11fe00a">SVF::RaceResultValidator::protectedByCommonLocks</a></div><div class="ttdeci">virtual bool protectedByCommonLocks(const Instruction *I1, const Instruction *I2)</div><div class="ttdef"><b>Definition:</b> <a href="include_2MTA_2MTAResultValidator_8h_source.html#l00256">MTAResultValidator.h:256</a></div></div>
|
|
1329
1329
|
</div><!-- fragment -->
|
|
@@ -629,12 +629,12 @@ Additional Inherited Members</h2></td></tr>
|
|
|
629
629
|
<p>Reimplemented in <a class="el" href="classSVF_1_1TDJoinPE.html#accac29adba7ca4883ae161c223a1703d">SVF::TDJoinPE</a>.</p>
|
|
630
630
|
|
|
631
631
|
<p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00242">242</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
|
|
632
|
-
<div class="fragment"><div class="line"><a name="l00243"></a><span class="lineno"> 243</span> {</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  std::stringstream rawstr(str);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  rawstr << <span class="stringliteral">"RetPE: [Var"</span> << <a class="code" href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">getLHSVarID</a>() << <span class="stringliteral">" <-- Var"</span> << <a class="code" href="classSVF_1_1AssignStmt.html#a4cec89489e82c60c287cae3327f3f01d">getRHSVarID</a>() << <span class="stringliteral">"]\t"</span>;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#
|
|
632
|
+
<div class="fragment"><div class="line"><a name="l00243"></a><span class="lineno"> 243</span> {</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  std::stringstream rawstr(str);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  rawstr << <span class="stringliteral">"RetPE: [Var"</span> << <a class="code" href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">getLHSVarID</a>() << <span class="stringliteral">" <-- Var"</span> << <a class="code" href="classSVF_1_1AssignStmt.html#a4cec89489e82c60c287cae3327f3f01d">getRHSVarID</a>() << <span class="stringliteral">"]\t"</span>;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a424a44f39a43b22434dbdce26007a353">Options::ShowSVFIRValue</a>())</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  {</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  rawstr << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  rawstr << <a class="code" href="classSVF_1_1SVFStmt.html#abb784290c90d26f35897fa15bae277d2">getValue</a>()-><a class="code" href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">toString</a>();</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  }</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span> }</div><div class="ttc" id="classSVF_1_1AssignStmt_html_a4cec89489e82c60c287cae3327f3f01d"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#a4cec89489e82c60c287cae3327f3f01d">SVF::AssignStmt::getRHSVarID</a></div><div class="ttdeci">NodeID getRHSVarID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00261">SVFStatements.h:261</a></div></div>
|
|
633
633
|
<div class="ttc" id="classSVF_1_1SVFValue_html_aa678ca4616a3e69b53726b33d0b9c5a2"><div class="ttname"><a href="classSVF_1_1SVFValue.html#aa678ca4616a3e69b53726b33d0b9c5a2">SVF::SVFValue::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdoc">Needs to be implemented by a specific SVF front end (e.g., the implementation in LLVMUtil) ...</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00680">LLVMUtil.cpp:680</a></div></div>
|
|
634
634
|
<div class="ttc" id="classSVF_1_1AssignStmt_html_a98f731be7be9bc8e7fd09f5c2204c840"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">SVF::AssignStmt::getLHSVarID</a></div><div class="ttdeci">NodeID getLHSVarID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00265">SVFStatements.h:265</a></div></div>
|
|
635
635
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_abb784290c90d26f35897fa15bae277d2"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#abb784290c90d26f35897fa15bae277d2">SVF::SVFStmt::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00120">SVFStatements.h:120</a></div></div>
|
|
636
|
-
<div class="ttc" id="classSVF_1_1Options_html_a63c2ff1420867ea4ef0a94d28b3f0558"><div class="ttname"><a href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">SVF::Options::ShowSVFIRValue</a></div><div class="ttdeci">static const llvm::cl::opt< bool > ShowSVFIRValue</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00135">Options.h:135</a></div></div>
|
|
637
636
|
<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>
|
|
637
|
+
<div class="ttc" id="classSVF_1_1Options_html_a424a44f39a43b22434dbdce26007a353"><div class="ttname"><a href="classSVF_1_1Options.html#a424a44f39a43b22434dbdce26007a353">SVF::Options::ShowSVFIRValue</a></div><div class="ttdeci">static const Option< bool > ShowSVFIRValue</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00135">Options.h:135</a></div></div>
|
|
638
638
|
</div><!-- fragment -->
|
|
639
639
|
</div>
|
|
640
640
|
</div>
|