svf-tools 1.0.472 → 1.0.475
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/AndersenSFR_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +8 -7
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Andersen_8h_source.html +1 -1
- package/SVF-doxygen/html/html/CFLAlias_8h_source.html +2 -2
- package/SVF-doxygen/html/html/CHGBuilder_8cpp.html +2 -2
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +20 -19
- package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +15 -15
- package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/Casting_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ConsG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +4 -4
- package/SVF-doxygen/html/html/ExeState_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +2 -2
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +11 -10
- package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +11 -10
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +7 -7
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +3 -3
- package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +24 -24
- package/SVF-doxygen/html/html/LLVMUtil_8h.html +111 -111
- package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +41 -40
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +11 -10
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +8 -8
- package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +14 -13
- package/SVF-doxygen/html/html/LocationSet_8h_source.html +9 -9
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +31 -30
- package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +23 -23
- package/SVF-doxygen/html/html/MHP_8h_source.html +2 -2
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +35 -34
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +28 -27
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +19 -19
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +14 -14
- package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +28 -27
- package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +23 -23
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +27 -26
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +24 -24
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ProgSlice_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +18 -17
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +43 -43
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +12 -12
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +9 -9
- package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +43 -43
- package/SVF-doxygen/html/html/SVFVariables_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SaberAnnotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +39 -37
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +16 -15
- package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +58 -57
- package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +24 -24
- package/SVF-doxygen/html/html/TCT_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +5 -5
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/VFG_8h_source.html +6 -6
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/WPAStat_8h_source.html +5 -5
- package/SVF-doxygen/html/html/cfl_8cpp.html +3 -3
- package/SVF-doxygen/html/html/cfl_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +17 -15
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +32 -32
- package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +48 -48
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +6 -4
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +23 -23
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +28 -28
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +78 -78
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +100 -100
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +54 -54
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +56 -56
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +74 -74
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +59 -59
- package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1RaceValidator.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +150 -150
- package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +2 -1
- package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder-members.html +14 -13
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +111 -85
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +65 -65
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +20 -20
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +4 -4
- package/SVF-doxygen/html/html/dda_8cpp.html +2 -2
- package/SVF-doxygen/html/html/dda_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/functions_c.html +21 -16
- package/SVF-doxygen/html/html/functions_func_c.html +16 -13
- package/SVF-doxygen/html/html/functions_l.html +3 -3
- package/SVF-doxygen/html/html/functions_o.html +16 -16
- package/SVF-doxygen/html/html/functions_p.html +7 -13
- package/SVF-doxygen/html/html/functions_s.html +7 -9
- package/SVF-doxygen/html/html/functions_t.html +4 -4
- package/SVF-doxygen/html/html/functions_v.html +3 -3
- package/SVF-doxygen/html/html/mta_8cpp.html +2 -2
- package/SVF-doxygen/html/html/mta_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/namespaceSVF.html +4 -2
- package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +1452 -0
- package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +41 -1409
- package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +4 -4
- package/SVF-doxygen/html/html/namespacemembers.html +3 -3
- package/SVF-doxygen/html/html/namespacemembers_f.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_func.html +39 -39
- package/SVF-doxygen/html/html/namespacemembers_g.html +14 -14
- package/SVF-doxygen/html/html/namespacemembers_i.html +18 -18
- package/SVF-doxygen/html/html/namespacemembers_p.html +1 -1
- package/SVF-doxygen/html/html/namespacemembers_s.html +2 -2
- package/SVF-doxygen/html/html/namespaces.html +2 -1
- package/SVF-doxygen/html/html/saber_8cpp.html +2 -2
- package/SVF-doxygen/html/html/saber_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/search/all_1.js +3 -3
- package/SVF-doxygen/html/html/search/all_10.js +5 -5
- package/SVF-doxygen/html/html/search/all_12.js +1 -1
- package/SVF-doxygen/html/html/search/all_13.js +10 -9
- package/SVF-doxygen/html/html/search/all_14.js +2 -2
- package/SVF-doxygen/html/html/search/all_15.js +1 -1
- package/SVF-doxygen/html/html/search/all_16.js +2 -2
- package/SVF-doxygen/html/html/search/all_3.js +1 -0
- package/SVF-doxygen/html/html/search/all_6.js +1 -1
- package/SVF-doxygen/html/html/search/all_7.js +14 -14
- package/SVF-doxygen/html/html/search/all_9.js +18 -18
- package/SVF-doxygen/html/html/search/all_c.js +2 -2
- package/SVF-doxygen/html/html/search/all_e.js +3 -3
- package/SVF-doxygen/html/html/search/all_f.js +4 -4
- package/SVF-doxygen/html/html/search/functions_0.js +3 -3
- package/SVF-doxygen/html/html/search/functions_11.js +3 -3
- package/SVF-doxygen/html/html/search/functions_2.js +1 -0
- package/SVF-doxygen/html/html/search/functions_5.js +1 -1
- package/SVF-doxygen/html/html/search/functions_6.js +14 -14
- package/SVF-doxygen/html/html/search/functions_8.js +18 -18
- package/SVF-doxygen/html/html/search/functions_f.js +1 -1
- package/SVF-doxygen/html/html/search/namespaces_1.js +1 -0
- package/SVF-doxygen/html/html/search/variables_14.js +1 -1
- package/SVF-doxygen/html/html/search/variables_15.js +1 -1
- package/SVF-doxygen/html/html/search/variables_e.js +3 -3
- package/SVF-doxygen/html/html/svf-ex_8cpp.html +3 -3
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/wpa_8cpp.html +2 -2
- package/SVF-doxygen/html/html/wpa_8cpp_source.html +2 -2
- package/include/MTA/MHP.h +1 -1
- package/include/MemoryModel/SVFStatements.h +5 -3
- package/include/SVF-FE/LLVMUtil.h +7 -7
- package/include/SVF-FE/SymbolTableBuilder.h +2 -0
- package/lib/Graphs/ICFG.cpp +2 -2
- package/lib/MSSA/MemRegion.cpp +1 -0
- package/lib/MSSA/MemSSA.cpp +1 -0
- package/lib/MTA/LockAnalysis.cpp +1 -0
- package/lib/MemoryModel/LocationSet.cpp +1 -0
- package/lib/MemoryModel/PointerAnalysis.cpp +1 -0
- package/lib/MemoryModel/SVFIR.cpp +1 -1
- package/lib/MemoryModel/SymbolTableInfo.cpp +1 -0
- package/lib/SABER/LeakChecker.cpp +1 -0
- package/lib/SABER/PathCondAllocator.cpp +1 -0
- package/lib/SVF-FE/CHGBuilder.cpp +1 -0
- package/lib/SVF-FE/CPPUtil.cpp +2 -2
- package/lib/SVF-FE/ICFGBuilder.cpp +1 -0
- package/lib/SVF-FE/LLVMUtil.cpp +32 -32
- package/lib/SVF-FE/SVFIRBuilder.cpp +2 -1
- package/lib/SVF-FE/SymbolTableBuilder.cpp +22 -16
- package/lib/WPA/AndersenStat.cpp +1 -0
- package/lib/WPA/FlowSensitiveStat.cpp +1 -0
- package/package.json +1 -1
- package/tools/CFL/cfl.cpp +1 -1
- package/tools/DDA/dda.cpp +1 -1
- package/tools/Example/svf-ex.cpp +1 -1
- package/tools/MTA/mta.cpp +1 -1
- package/tools/SABER/saber.cpp +1 -1
- package/tools/WPA/wpa.cpp +1 -1
|
@@ -284,7 +284,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
284
284
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
285
285
|
<div class="textblock"><p>Branch statements including if/else and switch </p>
|
|
286
286
|
|
|
287
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
287
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00938">938</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
288
288
|
</div><h2 class="groupheader">Member Typedef Documentation</h2>
|
|
289
289
|
<a id="a6a0e64824777f04be4c169125dd4f666"></a>
|
|
290
290
|
<h2 class="memtitle"><span class="permalink"><a href="#a6a0e64824777f04be4c169125dd4f666">◆ </a></span>SuccAndCondPairVec</h2>
|
|
@@ -298,7 +298,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
298
298
|
</table>
|
|
299
299
|
</div><div class="memdoc">
|
|
300
300
|
|
|
301
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
301
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00941">941</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
302
302
|
|
|
303
303
|
</div>
|
|
304
304
|
</div>
|
|
@@ -400,12 +400,12 @@ Additional Inherited Members</h2></td></tr>
|
|
|
400
400
|
|
|
401
401
|
<p>constructor </p>
|
|
402
402
|
|
|
403
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
404
|
-
<div class="fragment"><div class="line"><a name="
|
|
405
|
-
<div class="ttc" id="classSVF_1_1BranchStmt_html_a40854cd95fbae16ef8e370255d0e3cf5"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">SVF::BranchStmt::successors</a></div><div class="ttdeci">SuccAndCondPairVec successors</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
403
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00973">973</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
404
|
+
<div class="fragment"><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>  : <a class="code" href="classSVF_1_1SVFStmt.html#a2ab7295fe26d2c6d2d5c9fd027f96a47">SVFStmt</a>(c,inst,<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">SVFStmt::Branch</a>), <a class="code" href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">successors</a>(succs), <a class="code" href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">cond</a>(c), <a class="code" href="classSVF_1_1BranchStmt.html#a33887345c00ffda9ca7dca59d61e184a">brInst</a>(inst)</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>  {</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_adcf5cabe6e0a87cded5ef1fdf7273f3f"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">SVF::BranchStmt::cond</a></div><div class="ttdeci">const SVFVar * cond</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00952">SVFStatements.h:952</a></div></div>
|
|
405
|
+
<div class="ttc" id="classSVF_1_1BranchStmt_html_a40854cd95fbae16ef8e370255d0e3cf5"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">SVF::BranchStmt::successors</a></div><div class="ttdeci">SuccAndCondPairVec successors</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00951">SVFStatements.h:951</a></div></div>
|
|
406
406
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a2ab7295fe26d2c6d2d5c9fd027f96a47"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a2ab7295fe26d2c6d2d5c9fd027f96a47">SVF::SVFStmt::SVFStmt</a></div><div class="ttdeci">SVFStmt(SVFVar *s, SVFVar *d, GEdgeFlag k, bool real=true)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00046">SVFStatements.cpp:46</a></div></div>
|
|
407
407
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">SVF::SVFStmt::Branch</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
408
|
-
<div class="ttc" id="classSVF_1_1BranchStmt_html_a33887345c00ffda9ca7dca59d61e184a"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a33887345c00ffda9ca7dca59d61e184a">SVF::BranchStmt::brInst</a></div><div class="ttdeci">const SVFVar * brInst</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
408
|
+
<div class="ttc" id="classSVF_1_1BranchStmt_html_a33887345c00ffda9ca7dca59d61e184a"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a33887345c00ffda9ca7dca59d61e184a">SVF::BranchStmt::brInst</a></div><div class="ttdeci">const SVFVar * brInst</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00953">SVFStatements.h:953</a></div></div>
|
|
409
409
|
</div><!-- fragment -->
|
|
410
410
|
</div>
|
|
411
411
|
</div>
|
|
@@ -436,8 +436,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
436
436
|
|
|
437
437
|
<p>Methods for support type inquiry through isa, cast, and dyn_cast: </p>
|
|
438
438
|
|
|
439
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
440
|
-
<div class="fragment"><div class="line"><a name="
|
|
439
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00958">958</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
440
|
+
<div class="fragment"><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  {</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>  }</div></div><!-- fragment -->
|
|
441
441
|
</div>
|
|
442
442
|
</div>
|
|
443
443
|
<a id="a55b867cd85dbbe43e2f7c1bad5dce647"></a>
|
|
@@ -464,8 +464,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
464
464
|
</table>
|
|
465
465
|
</div><div class="memdoc">
|
|
466
466
|
|
|
467
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
468
|
-
<div class="fragment"><div class="line"><a name="
|
|
467
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00962">962</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
468
|
+
<div class="fragment"><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>  {</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>  <span class="keywordflow">return</span> edge->getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">SVFStmt::Branch</a>;</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>  }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">SVF::SVFStmt::Branch</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
469
469
|
</div><!-- fragment -->
|
|
470
470
|
</div>
|
|
471
471
|
</div>
|
|
@@ -493,8 +493,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
493
493
|
</table>
|
|
494
494
|
</div><div class="memdoc">
|
|
495
495
|
|
|
496
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
497
|
-
<div class="fragment"><div class="line"><a name="
|
|
496
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00966">966</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
497
|
+
<div class="fragment"><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>  {</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>  <span class="keywordflow">return</span> edge->getEdgeKind() == <a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">SVFStmt::Branch</a>;</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>  }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">SVF::SVFStmt::Branch</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
498
498
|
</div><!-- fragment -->
|
|
499
499
|
</div>
|
|
500
500
|
</div>
|
|
@@ -521,8 +521,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
521
521
|
</table>
|
|
522
522
|
</div><div class="memdoc">
|
|
523
523
|
|
|
524
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
525
|
-
<div class="fragment"><div class="line"><a name="
|
|
524
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00983">983</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
525
|
+
<div class="fragment"><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>  {</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#a33887345c00ffda9ca7dca59d61e184a">brInst</a>;</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a33887345c00ffda9ca7dca59d61e184a"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a33887345c00ffda9ca7dca59d61e184a">SVF::BranchStmt::brInst</a></div><div class="ttdeci">const SVFVar * brInst</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00953">SVFStatements.h:953</a></div></div>
|
|
526
526
|
</div><!-- fragment -->
|
|
527
527
|
</div>
|
|
528
528
|
</div>
|
|
@@ -544,7 +544,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
544
544
|
<p>Return the condition. </p>
|
|
545
545
|
|
|
546
546
|
<p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00320">320</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
|
|
547
|
-
<div class="fragment"><div class="line"><a name="l00321"></a><span class="lineno"> 321</span> {</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <span class="comment">//assert(isConditional() && "this is a unconditional branch");</span></div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">cond</a>;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span> }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_adcf5cabe6e0a87cded5ef1fdf7273f3f"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">SVF::BranchStmt::cond</a></div><div class="ttdeci">const SVFVar * cond</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
547
|
+
<div class="fragment"><div class="line"><a name="l00321"></a><span class="lineno"> 321</span> {</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <span class="comment">//assert(isConditional() && "this is a unconditional branch");</span></div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">cond</a>;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span> }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_adcf5cabe6e0a87cded5ef1fdf7273f3f"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">SVF::BranchStmt::cond</a></div><div class="ttdeci">const SVFVar * cond</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00952">SVFStatements.h:952</a></div></div>
|
|
548
548
|
</div><!-- fragment -->
|
|
549
549
|
</div>
|
|
550
550
|
</div>
|
|
@@ -626,8 +626,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
626
626
|
</div><div class="memdoc">
|
|
627
627
|
<p>For example if(c) {stmt1} else {stmt2} successor(0): stmt1, 1 successor(1): stmt2, 0 For example switch(c) case 0: {stmt1; break;} case 1: {stmt2; break;} default {stmt3: break} successor(0): stmt1, 0 successor(1): stmt2, 1 successor(3): stmt3, -1 Successors of this branch statement </p>
|
|
628
628
|
|
|
629
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
630
|
-
<div class="fragment"><div class="line"><a name="
|
|
629
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00999">999</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
630
|
+
<div class="fragment"><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>  {</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">successors</a>.size();</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a40854cd95fbae16ef8e370255d0e3cf5"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">SVF::BranchStmt::successors</a></div><div class="ttdeci">SuccAndCondPairVec successors</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00951">SVFStatements.h:951</a></div></div>
|
|
631
631
|
</div><!-- fragment -->
|
|
632
632
|
</div>
|
|
633
633
|
</div>
|
|
@@ -709,8 +709,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
709
709
|
</table>
|
|
710
710
|
</div><div class="memdoc">
|
|
711
711
|
|
|
712
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
713
|
-
<div class="fragment"><div class="line"><a name="
|
|
712
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l01007">1007</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
713
|
+
<div class="fragment"><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>  {</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">successors</a>.at(i).first;</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a40854cd95fbae16ef8e370255d0e3cf5"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">SVF::BranchStmt::successors</a></div><div class="ttdeci">SuccAndCondPairVec successors</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00951">SVFStatements.h:951</a></div></div>
|
|
714
714
|
</div><!-- fragment -->
|
|
715
715
|
</div>
|
|
716
716
|
</div>
|
|
@@ -738,8 +738,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
738
738
|
</table>
|
|
739
739
|
</div><div class="memdoc">
|
|
740
740
|
|
|
741
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
742
|
-
<div class="fragment"><div class="line"><a name="
|
|
741
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l01011">1011</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
742
|
+
<div class="fragment"><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>  {</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">successors</a>.at(i).second;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a40854cd95fbae16ef8e370255d0e3cf5"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">SVF::BranchStmt::successors</a></div><div class="ttdeci">SuccAndCondPairVec successors</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00951">SVFStatements.h:951</a></div></div>
|
|
743
743
|
</div><!-- fragment -->
|
|
744
744
|
</div>
|
|
745
745
|
</div>
|
|
@@ -766,8 +766,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
766
766
|
</table>
|
|
767
767
|
</div><div class="memdoc">
|
|
768
768
|
|
|
769
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
770
|
-
<div class="fragment"><div class="line"><a name="
|
|
769
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l01003">1003</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
770
|
+
<div class="fragment"><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>  {</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">successors</a>;</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a40854cd95fbae16ef8e370255d0e3cf5"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a40854cd95fbae16ef8e370255d0e3cf5">SVF::BranchStmt::successors</a></div><div class="ttdeci">SuccAndCondPairVec successors</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00951">SVFStatements.h:951</a></div></div>
|
|
771
771
|
</div><!-- fragment -->
|
|
772
772
|
</div>
|
|
773
773
|
</div>
|
|
@@ -789,9 +789,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
789
789
|
<p>The branch is conditional if cond is not a null value. </p>
|
|
790
790
|
|
|
791
791
|
<p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00315">315</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
|
|
792
|
-
<div class="fragment"><div class="line"><a name="l00316"></a><span class="lineno"> 316</span> {</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">cond</a>-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() != <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#adaed6e68c2f53260ed4c4fc38b5c4721">nullPtrSymID</a>();;</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span> }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_adcf5cabe6e0a87cded5ef1fdf7273f3f"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">SVF::BranchStmt::cond</a></div><div class="ttdeci">const SVFVar * cond</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
792
|
+
<div class="fragment"><div class="line"><a name="l00316"></a><span class="lineno"> 316</span> {</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">cond</a>-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() != <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#adaed6e68c2f53260ed4c4fc38b5c4721">nullPtrSymID</a>();;</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span> }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_adcf5cabe6e0a87cded5ef1fdf7273f3f"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">SVF::BranchStmt::cond</a></div><div class="ttdeci">const SVFVar * cond</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00952">SVFStatements.h:952</a></div></div>
|
|
793
793
|
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_adaed6e68c2f53260ed4c4fc38b5c4721"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#adaed6e68c2f53260ed4c4fc38b5c4721">SVF::SymbolTableInfo::nullPtrSymID</a></div><div class="ttdeci">SymID nullPtrSymID() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00208">SymbolTableInfo.h:208</a></div></div>
|
|
794
|
-
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#
|
|
794
|
+
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00108">SymbolTableInfo.cpp:108</a></div></div>
|
|
795
795
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
|
|
796
796
|
</div><!-- fragment -->
|
|
797
797
|
</div>
|
|
@@ -814,9 +814,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
814
814
|
<p>The branch is unconditional if cond is a null value. </p>
|
|
815
815
|
|
|
816
816
|
<p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00310">310</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
|
|
817
|
-
<div class="fragment"><div class="line"><a name="l00311"></a><span class="lineno"> 311</span> {</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">cond</a>-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() == <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#adaed6e68c2f53260ed4c4fc38b5c4721">nullPtrSymID</a>();</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span> }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_adcf5cabe6e0a87cded5ef1fdf7273f3f"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">SVF::BranchStmt::cond</a></div><div class="ttdeci">const SVFVar * cond</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
817
|
+
<div class="fragment"><div class="line"><a name="l00311"></a><span class="lineno"> 311</span> {</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">cond</a>-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() == <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#adaed6e68c2f53260ed4c4fc38b5c4721">nullPtrSymID</a>();</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span> }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_adcf5cabe6e0a87cded5ef1fdf7273f3f"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#adcf5cabe6e0a87cded5ef1fdf7273f3f">SVF::BranchStmt::cond</a></div><div class="ttdeci">const SVFVar * cond</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00952">SVFStatements.h:952</a></div></div>
|
|
818
818
|
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_adaed6e68c2f53260ed4c4fc38b5c4721"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#adaed6e68c2f53260ed4c4fc38b5c4721">SVF::SymbolTableInfo::nullPtrSymID</a></div><div class="ttdeci">SymID nullPtrSymID() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00208">SymbolTableInfo.h:208</a></div></div>
|
|
819
|
-
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#
|
|
819
|
+
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00108">SymbolTableInfo.cpp:108</a></div></div>
|
|
820
820
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
|
|
821
821
|
</div><!-- fragment -->
|
|
822
822
|
</div>
|
|
@@ -878,13 +878,13 @@ Additional Inherited Members</h2></td></tr>
|
|
|
878
878
|
<div class="fragment"><div class="line"><a name="l00170"></a><span class="lineno"> 170</span> {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  std::string str;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1BranchStmt.html#a71e7e95f095a937c900d049991312901">isConditional</a>())</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  rawstr << <span class="stringliteral">"BranchStmt: [Condition Var"</span> << <a class="code" href="classSVF_1_1BranchStmt.html#a915384027ae53e99311f05a08edf99f0">getCondition</a>()-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">"]\n"</span>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  rawstr << <span class="stringliteral">"BranchStmt: ["</span> << <span class="stringliteral">" Unconditional branch"</span> << <span class="stringliteral">"]\n"</span>;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span> </div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <span class="keywordflow">for</span>(<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i < <a class="code" href="classSVF_1_1BranchStmt.html#a022d355bde3d0d0a9471cd125b24583b">getNumSuccessors</a>(); i++)</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  rawstr << <span class="stringliteral">"Successor "</span> << i << <span class="stringliteral">" ICFGNode"</span> << <a class="code" href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">getSuccessor</a>(i)-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>() << <span class="stringliteral">" "</span>;</div><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>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">Options::ShowSVFIRValue</a>)</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  rawstr << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  rawstr << <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">value2String</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">getValue</a>());</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  }</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span> }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a65ee8b43a3a4999eb112a197d1a9f882"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">SVF::SVFStmt::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00115">SVFStatements.h:115</a></div></div>
|
|
879
879
|
<div class="ttc" id="classSVF_1_1BranchStmt_html_a71e7e95f095a937c900d049991312901"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a71e7e95f095a937c900d049991312901">SVF::BranchStmt::isConditional</a></div><div class="ttdeci">bool isConditional() const</div><div class="ttdoc">The branch is conditional if cond is not a null value. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00315">SVFStatements.cpp:315</a></div></div>
|
|
880
880
|
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00084">SVFBasicTypes.h:84</a></div></div>
|
|
881
|
-
<div class="ttc" id="classSVF_1_1BranchStmt_html_a7d9a6ebb2d95942c453864b5327b1ae8"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">SVF::BranchStmt::getSuccessor</a></div><div class="ttdeci">const ICFGNode * getSuccessor(u32_t i) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
881
|
+
<div class="ttc" id="classSVF_1_1BranchStmt_html_a7d9a6ebb2d95942c453864b5327b1ae8"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">SVF::BranchStmt::getSuccessor</a></div><div class="ttdeci">const ICFGNode * getSuccessor(u32_t i) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l01007">SVFStatements.h:1007</a></div></div>
|
|
882
882
|
<div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
|
|
883
883
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00391">SVFUtil.cpp:391</a></div></div>
|
|
884
884
|
<div class="ttc" id="classSVF_1_1BranchStmt_html_a915384027ae53e99311f05a08edf99f0"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a915384027ae53e99311f05a08edf99f0">SVF::BranchStmt::getCondition</a></div><div class="ttdeci">const SVFVar * getCondition() const</div><div class="ttdoc">Return the condition. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8cpp_source.html#l00320">SVFStatements.cpp:320</a></div></div>
|
|
885
885
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
|
|
886
886
|
<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#l00134">Options.h:134</a></div></div>
|
|
887
|
-
<div class="ttc" id="classSVF_1_1BranchStmt_html_a022d355bde3d0d0a9471cd125b24583b"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a022d355bde3d0d0a9471cd125b24583b">SVF::BranchStmt::getNumSuccessors</a></div><div class="ttdeci">u32_t getNumSuccessors() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
887
|
+
<div class="ttc" id="classSVF_1_1BranchStmt_html_a022d355bde3d0d0a9471cd125b24583b"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a022d355bde3d0d0a9471cd125b24583b">SVF::BranchStmt::getNumSuccessors</a></div><div class="ttdeci">u32_t getNumSuccessors() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00999">SVFStatements.h:999</a></div></div>
|
|
888
888
|
</div><!-- fragment -->
|
|
889
889
|
</div>
|
|
890
890
|
</div>
|
|
@@ -909,7 +909,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
909
909
|
</table>
|
|
910
910
|
</div><div class="memdoc">
|
|
911
911
|
|
|
912
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
912
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00953">953</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
913
913
|
|
|
914
914
|
</div>
|
|
915
915
|
</div>
|
|
@@ -933,7 +933,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
933
933
|
</table>
|
|
934
934
|
</div><div class="memdoc">
|
|
935
935
|
|
|
936
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
936
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00952">952</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
937
937
|
|
|
938
938
|
</div>
|
|
939
939
|
</div>
|
|
@@ -957,7 +957,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
957
957
|
</table>
|
|
958
958
|
</div><div class="memdoc">
|
|
959
959
|
|
|
960
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#
|
|
960
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00951">951</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
|
|
961
961
|
|
|
962
962
|
</div>
|
|
963
963
|
</div>
|
|
@@ -563,7 +563,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
563
563
|
|
|
564
564
|
<p class="definition">Definition at line <a class="el" href="VFGNode_8h_source.html#l00572">572</a> of file <a class="el" href="VFGNode_8h_source.html">VFGNode.h</a>.</p>
|
|
565
565
|
<div class="fragment"><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  {</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchVFGNode.html#ab2c5f49a3ac21d827b37b0e4b61f1a10">brstmt</a>-><a class="code" href="classSVF_1_1BranchStmt.html#a022d355bde3d0d0a9471cd125b24583b">getNumSuccessors</a>();</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>  }</div><div class="ttc" id="classSVF_1_1BranchVFGNode_html_ab2c5f49a3ac21d827b37b0e4b61f1a10"><div class="ttname"><a href="classSVF_1_1BranchVFGNode.html#ab2c5f49a3ac21d827b37b0e4b61f1a10">SVF::BranchVFGNode::brstmt</a></div><div class="ttdeci">const BranchStmt * brstmt</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00545">VFGNode.h:545</a></div></div>
|
|
566
|
-
<div class="ttc" id="classSVF_1_1BranchStmt_html_a022d355bde3d0d0a9471cd125b24583b"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a022d355bde3d0d0a9471cd125b24583b">SVF::BranchStmt::getNumSuccessors</a></div><div class="ttdeci">u32_t getNumSuccessors() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
566
|
+
<div class="ttc" id="classSVF_1_1BranchStmt_html_a022d355bde3d0d0a9471cd125b24583b"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a022d355bde3d0d0a9471cd125b24583b">SVF::BranchStmt::getNumSuccessors</a></div><div class="ttdeci">u32_t getNumSuccessors() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00999">SVFStatements.h:999</a></div></div>
|
|
567
567
|
</div><!-- fragment -->
|
|
568
568
|
</div>
|
|
569
569
|
</div>
|
|
@@ -592,7 +592,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
592
592
|
</div><div class="memdoc">
|
|
593
593
|
|
|
594
594
|
<p class="definition">Definition at line <a class="el" href="VFGNode_8h_source.html#l00580">580</a> of file <a class="el" href="VFGNode_8h_source.html">VFGNode.h</a>.</p>
|
|
595
|
-
<div class="fragment"><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>  {</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchVFGNode.html#ab2c5f49a3ac21d827b37b0e4b61f1a10">brstmt</a>-><a class="code" href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">getSuccessor</a>(i);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a7d9a6ebb2d95942c453864b5327b1ae8"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">SVF::BranchStmt::getSuccessor</a></div><div class="ttdeci">const ICFGNode * getSuccessor(u32_t i) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
595
|
+
<div class="fragment"><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>  {</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchVFGNode.html#ab2c5f49a3ac21d827b37b0e4b61f1a10">brstmt</a>-><a class="code" href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">getSuccessor</a>(i);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a7d9a6ebb2d95942c453864b5327b1ae8"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a7d9a6ebb2d95942c453864b5327b1ae8">SVF::BranchStmt::getSuccessor</a></div><div class="ttdeci">const ICFGNode * getSuccessor(u32_t i) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l01007">SVFStatements.h:1007</a></div></div>
|
|
596
596
|
<div class="ttc" id="classSVF_1_1BranchVFGNode_html_ab2c5f49a3ac21d827b37b0e4b61f1a10"><div class="ttname"><a href="classSVF_1_1BranchVFGNode.html#ab2c5f49a3ac21d827b37b0e4b61f1a10">SVF::BranchVFGNode::brstmt</a></div><div class="ttdeci">const BranchStmt * brstmt</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00545">VFGNode.h:545</a></div></div>
|
|
597
597
|
</div><!-- fragment -->
|
|
598
598
|
</div>
|
|
@@ -621,7 +621,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
621
621
|
</div><div class="memdoc">
|
|
622
622
|
|
|
623
623
|
<p class="definition">Definition at line <a class="el" href="VFGNode_8h_source.html#l00576">576</a> of file <a class="el" href="VFGNode_8h_source.html">VFGNode.h</a>.</p>
|
|
624
|
-
<div class="fragment"><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>  {</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchVFGNode.html#ab2c5f49a3ac21d827b37b0e4b61f1a10">brstmt</a>-><a class="code" href="classSVF_1_1BranchStmt.html#a93040c884df211ac62d53ceafdd9c4dd">getSuccessors</a>();</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a93040c884df211ac62d53ceafdd9c4dd"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a93040c884df211ac62d53ceafdd9c4dd">SVF::BranchStmt::getSuccessors</a></div><div class="ttdeci">const SuccAndCondPairVec & getSuccessors() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#
|
|
624
|
+
<div class="fragment"><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>  {</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1BranchVFGNode.html#ab2c5f49a3ac21d827b37b0e4b61f1a10">brstmt</a>-><a class="code" href="classSVF_1_1BranchStmt.html#a93040c884df211ac62d53ceafdd9c4dd">getSuccessors</a>();</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  }</div><div class="ttc" id="classSVF_1_1BranchStmt_html_a93040c884df211ac62d53ceafdd9c4dd"><div class="ttname"><a href="classSVF_1_1BranchStmt.html#a93040c884df211ac62d53ceafdd9c4dd">SVF::BranchStmt::getSuccessors</a></div><div class="ttdeci">const SuccAndCondPairVec & getSuccessors() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l01003">SVFStatements.h:1003</a></div></div>
|
|
625
625
|
<div class="ttc" id="classSVF_1_1BranchVFGNode_html_ab2c5f49a3ac21d827b37b0e4b61f1a10"><div class="ttname"><a href="classSVF_1_1BranchVFGNode.html#ab2c5f49a3ac21d827b37b0e4b61f1a10">SVF::BranchVFGNode::brstmt</a></div><div class="ttdeci">const BranchStmt * brstmt</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00545">VFGNode.h:545</a></div></div>
|
|
626
626
|
</div><!-- fragment -->
|
|
627
627
|
</div>
|
|
@@ -436,7 +436,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
436
436
|
<p class="definition">Definition at line <a class="el" href="CFLAlias_8h_source.html#l00047">47</a> of file <a class="el" href="CFLAlias_8h_source.html">CFLAlias.h</a>.</p>
|
|
437
437
|
<div class="fragment"><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  : <a class="code" href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">PointerAnalysis</a>(ir, <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb">PointerAnalysis::CFLFICI_WPA</a>), <a class="code" href="classSVF_1_1CFLAlias.html#a0bf4ce7e4fb3d1d95608c06420cc65dc">svfir</a>(ir), <a class="code" href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">graph</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">grammar</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1CFLAlias.html#aa61c3683c9b759b6eca65b1f88e00b35">solver</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  }</div><div class="ttc" id="classSVF_1_1CFLAlias_html_aa61c3683c9b759b6eca65b1f88e00b35"><div class="ttname"><a href="classSVF_1_1CFLAlias.html#aa61c3683c9b759b6eca65b1f88e00b35">SVF::CFLAlias::solver</a></div><div class="ttdeci">CFLSolver * solver</div><div class="ttdef"><b>Definition:</b> <a href="CFLAlias_8h_source.html#l00135">CFLAlias.h:135</a></div></div>
|
|
438
438
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb">SVF::PointerAnalysis::CFLFICI_WPA</a></div><div class="ttdoc">Flow-, context-, insensitive CFL-reachability-based analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00082">PointerAnalysis.h:82</a></div></div>
|
|
439
|
-
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a14e2a209cb594f91a24ef09b12f82f3f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">SVF::PointerAnalysis::PointerAnalysis</a></div><div class="ttdeci">PointerAnalysis(SVFIR *pag, PTATY ty=Default_PTA, bool alias_check=true)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#
|
|
439
|
+
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a14e2a209cb594f91a24ef09b12f82f3f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">SVF::PointerAnalysis::PointerAnalysis</a></div><div class="ttdeci">PointerAnalysis(SVFIR *pag, PTATY ty=Default_PTA, bool alias_check=true)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00076">PointerAnalysis.cpp:76</a></div></div>
|
|
440
440
|
<div class="ttc" id="classSVF_1_1CFLAlias_html_a31ffa49b8e0995b6ee9b8a1f5ecab7be"><div class="ttname"><a href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">SVF::CFLAlias::grammar</a></div><div class="ttdeci">CFLGrammar * grammar</div><div class="ttdef"><b>Definition:</b> <a href="CFLAlias_8h_source.html#l00134">CFLAlias.h:134</a></div></div>
|
|
441
441
|
<div class="ttc" id="classSVF_1_1CFLAlias_html_abd4d8eb59209a1f1cedebcf41117914b"><div class="ttname"><a href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">SVF::CFLAlias::graph</a></div><div class="ttdeci">CFLGraph * graph</div><div class="ttdef"><b>Definition:</b> <a href="CFLAlias_8h_source.html#l00133">CFLAlias.h:133</a></div></div>
|
|
442
442
|
<div class="ttc" id="classSVF_1_1CFLAlias_html_a0bf4ce7e4fb3d1d95608c06420cc65dc"><div class="ttname"><a href="classSVF_1_1CFLAlias.html#a0bf4ce7e4fb3d1d95608c06420cc65dc">SVF::CFLAlias::svfir</a></div><div class="ttdeci">SVFIR * svfir</div><div class="ttdef"><b>Definition:</b> <a href="CFLAlias_8h_source.html#l00132">CFLAlias.h:132</a></div></div>
|
|
@@ -601,7 +601,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
601
601
|
<p class="definition">Definition at line <a class="el" href="CFLAlias_8h_source.html#l00060">60</a> of file <a class="el" href="CFLAlias_8h_source.html">CFLAlias.h</a>.</p>
|
|
602
602
|
<div class="fragment"><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  {</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  GrammarBuilder gReader = GrammarBuilder(<a class="code" href="classSVF_1_1Options.html#aa929e2ae2c0a78181c3a1311bfe73596">Options::GrammarFilename</a>);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  CFGNormalizer normalizer = CFGNormalizer();</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  CFLGraphBuilder cflGraphBuilder = CFLGraphBuilder();</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  CFLGramGraphChecker cflChecker = CFLGramGraphChecker();</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a0d099b268241f4658eb06a14ef598888">Options::GraphIsFromDot</a> == <span class="keyword">false</span>)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">PointerAnalysis::initialize</a>();</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  Map<std::string, SVF::CFLGraph::Symbol> ConstMap = {{<span class="stringliteral">"Addr"</span>,0}, {<span class="stringliteral">"Copy"</span>, 1},{<span class="stringliteral">"Store"</span>, 2},{<span class="stringliteral">"Load"</span>, 3},{<span class="stringliteral">"Gep_i"</span>, 4},{<span class="stringliteral">"Vgep"</span>, 5},{<span class="stringliteral">"Addrbar"</span>,6}, {<span class="stringliteral">"Copybar"</span>, 7},{<span class="stringliteral">"Storebar"</span>, 8},{<span class="stringliteral">"Loadbar"</span>, 9},{<span class="stringliteral">"Gepbar_i"</span>, 10},{<span class="stringliteral">"Vgepbar"</span>, 11}};</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  GrammarBase *generalGrammar = gReader.build(ConstMap);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  ConstraintGraph *consCG = <span class="keyword">new</span> ConstraintGraph(<a class="code" href="classSVF_1_1CFLAlias.html#a0bf4ce7e4fb3d1d95608c06420cc65dc">svfir</a>);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <a class="code" href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">graph</a> = cflGraphBuilder.buildBigraph(consCG, generalGrammar->getStartKind());</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  cflChecker.check(generalGrammar, &cflGraphBuilder, <a class="code" href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">graph</a>);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="code" href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">grammar</a> = normalizer.normalize(generalGrammar);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  cflChecker.check(<a class="code" href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">grammar</a>, &cflGraphBuilder, <a class="code" href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">graph</a>);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <a class="code" href="classSVF_1_1CFLAlias.html#a0bf4ce7e4fb3d1d95608c06420cc65dc">svfir</a>-><a class="code" href="classSVF_1_1IRGraph.html#a1cb32461439c4dc8d044c2bfadb11307">dump</a>(<span class="stringliteral">"SVFIR"</span>);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="code" href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">grammar</a>-><a class="code" href="classSVF_1_1CFLGrammar.html#aa663563ea03e11371d67ff4673e98a54">dump</a>();</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="keyword">delete</span> consCG;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keyword">delete</span> generalGrammar;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  }</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  GrammarBase *generalGrammar = gReader.build();</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <a class="code" href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">graph</a> = cflGraphBuilder.buildFromDot(<a class="code" href="classSVF_1_1Options.html#a322f78488d420e41a648d603f2773c56">Options::InputFilename</a>, generalGrammar);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  cflChecker.check(generalGrammar, &cflGraphBuilder, <a class="code" href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">graph</a>);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <a class="code" href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">grammar</a> = normalizer.normalize(generalGrammar);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  cflChecker.check(<a class="code" href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">grammar</a>, &cflGraphBuilder, <a class="code" href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">graph</a>);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keyword">delete</span> generalGrammar;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  }</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <a class="code" href="classSVF_1_1CFLAlias.html#aa61c3683c9b759b6eca65b1f88e00b35">solver</a> = <span class="keyword">new</span> CFLSolver(<a class="code" href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">graph</a>, <a class="code" href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">grammar</a>);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <a class="code" href="classSVF_1_1CFLAlias.html#aa61c3683c9b759b6eca65b1f88e00b35">solver</a>-><a class="code" href="classSVF_1_1CFLSolver.html#a2ee3436c26ebdb2aaf790c25b1d8b5a6">solve</a>();</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a0d099b268241f4658eb06a14ef598888">Options::GraphIsFromDot</a> == <span class="keyword">false</span>)</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  {</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a118dabc50024b5cd91095814ade47166">PointerAnalysis::finalize</a>();</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  }</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  }</div><div class="ttc" id="classSVF_1_1IRGraph_html_a1cb32461439c4dc8d044c2bfadb11307"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a1cb32461439c4dc8d044c2bfadb11307">SVF::IRGraph::dump</a></div><div class="ttdeci">void dump(std::string name)</div><div class="ttdoc">Dump SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8cpp_source.html#l00102">IRGraph.cpp:102</a></div></div>
|
|
603
603
|
<div class="ttc" id="classSVF_1_1CFLAlias_html_aa61c3683c9b759b6eca65b1f88e00b35"><div class="ttname"><a href="classSVF_1_1CFLAlias.html#aa61c3683c9b759b6eca65b1f88e00b35">SVF::CFLAlias::solver</a></div><div class="ttdeci">CFLSolver * solver</div><div class="ttdef"><b>Definition:</b> <a href="CFLAlias_8h_source.html#l00135">CFLAlias.h:135</a></div></div>
|
|
604
|
-
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a118dabc50024b5cd91095814ade47166"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a118dabc50024b5cd91095814ade47166">SVF::PointerAnalysis::finalize</a></div><div class="ttdeci">virtual void finalize()</div><div class="ttdoc">Finalization of a pointer analysis, including checking alias correctness. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#
|
|
604
|
+
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a118dabc50024b5cd91095814ade47166"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a118dabc50024b5cd91095814ade47166">SVF::PointerAnalysis::finalize</a></div><div class="ttdeci">virtual void finalize()</div><div class="ttdoc">Finalization of a pointer analysis, including checking alias correctness. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00206">PointerAnalysis.cpp:206</a></div></div>
|
|
605
605
|
<div class="ttc" id="classSVF_1_1CFLAlias_html_a31ffa49b8e0995b6ee9b8a1f5ecab7be"><div class="ttname"><a href="classSVF_1_1CFLAlias.html#a31ffa49b8e0995b6ee9b8a1f5ecab7be">SVF::CFLAlias::grammar</a></div><div class="ttdeci">CFLGrammar * grammar</div><div class="ttdef"><b>Definition:</b> <a href="CFLAlias_8h_source.html#l00134">CFLAlias.h:134</a></div></div>
|
|
606
606
|
<div class="ttc" id="classSVF_1_1CFLGrammar_html_aa663563ea03e11371d67ff4673e98a54"><div class="ttname"><a href="classSVF_1_1CFLGrammar.html#aa663563ea03e11371d67ff4673e98a54">SVF::CFLGrammar::dump</a></div><div class="ttdeci">void dump() const</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8cpp_source.html#l00187">CFLGrammar.cpp:187</a></div></div>
|
|
607
607
|
<div class="ttc" id="classSVF_1_1CFLAlias_html_abd4d8eb59209a1f1cedebcf41117914b"><div class="ttname"><a href="classSVF_1_1CFLAlias.html#abd4d8eb59209a1f1cedebcf41117914b">SVF::CFLAlias::graph</a></div><div class="ttdeci">CFLGraph * graph</div><div class="ttdef"><b>Definition:</b> <a href="CFLAlias_8h_source.html#l00133">CFLAlias.h:133</a></div></div>
|
|
@@ -610,7 +610,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
610
610
|
<div class="ttc" id="classSVF_1_1CFLAlias_html_a0bf4ce7e4fb3d1d95608c06420cc65dc"><div class="ttname"><a href="classSVF_1_1CFLAlias.html#a0bf4ce7e4fb3d1d95608c06420cc65dc">SVF::CFLAlias::svfir</a></div><div class="ttdeci">SVFIR * svfir</div><div class="ttdef"><b>Definition:</b> <a href="CFLAlias_8h_source.html#l00132">CFLAlias.h:132</a></div></div>
|
|
611
611
|
<div class="ttc" id="classSVF_1_1Options_html_a322f78488d420e41a648d603f2773c56"><div class="ttname"><a href="classSVF_1_1Options.html#a322f78488d420e41a648d603f2773c56">SVF::Options::InputFilename</a></div><div class="ttdeci">static const llvm::cl::opt< std::string > InputFilename</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00258">Options.h:258</a></div></div>
|
|
612
612
|
<div class="ttc" id="classSVF_1_1CFLSolver_html_a2ee3436c26ebdb2aaf790c25b1d8b5a6"><div class="ttname"><a href="classSVF_1_1CFLSolver.html#a2ee3436c26ebdb2aaf790c25b1d8b5a6">SVF::CFLSolver::solve</a></div><div class="ttdeci">void solve()</div><div class="ttdoc">Start solving. </div><div class="ttdef"><b>Definition:</b> <a href="CFLSolver_8cpp_source.html#l00034">CFLSolver.cpp:34</a></div></div>
|
|
613
|
-
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a431ec4f85eb0f029e5740b92fd9ceb32"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">SVF::PointerAnalysis::initialize</a></div><div class="ttdeci">virtual void initialize()</div><div class="ttdoc">Initialization of a pointer analysis, including building symbol table and SVFIR etc. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#
|
|
613
|
+
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a431ec4f85eb0f029e5740b92fd9ceb32"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">SVF::PointerAnalysis::initialize</a></div><div class="ttdeci">virtual void initialize()</div><div class="ttdoc">Initialization of a pointer analysis, including building symbol table and SVFIR etc. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00115">PointerAnalysis.cpp:115</a></div></div>
|
|
614
614
|
</div><!-- fragment -->
|
|
615
615
|
</div>
|
|
616
616
|
</div>
|