svf-tools 1.0.362 → 1.0.366
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/AndersenStat_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Andersen_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsGNode_8h_source.html +5 -5
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +34 -32
- package/SVF-doxygen/html/html/ConsG_8h_source.html +20 -20
- package/SVF-doxygen/html/html/ContextDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/DDAClient_8h_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 +1 -1
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +9 -9
- package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +13 -15
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +14 -14
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +12 -6
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +90 -84
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +43 -39
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +41 -39
- package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +21 -20
- package/SVF-doxygen/html/html/SVFStatements_8h.html +2 -0
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +78 -62
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +13 -13
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +12 -12
- 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 +42 -40
- package/SVF-doxygen/html/html/VFG_8h_source.html +26 -26
- package/SVF-doxygen/html/html/annotated.html +58 -57
- package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1AddrStmt-members.html +14 -13
- package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +4 -3
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1AssignStmt-members.html +14 -13
- package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.html +4 -3
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt-members.html +30 -28
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +26 -22
- package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt-members.html +16 -15
- package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +41 -40
- package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1CallPE-members.html +14 -13
- package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +6 -5
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt-members.html +30 -28
- package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +27 -23
- package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +79 -77
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +43 -43
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CopyStmt-members.html +14 -13
- package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +4 -3
- package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +20 -21
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt-members.html +15 -14
- package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +6 -5
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +4 -5
- package/SVF-doxygen/html/html/classSVF_1_1LoadStmt-members.html +14 -13
- package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +6 -5
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt-members.html +33 -31
- package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +66 -24
- package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +9 -10
- package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PhiStmt-members.html +21 -16
- package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +186 -73
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +38 -40
- package/SVF-doxygen/html/html/classSVF_1_1RetPE-members.html +14 -13
- package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +6 -5
- package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +8 -8
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +177 -176
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +160 -90
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +36 -34
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +340 -223
- package/SVF-doxygen/html/html/classSVF_1_1SVFStmt-members.html +17 -16
- package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +9 -5
- package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt-members.html +154 -0
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +704 -0
- package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt-members.html +17 -16
- package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +6 -5
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +39 -39
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE-members.html +17 -16
- package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +15 -14
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE-members.html +17 -16
- package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +15 -14
- 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-members.html +17 -16
- package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +29 -28
- package/SVF-doxygen/html/html/classSVF_1_1VFG-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1VFG.html +61 -59
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +1 -1
- package/SVF-doxygen/html/html/classes.html +70 -70
- package/SVF-doxygen/html/html/functions_a.html +12 -8
- package/SVF-doxygen/html/html/functions_b.html +4 -2
- package/SVF-doxygen/html/html/functions_c.html +31 -29
- package/SVF-doxygen/html/html/functions_eval_s.html +3 -0
- package/SVF-doxygen/html/html/functions_func.html +12 -8
- package/SVF-doxygen/html/html/functions_func_c.html +18 -17
- package/SVF-doxygen/html/html/functions_func_g.html +19 -6
- package/SVF-doxygen/html/html/functions_func_o.html +2 -1
- package/SVF-doxygen/html/html/functions_func_s.html +8 -5
- package/SVF-doxygen/html/html/functions_func_t.html +1 -0
- package/SVF-doxygen/html/html/functions_func_u.html +1 -0
- package/SVF-doxygen/html/html/functions_g.html +22 -9
- package/SVF-doxygen/html/html/functions_i.html +3 -3
- package/SVF-doxygen/html/html/functions_l.html +3 -3
- package/SVF-doxygen/html/html/functions_m.html +1 -1
- package/SVF-doxygen/html/html/functions_o.html +20 -13
- package/SVF-doxygen/html/html/functions_p.html +6 -6
- package/SVF-doxygen/html/html/functions_s.html +23 -17
- package/SVF-doxygen/html/html/functions_t.html +5 -4
- package/SVF-doxygen/html/html/functions_type_o.html +3 -0
- package/SVF-doxygen/html/html/functions_u.html +1 -0
- package/SVF-doxygen/html/html/functions_vars_c.html +3 -0
- package/SVF-doxygen/html/html/functions_vars_o.html +3 -0
- package/SVF-doxygen/html/html/hierarchy.html +55 -54
- package/SVF-doxygen/html/html/namespaceSVF.html +3 -1
- package/SVF-doxygen/html/html/search/all_1.js +4 -3
- package/SVF-doxygen/html/html/search/all_10.js +7 -7
- package/SVF-doxygen/html/html/search/all_12.js +1 -1
- package/SVF-doxygen/html/html/search/all_13.js +8 -6
- package/SVF-doxygen/html/html/search/all_14.js +4 -4
- package/SVF-doxygen/html/html/search/all_15.js +1 -1
- package/SVF-doxygen/html/html/search/all_16.js +1 -1
- package/SVF-doxygen/html/html/search/all_2.js +1 -1
- package/SVF-doxygen/html/html/search/all_3.js +3 -3
- package/SVF-doxygen/html/html/search/all_7.js +5 -1
- package/SVF-doxygen/html/html/search/all_9.js +1 -1
- package/SVF-doxygen/html/html/search/all_c.js +2 -2
- package/SVF-doxygen/html/html/search/all_d.js +1 -1
- package/SVF-doxygen/html/html/search/all_e.js +1 -1
- package/SVF-doxygen/html/html/search/all_f.js +3 -1
- package/SVF-doxygen/html/html/search/classes_f.js +1 -0
- package/SVF-doxygen/html/html/search/enumvalues_f.js +1 -0
- package/SVF-doxygen/html/html/search/functions_0.js +4 -3
- package/SVF-doxygen/html/html/search/functions_10.js +1 -0
- package/SVF-doxygen/html/html/search/functions_11.js +1 -1
- package/SVF-doxygen/html/html/search/functions_12.js +1 -1
- package/SVF-doxygen/html/html/search/functions_2.js +1 -1
- package/SVF-doxygen/html/html/search/functions_6.js +5 -1
- package/SVF-doxygen/html/html/search/functions_d.js +1 -1
- package/SVF-doxygen/html/html/search/functions_e.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_e.js +1 -0
- package/SVF-doxygen/html/html/search/variables_14.js +1 -1
- package/SVF-doxygen/html/html/search/variables_3.js +1 -0
- package/SVF-doxygen/html/html/search/variables_e.js +1 -1
- package/SVF-doxygen/html/html/search/variables_f.js +1 -0
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +16 -16
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +16 -16
- package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +18 -18
- package/include/Graphs/VFG.h +1 -1
- package/include/MemoryModel/SVFIR.h +3 -1
- package/include/MemoryModel/SVFStatements.h +76 -4
- package/include/SVF-FE/SVFIRBuilder.h +12 -2
- package/lib/Graphs/ConsG.cpp +9 -0
- package/lib/Graphs/ICFG.cpp +12 -17
- package/lib/Graphs/VFG.cpp +9 -0
- package/lib/MemoryModel/PAGBuilderFromFile.cpp +3 -1
- package/lib/MemoryModel/PointerAnalysis.cpp +0 -3
- package/lib/MemoryModel/SVFIR.cpp +24 -3
- package/lib/MemoryModel/SVFStatements.cpp +14 -0
- package/lib/SVF-FE/SVFIRBuilder.cpp +55 -13
- package/lib/SVF-FE/SymbolTableBuilder.cpp +1 -0
- package/package.json +1 -1
|
@@ -118,19 +118,20 @@ $(function() {
|
|
|
118
118
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9">PEDGEK</a> enum name</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
119
119
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3cd98eeb47c8475e7ee64480dcdee9">Phi</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
120
120
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a8d269a45adf13e69468f0357222ab2af">Ret</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
121
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
122
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
123
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
124
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
125
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
126
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
127
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
128
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
129
|
-
<tr><td class="entry"><a class="el" href="
|
|
130
|
-
<tr class="even"><td class="entry"><a class="el" href="
|
|
131
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
132
|
-
<tr class="even"><td class="entry"><a class="el" href="
|
|
133
|
-
<tr><td class="entry"><a class="el" href="
|
|
121
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad9397ec243a61992dc2b5681bea587fa">Select</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
122
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a852730edf374d18a3fb3985211ed7623">setBB</a>(const BasicBlock *bb)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
123
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#adb92a92f5c878576dff26cb38eab8c8c">setICFGNode</a>(ICFGNode *node)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
124
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a24dddb4e346a6e569908e3efe8a6ecc0">setValue</a>(const Value *val)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
125
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">Store</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
126
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">SVFStmt</a>(SVFVar *s, SVFVar *d, GEdgeFlag k)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
127
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVFStmtSetTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
128
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">ThreadFork</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
129
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">ThreadJoin</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
130
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1CopyStmt.html#ad72ccb8ab29258b7c0fb54c48e8dec3a">toString</a>() const override</td><td class="entry"><a class="el" href="classSVF_1_1CopyStmt.html">SVF::CopyStmt</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
|
|
131
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#af1a9c2a18805560e46425bd98a35dea9">totalEdgeNum</a></td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
|
|
132
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad2a5e6fe0f2b5fefb53abb9e91c57688">UnaryOp</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
133
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a548daea0cac6491de91d4840b7297741">~GenericEdge</a>()</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge< NodeTy ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
|
134
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#aac79c7e8d390f297002782afb0ba3ff0">~SVFStmt</a>()</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
134
135
|
</table></div><!-- contents -->
|
|
135
136
|
<!-- start footer part -->
|
|
136
137
|
<hr class="footer"/><address class="footer"><small>
|
|
@@ -208,12 +208,13 @@ Additional Inherited Members</h2></td></tr>
|
|
|
208
208
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">Gep</a>,
|
|
209
209
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3cd98eeb47c8475e7ee64480dcdee9">Phi</a>,
|
|
210
210
|
<br />
|
|
211
|
-
  <a class="el" href="classSVF_1_1SVFStmt.html#
|
|
211
|
+
  <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad9397ec243a61992dc2b5681bea587fa">Select</a>,
|
|
212
|
+
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">Cmp</a>,
|
|
212
213
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad58f5e59c55e1ffd23b83d16224fed13">BinaryOp</a>,
|
|
213
214
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad2a5e6fe0f2b5fefb53abb9e91c57688">UnaryOp</a>,
|
|
214
|
-
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">Branch</a>,
|
|
215
215
|
<br />
|
|
216
|
-
  <a class="el" href="classSVF_1_1SVFStmt.html#
|
|
216
|
+
  <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">Branch</a>,
|
|
217
|
+
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">ThreadFork</a>,
|
|
217
218
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">ThreadJoin</a>
|
|
218
219
|
<br />
|
|
219
220
|
}</td></tr>
|
|
@@ -241,7 +241,7 @@ Private Attributes</h2></td></tr>
|
|
|
241
241
|
|
|
242
242
|
<p class="definition">Definition at line <a class="el" href="DDAClient_8h_source.html#l00082">82</a> of file <a class="el" href="DDAClient_8h_source.html">DDAClient.h</a>.</p>
|
|
243
243
|
<div class="fragment"><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>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1DDAClient.html#a5e02fa3c1e6fbd5ed54038b1eaeeaaff">pag</a>-><a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(<a class="code" href="classSVF_1_1DDAClient.html#a5e02fa3c1e6fbd5ed54038b1eaeeaaff">pag</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(<span class="keywordtype">id</span>)))</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <a class="code" href="classSVF_1_1DDAClient.html#aa6fdff97be2e1a886237b515406d2e61">candidateQueries</a>.insert(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  }</div><div class="ttc" id="classSVF_1_1DDAClient_html_aa6fdff97be2e1a886237b515406d2e61"><div class="ttname"><a href="classSVF_1_1DDAClient.html#aa6fdff97be2e1a886237b515406d2e61">SVF::DDAClient::candidateQueries</a></div><div class="ttdeci">OrderedNodeSet candidateQueries</div><div class="ttdoc">store all candidate pointers to be queried </div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00091">DDAClient.h:91</a></div></div>
|
|
244
|
-
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#
|
|
244
|
+
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00683">SVFIR.cpp:683</a></div></div>
|
|
245
245
|
<div class="ttc" id="classSVF_1_1DDAClient_html_a5e02fa3c1e6fbd5ed54038b1eaeeaaff"><div class="ttname"><a href="classSVF_1_1DDAClient.html#a5e02fa3c1e6fbd5ed54038b1eaeeaaff">SVF::DDAClient::pag</a></div><div class="ttdeci">SVFIR * pag</div><div class="ttdoc">SVFIR graph used by current DDA analysis. </div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00088">DDAClient.h:88</a></div></div>
|
|
246
246
|
<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#l00387">GenericGraph.h:387</a></div></div>
|
|
247
247
|
</div><!-- fragment -->
|
|
@@ -279,7 +279,7 @@ Private Attributes</h2></td></tr>
|
|
|
279
279
|
<div class="ttc" id="classSVF_1_1DDAClient_html_a3fbe4ffde0a14b2db40189883d49237f"><div class="ttname"><a href="classSVF_1_1DDAClient.html#a3fbe4ffde0a14b2db40189883d49237f">SVF::DDAClient::setCurrentQueryPtr</a></div><div class="ttdeci">void setCurrentQueryPtr(NodeID ptr)</div><div class="ttdoc">Set the pointer being queried. </div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00061">DDAClient.h:61</a></div></div>
|
|
280
280
|
<div class="ttc" id="SVFBasicTypes_8h_html_a40845b3027a1237076aa8297ca39e730"><div class="ttname"><a href="SVFBasicTypes_8h.html#a40845b3027a1237076aa8297ca39e730">DDDA</a></div><div class="ttdeci">#define DDDA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00160">SVFBasicTypes.h:160</a></div></div>
|
|
281
281
|
<div class="ttc" id="classSVF_1_1DDAClient_html_ab3fdab96c5bf55feb82b688c92510c36"><div class="ttname"><a href="classSVF_1_1DDAClient.html#ab3fdab96c5bf55feb82b688c92510c36">SVF::DDAClient::collectCandidateQueries</a></div><div class="ttdeci">virtual OrderedNodeSet & collectCandidateQueries(SVFIR *p)</div><div class="ttdoc">Collect candidate pointers for query. </div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00035">DDAClient.h:35</a></div></div>
|
|
282
|
-
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#
|
|
282
|
+
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00683">SVFIR.cpp:683</a></div></div>
|
|
283
283
|
<div class="ttc" id="classSVF_1_1DDAStat_html_accadfa44f7cf9f107e4c8d100ce8db0d"><div class="ttname"><a href="classSVF_1_1DDAStat.html#accadfa44f7cf9f107e4c8d100ce8db0d">SVF::DDAStat::setMemUsageBefore</a></div><div class="ttdeci">void setMemUsageBefore(u32_t vmrss, u32_t vmsize)</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00056">DDAStat.h:56</a></div></div>
|
|
284
284
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
|
|
285
285
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0ebf1138011aa526d92470c1931313ad"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad">SVF::PointerAnalysis::getStat</a></div><div class="ttdeci">PTAStat * getStat() const</div><div class="ttdoc">Get PTA stat. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00212">PointerAnalysis.h:212</a></div></div>
|
|
@@ -352,7 +352,7 @@ Private Attributes</h2></td></tr>
|
|
|
352
352
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_abd9da46106d820721a24201caaa164e1"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#abd9da46106d820721a24201caaa164e1">SVF::PointerAnalysis::alias</a></div><div class="ttdeci">virtual AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB)=0</div><div class="ttdoc">Interface exposed to users of our pointer analysis, given Location infos. </div></div>
|
|
353
353
|
<div class="ttc" id="classSVF_1_1IRGraph_html_abffddd41cc308b9b3bd5ad4a7f8f1624"><div class="ttname"><a href="classSVF_1_1IRGraph.html#abffddd41cc308b9b3bd5ad4a7f8f1624">SVF::IRGraph::getValueNode</a></div><div class="ttdeci">NodeID getValueNode(const Value *V)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00120">IRGraph.h:120</a></div></div>
|
|
354
354
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a240ffa3ed0963e579db60784f4a21b9f"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">SVF::DDAPass::_pta</a></div><div class="ttdeci">PointerAnalysis * _pta</div><div class="ttdoc">pointer analysis to be executed. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8h_source.html#l00091">DDAPass.h:91</a></div></div>
|
|
355
|
-
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#
|
|
355
|
+
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00683">SVFIR.cpp:683</a></div></div>
|
|
356
356
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
|
|
357
357
|
<div class="ttc" id="classSVF_1_1IRGraph_html_aceb17dfbe137658625e16291127267d1"><div class="ttname"><a href="classSVF_1_1IRGraph.html#aceb17dfbe137658625e16291127267d1">SVF::IRGraph::hasValueNode</a></div><div class="ttdeci">bool hasValueNode(const Value *V)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00124">IRGraph.h:124</a></div></div>
|
|
358
358
|
<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#l00165">GenericGraph.h:165</a></div></div>
|
|
@@ -401,7 +401,7 @@ Private Attributes</h2></td></tr>
|
|
|
401
401
|
<p class="definition">Definition at line <a class="el" href="DDAPass_8cpp_source.html#l00269">269</a> of file <a class="el" href="DDAPass_8cpp_source.html">DDAPass.cpp</a>.</p>
|
|
402
402
|
<div class="fragment"><div class="line"><a name="l00270"></a><span class="lineno"> 270</span> {</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">_pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>();</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span> </div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  <span class="keywordflow">if</span>(pag-><a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(pag-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(node1)))</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  <a class="code" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">_pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">computeDDAPts</a>(node1);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span> </div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <span class="keywordflow">if</span>(pag-><a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(pag-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(node2)))</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  <a class="code" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">_pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">computeDDAPts</a>(node2);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">_pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#abd9da46106d820721a24201caaa164e1">alias</a>(node1,node2);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span> }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_abd9da46106d820721a24201caaa164e1"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#abd9da46106d820721a24201caaa164e1">SVF::PointerAnalysis::alias</a></div><div class="ttdeci">virtual AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB)=0</div><div class="ttdoc">Interface exposed to users of our pointer analysis, given Location infos. </div></div>
|
|
403
403
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a240ffa3ed0963e579db60784f4a21b9f"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">SVF::DDAPass::_pta</a></div><div class="ttdeci">PointerAnalysis * _pta</div><div class="ttdoc">pointer analysis to be executed. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8h_source.html#l00091">DDAPass.h:91</a></div></div>
|
|
404
|
-
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#
|
|
404
|
+
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00683">SVFIR.cpp:683</a></div></div>
|
|
405
405
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
|
|
406
406
|
<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#l00387">GenericGraph.h:387</a></div></div>
|
|
407
407
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0bb90b398ef85504bcd816ae57bee01d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">SVF::PointerAnalysis::computeDDAPts</a></div><div class="ttdeci">virtual void computeDDAPts(NodeID)</div><div class="ttdoc">Compute points-to results on-demand, overridden by derived classes. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00240">PointerAnalysis.h:240</a></div></div>
|
|
@@ -788,7 +788,7 @@ Private Attributes</h2></td></tr>
|
|
|
788
788
|
<p class="definition">Definition at line <a class="el" href="DDAPass_8cpp_source.html#l00313">313</a> of file <a class="el" href="DDAPass_8cpp_source.html">DDAPass.cpp</a>.</p>
|
|
789
789
|
<div class="fragment"><div class="line"><a name="l00314"></a><span class="lineno"> 314</span> {</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">OrderedNodeSet</a>& candidates = <a class="code" href="classSVF_1_1DDAPass.html#a8bb61315bc5d1816f4e07140864af47f">_client</a>-><a class="code" href="classSVF_1_1DDAClient.html#a6f50b9a26f66e716acf163cc77030e5f">getCandidateQueries</a>();</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  <span class="keywordflow">for</span> (OrderedNodeSet::const_iterator it = candidates.begin(), eit = candidates.end(); it != eit; ++it)</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  {</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>& pts = <a class="code" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">_pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a4dfb43679e9fa794ebad99b6584c32ec">getPts</a>(*it);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <a class="code" href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">_pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">dumpPts</a>(*it,pts);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  }</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span> }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a4dfb43679e9fa794ebad99b6584c32ec"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4dfb43679e9fa794ebad99b6584c32ec">SVF::PointerAnalysis::getPts</a></div><div class="ttdeci">virtual const PointsTo & getPts(NodeID ptr)=0</div><div class="ttdoc">Get points-to targets of a pointer. It needs to be implemented in child class. </div></div>
|
|
790
790
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a240ffa3ed0963e579db60784f4a21b9f"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a240ffa3ed0963e579db60784f4a21b9f">SVF::DDAPass::_pta</a></div><div class="ttdeci">PointerAnalysis * _pta</div><div class="ttdoc">pointer analysis to be executed. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8h_source.html#l00091">DDAPass.h:91</a></div></div>
|
|
791
|
-
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1a6cee7e690ccb3e53cdc4c3e67b386d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">SVF::PointerAnalysis::dumpPts</a></div><div class="ttdeci">virtual void dumpPts(NodeID ptr, const PointsTo &pts)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#
|
|
791
|
+
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1a6cee7e690ccb3e53cdc4c3e67b386d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">SVF::PointerAnalysis::dumpPts</a></div><div class="ttdeci">virtual void dumpPts(NodeID ptr, const PointsTo &pts)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00283">PointerAnalysis.cpp:283</a></div></div>
|
|
792
792
|
<div class="ttc" id="classSVF_1_1DDAPass_html_a8bb61315bc5d1816f4e07140864af47f"><div class="ttname"><a href="classSVF_1_1DDAPass.html#a8bb61315bc5d1816f4e07140864af47f">SVF::DDAPass::_client</a></div><div class="ttdeci">DDAClient * _client</div><div class="ttdoc">DDA client used. </div><div class="ttdef"><b>Definition:</b> <a href="DDAPass_8h_source.html#l00092">DDAPass.h:92</a></div></div>
|
|
793
793
|
<div class="ttc" id="namespaceSVF_html_a3c2bd95727ec0d9c55c631b6617026c8"><div class="ttname"><a href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">SVF::OrderedNodeSet</a></div><div class="ttdeci">OrderedSet< NodeID > OrderedNodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00113">SVFBasicTypes.h:113</a></div></div>
|
|
794
794
|
<div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
|
|
@@ -809,7 +809,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
809
809
|
|
|
810
810
|
<p class="definition">Definition at line <a class="el" href="DDAStat_8cpp_source.html#l00252">252</a> of file <a class="el" href="DDAStat_8cpp_source.html">DDAStat.cpp</a>.</p>
|
|
811
811
|
<div class="fragment"><div class="line"><a name="l00253"></a><span class="lineno"> 253</span> {</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>.empty() == <span class="keyword">false</span> && <a class="code" href="classSVF_1_1DDAStat.html#a7dabcdacf00844415bd23ca241d885e9">NumPerQueryStatMap</a>.empty() == <span class="keyword">false</span>)</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  {</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  std::cout.flags(std::ios::left);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  <span class="keywordtype">unsigned</span> field_width = 20;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  std::cout << <span class="stringliteral">"---------------------Stat Per Query--------------------------------\n"</span>;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  <span class="keywordflow">for</span> (TIMEStatMap::iterator it = <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>.begin(), eit = <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>.end(); it != eit; ++it)</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  {</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  <span class="comment">// format out put with width 20 space</span></div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  std::cout << std::setw(field_width) << it->first << it->second << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  }</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <span class="keywordflow">for</span> (NUMStatMap::iterator it = <a class="code" href="classSVF_1_1DDAStat.html#a7dabcdacf00844415bd23ca241d885e9">NumPerQueryStatMap</a>.begin(), eit = <a class="code" href="classSVF_1_1DDAStat.html#a7dabcdacf00844415bd23ca241d885e9">NumPerQueryStatMap</a>.end(); it != eit; ++it)</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  {</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <span class="comment">// format out put with width 20 space</span></div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  std::cout << std::setw(field_width) << it->first << it->second << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  }</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  }</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  <a class="code" href="classSVF_1_1DDAStat.html#a55fa3ce574d128a89c1aa5f6a7dc17c6">getPTA</a>()-><a class="code" href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">dumpPts</a>(ptr, pts);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span> }</div><div class="ttc" id="classSVF_1_1DDAStat_html_a7dabcdacf00844415bd23ca241d885e9"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a7dabcdacf00844415bd23ca241d885e9">SVF::DDAStat::NumPerQueryStatMap</a></div><div class="ttdeci">NUMStatMap NumPerQueryStatMap</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8h_source.html#l00099">DDAStat.h:99</a></div></div>
|
|
812
|
-
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1a6cee7e690ccb3e53cdc4c3e67b386d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">SVF::PointerAnalysis::dumpPts</a></div><div class="ttdeci">virtual void dumpPts(NodeID ptr, const PointsTo &pts)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#
|
|
812
|
+
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1a6cee7e690ccb3e53cdc4c3e67b386d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">SVF::PointerAnalysis::dumpPts</a></div><div class="ttdeci">virtual void dumpPts(NodeID ptr, const PointsTo &pts)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00283">PointerAnalysis.cpp:283</a></div></div>
|
|
813
813
|
<div class="ttc" id="classSVF_1_1PTAStat_html_a3724756ac0527ba3d199be32e38c6337"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">SVF::PTAStat::timeStatMap</a></div><div class="ttdeci">TIMEStatMap timeStatMap</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00149">PTAStat.h:149</a></div></div>
|
|
814
814
|
<div class="ttc" id="classSVF_1_1DDAStat_html_a55fa3ce574d128a89c1aa5f6a7dc17c6"><div class="ttname"><a href="classSVF_1_1DDAStat.html#a55fa3ce574d128a89c1aa5f6a7dc17c6">SVF::DDAStat::getPTA</a></div><div class="ttdeci">PointerAnalysis * getPTA() const</div><div class="ttdef"><b>Definition:</b> <a href="DDAStat_8cpp_source.html#l00076">DDAStat.cpp:76</a></div></div>
|
|
815
815
|
</div><!-- fragment -->
|
|
@@ -1109,7 +1109,7 @@ template<class CVar, class CPtSet, class DPIm> </div>
|
|
|
1109
1109
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_af6a6243b497df5fdab9f658b9add9c8a"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#af6a6243b497df5fdab9f658b9add9c8a">SVF::DDAVFSolver::backwardPropDpm</a></div><div class="ttdeci">virtual void backwardPropDpm(CPtSet &pts, NodeID ptr, const DPIm &oldDpm, const SVFGEdge *edge)</div><div class="ttdoc">dpm transit during backward tracing </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00399">DDAVFSolver.h:399</a></div></div>
|
|
1110
1110
|
<div class="ttc" id="namespaceSVF_html_a54c5725186e66ead6faf53c10a288714"><div class="ttname"><a href="namespaceSVF.html#a54c5725186e66ead6faf53c10a288714">SVF::StoreSVFGNode</a></div><div class="ttdeci">StoreVFGNode StoreSVFGNode</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00053">SVFG.h:53</a></div></div>
|
|
1111
1111
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
1112
|
-
<div class="ttc" id="classSVF_1_1VFG_html_ae1348fd6d196ee8a6bd8d98022464d50"><div class="ttname"><a href="classSVF_1_1VFG.html#ae1348fd6d196ee8a6bd8d98022464d50">SVF::VFG::getIntraVFGEdge</a></div><div class="ttdeci">VFGEdge * getIntraVFGEdge(const VFGNode *src, const VFGNode *dst, VFGEdge::VFGEdgeK kind)</div><div class="ttdoc">Get a SVFG edge according to src and dst. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8cpp_source.html#
|
|
1112
|
+
<div class="ttc" id="classSVF_1_1VFG_html_ae1348fd6d196ee8a6bd8d98022464d50"><div class="ttname"><a href="classSVF_1_1VFG.html#ae1348fd6d196ee8a6bd8d98022464d50">SVF::VFG::getIntraVFGEdge</a></div><div class="ttdeci">VFGEdge * getIntraVFGEdge(const VFGNode *src, const VFGNode *dst, VFGEdge::VFGEdgeK kind)</div><div class="ttdoc">Get a SVFG edge according to src and dst. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8cpp_source.html#l00775">VFG.cpp:775</a></div></div>
|
|
1113
1113
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_acb7980c7e0d1d8ad6abab0b80831d2a9"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">SVF::DDAVFSolver::getSVFG</a></div><div class="ttdeci">SVFG * getSVFG() const</div><div class="ttdoc">Return SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00096">DDAVFSolver.h:96</a></div></div>
|
|
1114
1114
|
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
|
|
1115
1115
|
<div class="ttc" id="namespaceSVF_html_aa4745cf70b26e17d59752356f0b19dd9"><div class="ttname"><a href="namespaceSVF.html#aa4745cf70b26e17d59752356f0b19dd9">SVF::SVFGEdge</a></div><div class="ttdeci">VFGEdge SVFGEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00040">SVFG.h:40</a></div></div>
|
|
@@ -3119,7 +3119,7 @@ template<class CVar, class CPtSet, class DPIm> </div>
|
|
|
3119
3119
|
<div class="ttc" id="SVFBasicTypes_8h_html_a40845b3027a1237076aa8297ca39e730"><div class="ttname"><a href="SVFBasicTypes_8h.html#a40845b3027a1237076aa8297ca39e730">DDDA</a></div><div class="ttdeci">#define DDDA</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00160">SVFBasicTypes.h:160</a></div></div>
|
|
3120
3120
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_af6a6243b497df5fdab9f658b9add9c8a"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#af6a6243b497df5fdab9f658b9add9c8a">SVF::DDAVFSolver::backwardPropDpm</a></div><div class="ttdeci">virtual void backwardPropDpm(CPtSet &pts, NodeID ptr, const DPIm &oldDpm, const SVFGEdge *edge)</div><div class="ttdoc">dpm transit during backward tracing </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00399">DDAVFSolver.h:399</a></div></div>
|
|
3121
3121
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
3122
|
-
<div class="ttc" id="classSVF_1_1VFG_html_ae1348fd6d196ee8a6bd8d98022464d50"><div class="ttname"><a href="classSVF_1_1VFG.html#ae1348fd6d196ee8a6bd8d98022464d50">SVF::VFG::getIntraVFGEdge</a></div><div class="ttdeci">VFGEdge * getIntraVFGEdge(const VFGNode *src, const VFGNode *dst, VFGEdge::VFGEdgeK kind)</div><div class="ttdoc">Get a SVFG edge according to src and dst. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8cpp_source.html#
|
|
3122
|
+
<div class="ttc" id="classSVF_1_1VFG_html_ae1348fd6d196ee8a6bd8d98022464d50"><div class="ttname"><a href="classSVF_1_1VFG.html#ae1348fd6d196ee8a6bd8d98022464d50">SVF::VFG::getIntraVFGEdge</a></div><div class="ttdeci">VFGEdge * getIntraVFGEdge(const VFGNode *src, const VFGNode *dst, VFGEdge::VFGEdgeK kind)</div><div class="ttdoc">Get a SVFG edge according to src and dst. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8cpp_source.html#l00775">VFG.cpp:775</a></div></div>
|
|
3123
3123
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_acb7980c7e0d1d8ad6abab0b80831d2a9"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">SVF::DDAVFSolver::getSVFG</a></div><div class="ttdeci">SVFG * getSVFG() const</div><div class="ttdoc">Return SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00096">DDAVFSolver.h:96</a></div></div>
|
|
3124
3124
|
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
|
|
3125
3125
|
<div class="ttc" id="namespaceSVF_html_aa4745cf70b26e17d59752356f0b19dd9"><div class="ttname"><a href="namespaceSVF.html#aa4745cf70b26e17d59752356f0b19dd9">SVF::SVFGEdge</a></div><div class="ttdeci">VFGEdge SVFGEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00040">SVFG.h:40</a></div></div>
|
|
@@ -3172,7 +3172,7 @@ template<class CVar, class CPtSet, class DPIm> </div>
|
|
|
3172
3172
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_af6a6243b497df5fdab9f658b9add9c8a"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#af6a6243b497df5fdab9f658b9add9c8a">SVF::DDAVFSolver::backwardPropDpm</a></div><div class="ttdeci">virtual void backwardPropDpm(CPtSet &pts, NodeID ptr, const DPIm &oldDpm, const SVFGEdge *edge)</div><div class="ttdoc">dpm transit during backward tracing </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00399">DDAVFSolver.h:399</a></div></div>
|
|
3173
3173
|
<div class="ttc" id="namespaceSVF_html_a54c5725186e66ead6faf53c10a288714"><div class="ttname"><a href="namespaceSVF.html#a54c5725186e66ead6faf53c10a288714">SVF::StoreSVFGNode</a></div><div class="ttdeci">StoreVFGNode StoreSVFGNode</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00053">SVFG.h:53</a></div></div>
|
|
3174
3174
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
3175
|
-
<div class="ttc" id="classSVF_1_1VFG_html_ae1348fd6d196ee8a6bd8d98022464d50"><div class="ttname"><a href="classSVF_1_1VFG.html#ae1348fd6d196ee8a6bd8d98022464d50">SVF::VFG::getIntraVFGEdge</a></div><div class="ttdeci">VFGEdge * getIntraVFGEdge(const VFGNode *src, const VFGNode *dst, VFGEdge::VFGEdgeK kind)</div><div class="ttdoc">Get a SVFG edge according to src and dst. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8cpp_source.html#
|
|
3175
|
+
<div class="ttc" id="classSVF_1_1VFG_html_ae1348fd6d196ee8a6bd8d98022464d50"><div class="ttname"><a href="classSVF_1_1VFG.html#ae1348fd6d196ee8a6bd8d98022464d50">SVF::VFG::getIntraVFGEdge</a></div><div class="ttdeci">VFGEdge * getIntraVFGEdge(const VFGNode *src, const VFGNode *dst, VFGEdge::VFGEdgeK kind)</div><div class="ttdoc">Get a SVFG edge according to src and dst. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8cpp_source.html#l00775">VFG.cpp:775</a></div></div>
|
|
3176
3176
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_acb7980c7e0d1d8ad6abab0b80831d2a9"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">SVF::DDAVFSolver::getSVFG</a></div><div class="ttdeci">SVFG * getSVFG() const</div><div class="ttdoc">Return SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00096">DDAVFSolver.h:96</a></div></div>
|
|
3177
3177
|
<div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
|
|
3178
3178
|
<div class="ttc" id="namespaceSVF_html_aa4745cf70b26e17d59752356f0b19dd9"><div class="ttname"><a href="namespaceSVF.html#aa4745cf70b26e17d59752356f0b19dd9">SVF::SVFGEdge</a></div><div class="ttdeci">VFGEdge SVFGEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00040">SVFG.h:40</a></div></div>
|
|
@@ -1603,7 +1603,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1603
1603
|
<p>Reimplemented from <a class="el" href="classSVF_1_1DDAVFSolver.html#a637dddedd96942d56de6fd6d10c09169">SVF::DDAVFSolver< NodeID, PointsTo, LocDPItem ></a>.</p>
|
|
1604
1604
|
|
|
1605
1605
|
<p class="definition">Definition at line <a class="el" href="FlowDDA_8h_source.html#l00107">107</a> of file <a class="el" href="FlowDDA_8h_source.html">FlowDDA.h</a>.</p>
|
|
1606
|
-
<div class="fragment"><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_1FlowDDA.html#a5a5548577e4a3e225185c4001386fc84">CallEdgeMap</a> newEdges;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#aa0a14fd11d7e69b2a3f91a3862f172cd">resolveIndCalls</a>(cs, <a class="code" href="classSVF_1_1DDAVFSolver.html#ae31e9281e4f1e0585fdf328b7339e1bf">getCachedPointsTo</a>(dpm), newEdges);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">for</span> (CallEdgeMap::const_iterator iter = newEdges.begin(),eiter = newEdges.end(); iter != eiter; iter++)</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keyword">const</span> CallICFGNode* newcs = iter->first;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1FlowDDA.html#ae1ec4e6e9b967a7fd36c32f21e05ba11">FunctionSet</a> & functions = iter->second;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keywordflow">for</span> (FunctionSet::const_iterator func_iter = functions.begin(); func_iter != functions.end(); func_iter++)</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keyword">const</span> SVFFunction* func = *func_iter;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <a class="code" href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">getSVFG</a>()-><a class="code" href="classSVF_1_1SVFG.html#aefca97f043b3e220ef6012a049b83fdf">connectCallerAndCallee</a>(newcs, func, svfgEdges);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</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>  }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_aa0a14fd11d7e69b2a3f91a3862f172cd"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aa0a14fd11d7e69b2a3f91a3862f172cd">SVF::PointerAnalysis::resolveIndCalls</a></div><div class="ttdeci">virtual void resolveIndCalls(const CallICFGNode *cs, const PointsTo &target, CallEdgeMap &newEdges, LLVMCallGraph *callgraph=nullptr)</div><div class="ttdoc">Resolve indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#
|
|
1606
|
+
<div class="fragment"><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_1FlowDDA.html#a5a5548577e4a3e225185c4001386fc84">CallEdgeMap</a> newEdges;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#aa0a14fd11d7e69b2a3f91a3862f172cd">resolveIndCalls</a>(cs, <a class="code" href="classSVF_1_1DDAVFSolver.html#ae31e9281e4f1e0585fdf328b7339e1bf">getCachedPointsTo</a>(dpm), newEdges);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">for</span> (CallEdgeMap::const_iterator iter = newEdges.begin(),eiter = newEdges.end(); iter != eiter; iter++)</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keyword">const</span> CallICFGNode* newcs = iter->first;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1FlowDDA.html#ae1ec4e6e9b967a7fd36c32f21e05ba11">FunctionSet</a> & functions = iter->second;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keywordflow">for</span> (FunctionSet::const_iterator func_iter = functions.begin(); func_iter != functions.end(); func_iter++)</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keyword">const</span> SVFFunction* func = *func_iter;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <a class="code" href="classSVF_1_1DDAVFSolver.html#acb7980c7e0d1d8ad6abab0b80831d2a9">getSVFG</a>()-><a class="code" href="classSVF_1_1SVFG.html#aefca97f043b3e220ef6012a049b83fdf">connectCallerAndCallee</a>(newcs, func, svfgEdges);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</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>  }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_aa0a14fd11d7e69b2a3f91a3862f172cd"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aa0a14fd11d7e69b2a3f91a3862f172cd">SVF::PointerAnalysis::resolveIndCalls</a></div><div class="ttdeci">virtual void resolveIndCalls(const CallICFGNode *cs, const PointsTo &target, CallEdgeMap &newEdges, LLVMCallGraph *callgraph=nullptr)</div><div class="ttdoc">Resolve indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00406">PointerAnalysis.cpp:406</a></div></div>
|
|
1607
1607
|
<div class="ttc" id="classSVF_1_1FlowDDA_html_a5a5548577e4a3e225185c4001386fc84"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#a5a5548577e4a3e225185c4001386fc84">SVF::FlowDDA::CallEdgeMap</a></div><div class="ttdeci">BVDataPTAImpl::CallEdgeMap CallEdgeMap</div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8h_source.html#l00030">FlowDDA.h:30</a></div></div>
|
|
1608
1608
|
<div class="ttc" id="classSVF_1_1FlowDDA_html_ae1ec4e6e9b967a7fd36c32f21e05ba11"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#ae1ec4e6e9b967a7fd36c32f21e05ba11">SVF::FlowDDA::FunctionSet</a></div><div class="ttdeci">BVDataPTAImpl::FunctionSet FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8h_source.html#l00031">FlowDDA.h:31</a></div></div>
|
|
1609
1609
|
<div class="ttc" id="classSVF_1_1DDAVFSolver_html_ae31e9281e4f1e0585fdf328b7339e1bf"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#ae31e9281e4f1e0585fdf328b7339e1bf">SVF::DDAVFSolver< NodeID, PointsTo, LocDPItem >::getCachedPointsTo</a></div><div class="ttdeci">virtual const PointsTo & getCachedPointsTo(const LocDPItem &dpm)</div><div class="ttdoc">Points-to Caching for top-level pointers and address-taken objects. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00532">DDAVFSolver.h:532</a></div></div>
|
|
@@ -1001,7 +1001,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1001
1001
|
<div class="ttc" id="classSVF_1_1GenericGraph_html_ac213302cf5c7cdf3b66f7b18649d0fbc"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVF::GenericGraph< SVFVar, SVFStmt >::iterator</a></div><div class="ttdeci">IDToNodeMapTy::iterator iterator</div><div class="ttdoc">Node Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00338">GenericGraph.h:338</a></div></div>
|
|
1002
1002
|
<div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo & getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00099">PointerAnalysisImpl.h:99</a></div></div>
|
|
1003
1003
|
<div class="ttc" id="classSVF_1_1PointsTo_html_a879783ba6629e500af9aa7dfcda2563d"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a879783ba6629e500af9aa7dfcda2563d">SVF::PointsTo::count</a></div><div class="ttdeci">u32_t count(void) const</div><div class="ttdoc">Returns number of elements. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00106">PointsTo.cpp:106</a></div></div>
|
|
1004
|
-
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#
|
|
1004
|
+
<div class="ttc" id="classSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00683">SVFIR.cpp:683</a></div></div>
|
|
1005
1005
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
|
|
1006
1006
|
<div class="ttc" id="classSVF_1_1FlowSensitiveStat_html_a07adfab66dd7ed22993e59ad3bf74946"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a07adfab66dd7ed22993e59ad3bf74946">SVF::FlowSensitiveStat::_AvgPtsSize</a></div><div class="ttdeci">double _AvgPtsSize</div><div class="ttdoc">average points-to set size. </div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00156">WPAStat.h:156</a></div></div>
|
|
1007
1007
|
<div class="ttc" id="classSVF_1_1FlowSensitiveStat_html_a8b5bfc9c3cbf9451603860789640246a"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a8b5bfc9c3cbf9451603860789640246a">SVF::FlowSensitiveStat::_TotalPtsSize</a></div><div class="ttdeci">u32_t _TotalPtsSize</div><div class="ttdoc">total points-to set size. </div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00154">WPAStat.h:154</a></div></div>
|
|
@@ -334,7 +334,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
334
334
|
<div class="ttc" id="classSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00364">ICFGNode.h:364</a></div></div>
|
|
335
335
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_a71a63c53a093ea8e450fb53fd60c9424"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a71a63c53a093ea8e450fb53fd60c9424">SVF::PTACallGraph::hasIndCSCallees</a></div><div class="ttdeci">bool hasIndCSCallees(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00284">PTACallGraph.h:284</a></div></div>
|
|
336
336
|
<div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
|
|
337
|
-
<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#
|
|
337
|
+
<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#l00474">PointerAnalysis.cpp:474</a></div></div>
|
|
338
338
|
<div class="ttc" id="classSVF_1_1FunptrDDAClient_html_a357db092c3c39d7b1c6dd0fec3888048"><div class="ttname"><a href="classSVF_1_1FunptrDDAClient.html#a357db092c3c39d7b1c6dd0fec3888048">SVF::FunptrDDAClient::vtableToCallSiteMap</a></div><div class="ttdeci">VTablePtrToCallSiteMap vtableToCallSiteMap</div><div class="ttdef"><b>Definition:</b> <a href="DDAClient_8h_source.html#l00106">DDAClient.h:106</a></div></div>
|
|
339
339
|
</div><!-- fragment -->
|
|
340
340
|
</div>
|
|
@@ -80,27 +80,26 @@ Inheritance diagram for SVF::GenericNode< NodeTy, EdgeTy >:</div>
|
|
|
80
80
|
<img src="classSVF_1_1GenericNode.png" usemap="#SVF::GenericNode_3C_20NodeTy_2C_20EdgeTy_20_3E_map" alt=""/>
|
|
81
81
|
<map id="SVF::GenericNode_3C_20NodeTy_2C_20EdgeTy_20_3E_map" name="SVF::GenericNode_3C_20NodeTy_2C_20EdgeTy_20_3E_map">
|
|
82
82
|
<area href="classSVF_1_1CHNode.html" alt="SVF::CHNode" shape="rect" coords="0,56,238,80"/>
|
|
83
|
-
<area href="
|
|
84
|
-
<area href="
|
|
85
|
-
<area href="
|
|
86
|
-
<area href="
|
|
87
|
-
<area href="
|
|
88
|
-
<area href="
|
|
89
|
-
<area href="
|
|
90
|
-
<area href="
|
|
91
|
-
<area href="
|
|
92
|
-
<area href="
|
|
93
|
-
<area href="
|
|
94
|
-
<area href="
|
|
95
|
-
<area href="
|
|
96
|
-
<area href="
|
|
97
|
-
<area href="
|
|
98
|
-
<area href="
|
|
99
|
-
<area href="
|
|
100
|
-
<area href="
|
|
101
|
-
<area href="
|
|
102
|
-
<area href="
|
|
103
|
-
<area href="classSVF_1_1UnaryOPVFGNode.html" alt="SVF::UnaryOPVFGNode" shape="rect" coords="1736,616,1974,640"/>
|
|
83
|
+
<area href="classSVF_1_1ICFGNode.html" alt="SVF::ICFGNode" shape="rect" coords="248,56,486,80"/>
|
|
84
|
+
<area href="classSVF_1_1PTACallGraphNode.html" alt="SVF::PTACallGraphNode" shape="rect" coords="496,56,734,80"/>
|
|
85
|
+
<area href="classSVF_1_1SVFVar.html" alt="SVF::SVFVar" shape="rect" coords="744,56,982,80"/>
|
|
86
|
+
<area href="classSVF_1_1TCTNode.html" alt="SVF::TCTNode" shape="rect" coords="992,56,1230,80"/>
|
|
87
|
+
<area href="classSVF_1_1VFGNode.html" alt="SVF::VFGNode" shape="rect" coords="1240,56,1478,80"/>
|
|
88
|
+
<area href="classSVF_1_1GlobalICFGNode.html" alt="SVF::GlobalICFGNode" shape="rect" coords="496,112,734,136"/>
|
|
89
|
+
<area href="classSVF_1_1InterICFGNode.html" alt="SVF::InterICFGNode" shape="rect" coords="496,168,734,192"/>
|
|
90
|
+
<area href="classSVF_1_1IntraICFGNode.html" alt="SVF::IntraICFGNode" shape="rect" coords="496,224,734,248"/>
|
|
91
|
+
<area href="classSVF_1_1ObjVar.html" alt="SVF::ObjVar" shape="rect" coords="992,112,1230,136"/>
|
|
92
|
+
<area href="classSVF_1_1ValVar.html" alt="SVF::ValVar" shape="rect" coords="992,168,1230,192"/>
|
|
93
|
+
<area href="classSVF_1_1ArgumentVFGNode.html" alt="SVF::ArgumentVFGNode" shape="rect" coords="1488,112,1726,136"/>
|
|
94
|
+
<area href="classSVF_1_1BinaryOPVFGNode.html" alt="SVF::BinaryOPVFGNode" shape="rect" coords="1488,168,1726,192"/>
|
|
95
|
+
<area href="classSVF_1_1BranchVFGNode.html" alt="SVF::BranchVFGNode" shape="rect" coords="1488,224,1726,248"/>
|
|
96
|
+
<area href="classSVF_1_1CmpVFGNode.html" alt="SVF::CmpVFGNode" shape="rect" coords="1488,280,1726,304"/>
|
|
97
|
+
<area href="classSVF_1_1DummyVersionPropSVFGNode.html" alt="SVF::DummyVersionPropSVFGNode" shape="rect" coords="1488,336,1726,360"/>
|
|
98
|
+
<area href="classSVF_1_1MRSVFGNode.html" alt="SVF::MRSVFGNode" shape="rect" coords="1488,392,1726,416"/>
|
|
99
|
+
<area href="classSVF_1_1NullPtrVFGNode.html" alt="SVF::NullPtrVFGNode" shape="rect" coords="1488,448,1726,472"/>
|
|
100
|
+
<area href="classSVF_1_1PHIVFGNode.html" alt="SVF::PHIVFGNode" shape="rect" coords="1488,504,1726,528"/>
|
|
101
|
+
<area href="classSVF_1_1StmtVFGNode.html" alt="SVF::StmtVFGNode" shape="rect" coords="1488,560,1726,584"/>
|
|
102
|
+
<area href="classSVF_1_1UnaryOPVFGNode.html" alt="SVF::UnaryOPVFGNode" shape="rect" coords="1488,616,1726,640"/>
|
|
104
103
|
</map>
|
|
105
104
|
</div></div>
|
|
106
105
|
<table class="memberdecls">
|
|
Binary file
|
|
@@ -125,20 +125,21 @@ $(function() {
|
|
|
125
125
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9">PEDGEK</a> enum name</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
126
126
|
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3cd98eeb47c8475e7ee64480dcdee9">Phi</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
127
127
|
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a8d269a45adf13e69468f0357222ab2af">Ret</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
128
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
129
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
130
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
131
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
132
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
133
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
134
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
135
|
-
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
136
|
-
<tr class="even"><td class="entry"><a class="el" href="
|
|
137
|
-
<tr><td class="entry"><a class="el" href="
|
|
138
|
-
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#
|
|
139
|
-
<tr><td class="entry"><a class="el" href="
|
|
140
|
-
<tr class="even"><td class="entry"><a class="el" href="
|
|
141
|
-
<tr><td class="entry"><a class="el" href="
|
|
128
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad9397ec243a61992dc2b5681bea587fa">Select</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
129
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a852730edf374d18a3fb3985211ed7623">setBB</a>(const BasicBlock *bb)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
130
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#adb92a92f5c878576dff26cb38eab8c8c">setICFGNode</a>(ICFGNode *node)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
131
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a24dddb4e346a6e569908e3efe8a6ecc0">setValue</a>(const Value *val)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
132
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">Store</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
133
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">SVFStmt</a>(SVFVar *s, SVFVar *d, GEdgeFlag k)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
134
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVFStmtSetTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
135
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">ThreadFork</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
136
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">ThreadJoin</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
137
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html#acae68ff97d408a1dd929b0348415c81d">toString</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html">SVF::GepStmt</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
|
|
138
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#af1a9c2a18805560e46425bd98a35dea9">totalEdgeNum</a></td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
|
|
139
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad2a5e6fe0f2b5fefb53abb9e91c57688">UnaryOp</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
|
|
140
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">variantField</a></td><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html">SVF::GepStmt</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
|
|
141
|
+
<tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a548daea0cac6491de91d4840b7297741">~GenericEdge</a>()</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge< NodeTy ></a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
|
142
|
+
<tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#aac79c7e8d390f297002782afb0ba3ff0">~SVFStmt</a>()</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
|
142
143
|
</table></div><!-- contents -->
|
|
143
144
|
<!-- start footer part -->
|
|
144
145
|
<hr class="footer"/><address class="footer"><small>
|
|
@@ -234,12 +234,13 @@ Additional Inherited Members</h2></td></tr>
|
|
|
234
234
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">Gep</a>,
|
|
235
235
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3cd98eeb47c8475e7ee64480dcdee9">Phi</a>,
|
|
236
236
|
<br />
|
|
237
|
-
  <a class="el" href="classSVF_1_1SVFStmt.html#
|
|
237
|
+
  <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad9397ec243a61992dc2b5681bea587fa">Select</a>,
|
|
238
|
+
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a610d6662d1814cffbf23db29e7e620c0">Cmp</a>,
|
|
238
239
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad58f5e59c55e1ffd23b83d16224fed13">BinaryOp</a>,
|
|
239
240
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad2a5e6fe0f2b5fefb53abb9e91c57688">UnaryOp</a>,
|
|
240
|
-
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">Branch</a>,
|
|
241
241
|
<br />
|
|
242
|
-
  <a class="el" href="classSVF_1_1SVFStmt.html#
|
|
242
|
+
  <a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad52703e3ec09b6a4f565e5d82279b6a3">Branch</a>,
|
|
243
|
+
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">ThreadFork</a>,
|
|
243
244
|
<a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">ThreadJoin</a>
|
|
244
245
|
<br />
|
|
245
246
|
}</td></tr>
|
|
@@ -718,8 +719,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
718
719
|
|
|
719
720
|
<p>Implements <a class="el" href="classSVF_1_1AssignStmt.html#abbe582a24bf4b42284f78eab5b18a90a">SVF::AssignStmt</a>.</p>
|
|
720
721
|
|
|
721
|
-
<p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#
|
|
722
|
-
<div class="fragment"><div class="line"><a name="
|
|
722
|
+
<p class="definition">Definition at line <a class="el" href="SVFStatements_8cpp_source.html#l00192">192</a> of file <a class="el" href="SVFStatements_8cpp_source.html">SVFStatements.cpp</a>.</p>
|
|
723
|
+
<div class="fragment"><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>  std::string str;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  <a class="code" href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">raw_string_ostream</a> rawstr(str);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  rawstr << <span class="stringliteral">"GepStmt: [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="l00196"></a><span class="lineno"> 196</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a63c2ff1420867ea4ef0a94d28b3f0558">Options::ShowSVFIRValue</a>) {</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  rawstr << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</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="l00199"></a><span class="lineno"> 199</span>  }</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="keywordflow">return</span> rawstr.str();</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</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>
|
|
723
724
|
<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#l00253">SVFStatements.h:253</a></div></div>
|
|
724
725
|
<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="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00100">BasicTypes.h:100</a></div></div>
|
|
725
726
|
<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#l00256">SVFStatements.h:256</a></div></div>
|