svf-tools 1.0.433 → 1.0.436
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/.gitignore +1 -0
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +1 -1
- 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/DDAVFSolver_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +2 -2
- package/SVF-doxygen/html/html/ICFGNode_8h_source.html +40 -41
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +6 -7
- package/SVF-doxygen/html/html/ICFG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MHP_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
- package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/MemRegion_8h_source.html +2 -2
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/MemSSA_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PCG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ProgSlice_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/SVFG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFIR_8h_source.html +5 -5
- package/SVF-doxygen/html/html/SVFStatements_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +2 -2
- package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TCT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/VFG_8h_source.html +2 -2
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +35 -35
- package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +18 -44
- package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PCG.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +26 -26
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +4 -5
- package/SVF-doxygen/html/html/classSVF_1_1TCT.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +9 -9
- package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.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_1VFG.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +3 -3
- package/SVF-doxygen/html/html/functions_f.html +19 -18
- package/SVF-doxygen/html/html/functions_vars_f.html +0 -1
- package/SVF-doxygen/html/html/search/all_6.js +1 -1
- package/SVF-doxygen/html/html/search/variables_6.js +1 -1
- package/include/Graphs/ICFGNode.h +0 -1
- package/lib/Graphs/ICFG.cpp +1 -1
- package/lib/SVF-FE/SymbolTableBuilder.cpp +1 -4
- package/package.json +1 -1
|
@@ -214,8 +214,6 @@ Static Public Member Functions</h2></td></tr>
|
|
|
214
214
|
</table><table class="memberdecls">
|
|
215
215
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
|
|
216
216
|
Private Attributes</h2></td></tr>
|
|
217
|
-
<tr class="memitem:adfcebc33f3c36b8145074d370dfa1cb9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1FunExitICFGNode.html#adfcebc33f3c36b8145074d370dfa1cb9">fun</a></td></tr>
|
|
218
|
-
<tr class="separator:adfcebc33f3c36b8145074d370dfa1cb9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
219
217
|
<tr class="memitem:ac3765c6a34ddff0018e38ce644d96641"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1SVFVar.html">SVFVar</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1FunExitICFGNode.html#ac3765c6a34ddff0018e38ce644d96641">formalRet</a></td></tr>
|
|
220
218
|
<tr class="separator:ac3765c6a34ddff0018e38ce644d96641"><td class="memSeparator" colspan="2"> </td></tr>
|
|
221
219
|
</table><table class="memberdecls">
|
|
@@ -301,12 +299,12 @@ Additional Inherited Members</h2></td></tr>
|
|
|
301
299
|
</div><div class="memdoc">
|
|
302
300
|
|
|
303
301
|
<p class="definition">Definition at line <a class="el" href="ICFG_8cpp_source.html#l00050">50</a> of file <a class="el" href="ICFG_8cpp_source.html">ICFG.cpp</a>.</p>
|
|
304
|
-
<div class="fragment"><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  : <a class="code" href="classSVF_1_1InterICFGNode.html#a192826ba075a80add6a39a039a32bc05">InterICFGNode</a>(<span class="keywordtype">id</span>, <a class="code" href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">FunExitBlock</a>), <a class="code" href="classSVF_1_1FunExitICFGNode.html#
|
|
302
|
+
<div class="fragment"><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  : <a class="code" href="classSVF_1_1InterICFGNode.html#a192826ba075a80add6a39a039a32bc05">InterICFGNode</a>(<span class="keywordtype">id</span>, <a class="code" href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">FunExitBlock</a>), <a class="code" href="classSVF_1_1FunExitICFGNode.html#ac3765c6a34ddff0018e38ce644d96641">formalRet</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> {</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <a class="code" href="classSVF_1_1ICFGNode.html#a03587dbd558d8fffe25307b42e3195be">fun</a> = f;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="comment">// if function is implemented</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordflow">if</span> (f-><a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()->begin() != f-><a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()->end()) {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <a class="code" href="classSVF_1_1ICFGNode.html#ad3c5171fed4e28cfd35c1a6fb9697005">bb</a> = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a3cb226930eeaf558575e09e5b65e0223">SVFUtil::getFunExitBB</a>(f-><a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>());</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  }</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> }</div><div class="ttc" id="classSVF_1_1ICFGNode_html_a03587dbd558d8fffe25307b42e3195be"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a03587dbd558d8fffe25307b42e3195be">SVF::ICFGNode::fun</a></div><div class="ttdeci">const SVFFunction * fun</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00132">ICFGNode.h:132</a></div></div>
|
|
303
|
+
<div class="ttc" id="classSVF_1_1InterICFGNode_html_a192826ba075a80add6a39a039a32bc05"><div class="ttname"><a href="classSVF_1_1InterICFGNode.html#a192826ba075a80add6a39a039a32bc05">SVF::InterICFGNode::InterICFGNode</a></div><div class="ttdeci">InterICFGNode(NodeID id, ICFGNodeK k)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00218">ICFGNode.h:218</a></div></div>
|
|
305
304
|
<div class="ttc" id="classSVF_1_1ICFGNode_html_a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">SVF::ICFGNode::FunExitBlock</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00062">ICFGNode.h:62</a></div></div>
|
|
306
|
-
<div class="ttc" id="classSVF_1_1FunExitICFGNode_html_ac3765c6a34ddff0018e38ce644d96641"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html#ac3765c6a34ddff0018e38ce644d96641">SVF::FunExitICFGNode::formalRet</a></div><div class="ttdeci">const SVFVar * formalRet</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
305
|
+
<div class="ttc" id="classSVF_1_1FunExitICFGNode_html_ac3765c6a34ddff0018e38ce644d96641"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html#ac3765c6a34ddff0018e38ce644d96641">SVF::FunExitICFGNode::formalRet</a></div><div class="ttdeci">const SVFVar * formalRet</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00312">ICFGNode.h:312</a></div></div>
|
|
307
306
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a3cb226930eeaf558575e09e5b65e0223"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a3cb226930eeaf558575e09e5b65e0223">SVF::SVFUtil::getFunExitBB</a></div><div class="ttdeci">const BasicBlock * getFunExitBB(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00520">LLVMUtil.h:520</a></div></div>
|
|
308
307
|
<div class="ttc" id="classSVF_1_1ICFGNode_html_ad3c5171fed4e28cfd35c1a6fb9697005"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#ad3c5171fed4e28cfd35c1a6fb9697005">SVF::ICFGNode::bb</a></div><div class="ttdeci">const BasicBlock * bb</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00133">ICFGNode.h:133</a></div></div>
|
|
309
|
-
<div class="ttc" id="classSVF_1_1FunExitICFGNode_html_adfcebc33f3c36b8145074d370dfa1cb9"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html#adfcebc33f3c36b8145074d370dfa1cb9">SVF::FunExitICFGNode::fun</a></div><div class="ttdeci">const SVFFunction * fun</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00312">ICFGNode.h:312</a></div></div>
|
|
310
308
|
<div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00195">BasicTypes.h:195</a></div></div>
|
|
311
309
|
</div><!-- fragment -->
|
|
312
310
|
</div>
|
|
@@ -338,8 +336,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
338
336
|
|
|
339
337
|
<p>Add actual return parameter. </p>
|
|
340
338
|
|
|
341
|
-
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#
|
|
342
|
-
<div class="fragment"><div class="line"><a name="
|
|
339
|
+
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00329">329</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
340
|
+
<div class="fragment"><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  {</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  <a class="code" href="classSVF_1_1FunExitICFGNode.html#ac3765c6a34ddff0018e38ce644d96641">formalRet</a> = fr;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  }</div><div class="ttc" id="classSVF_1_1FunExitICFGNode_html_ac3765c6a34ddff0018e38ce644d96641"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html#ac3765c6a34ddff0018e38ce644d96641">SVF::FunExitICFGNode::formalRet</a></div><div class="ttdeci">const SVFVar * formalRet</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00312">ICFGNode.h:312</a></div></div>
|
|
343
341
|
</div><!-- fragment -->
|
|
344
342
|
</div>
|
|
345
343
|
</div>
|
|
@@ -369,8 +367,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
369
367
|
|
|
370
368
|
<p>Methods for support type inquiry through isa, cast, and dyn_cast: </p>
|
|
371
369
|
|
|
372
|
-
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#
|
|
373
|
-
<div class="fragment"><div class="line"><a name="
|
|
370
|
+
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00336">336</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
371
|
+
<div class="fragment"><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  {</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  }</div></div><!-- fragment -->
|
|
374
372
|
</div>
|
|
375
373
|
</div>
|
|
376
374
|
<a id="acace98ae1961dcd498678694b7ba4699"></a>
|
|
@@ -397,8 +395,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
397
395
|
</table>
|
|
398
396
|
</div><div class="memdoc">
|
|
399
397
|
|
|
400
|
-
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#
|
|
401
|
-
<div class="fragment"><div class="line"><a name="
|
|
398
|
+
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00341">341</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
399
|
+
<div class="fragment"><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  {</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  <span class="keywordflow">return</span> node->getNodeKind() == <a class="code" href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">FunExitBlock</a>;</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  }</div><div class="ttc" id="classSVF_1_1ICFGNode_html_a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">SVF::ICFGNode::FunExitBlock</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00062">ICFGNode.h:62</a></div></div>
|
|
402
400
|
</div><!-- fragment -->
|
|
403
401
|
</div>
|
|
404
402
|
</div>
|
|
@@ -426,8 +424,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
426
424
|
</table>
|
|
427
425
|
</div><div class="memdoc">
|
|
428
426
|
|
|
429
|
-
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#
|
|
430
|
-
<div class="fragment"><div class="line"><a name="
|
|
427
|
+
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00346">346</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
428
|
+
<div class="fragment"><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  {</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  <span class="keywordflow">return</span> node->getNodeKind() == <a class="code" href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">FunExitBlock</a>;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  }</div><div class="ttc" id="classSVF_1_1ICFGNode_html_a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">SVF::ICFGNode::FunExitBlock</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00062">ICFGNode.h:62</a></div></div>
|
|
431
429
|
</div><!-- fragment -->
|
|
432
430
|
</div>
|
|
433
431
|
</div>
|
|
@@ -455,8 +453,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
455
453
|
</table>
|
|
456
454
|
</div><div class="memdoc">
|
|
457
455
|
|
|
458
|
-
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#
|
|
459
|
-
<div class="fragment"><div class="line"><a name="
|
|
456
|
+
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00351">351</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
457
|
+
<div class="fragment"><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  {</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  <span class="keywordflow">return</span> node->getNodeKind() == <a class="code" href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">FunExitBlock</a>;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  }</div><div class="ttc" id="classSVF_1_1ICFGNode_html_a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a74f598c1c86b023680bb2685aa8ab376acf25925678f7fa5fba01766bd06a1fb8">SVF::ICFGNode::FunExitBlock</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00062">ICFGNode.h:62</a></div></div>
|
|
460
458
|
</div><!-- fragment -->
|
|
461
459
|
</div>
|
|
462
460
|
</div>
|
|
@@ -485,8 +483,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
485
483
|
|
|
486
484
|
<p>Return actual return parameter. </p>
|
|
487
485
|
|
|
488
|
-
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#
|
|
489
|
-
<div class="fragment"><div class="line"><a name="
|
|
486
|
+
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00323">323</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
487
|
+
<div class="fragment"><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  {</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1FunExitICFGNode.html#ac3765c6a34ddff0018e38ce644d96641">formalRet</a>;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  }</div><div class="ttc" id="classSVF_1_1FunExitICFGNode_html_ac3765c6a34ddff0018e38ce644d96641"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html#ac3765c6a34ddff0018e38ce644d96641">SVF::FunExitICFGNode::formalRet</a></div><div class="ttdeci">const SVFVar * formalRet</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00312">ICFGNode.h:312</a></div></div>
|
|
490
488
|
</div><!-- fragment -->
|
|
491
489
|
</div>
|
|
492
490
|
</div>
|
|
@@ -517,8 +515,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
517
515
|
|
|
518
516
|
<p>Reimplemented from <a class="el" href="classSVF_1_1ICFGNode.html#ae526280cca2d6cbb2868c80461bc16da">SVF::ICFGNode</a>.</p>
|
|
519
517
|
|
|
520
|
-
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#
|
|
521
|
-
<div class="fragment"><div class="line"><a name="
|
|
518
|
+
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00317">317</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
519
|
+
<div class="fragment"><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  {</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ICFGNode.html#a03587dbd558d8fffe25307b42e3195be">fun</a>;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  }</div><div class="ttc" id="classSVF_1_1ICFGNode_html_a03587dbd558d8fffe25307b42e3195be"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a03587dbd558d8fffe25307b42e3195be">SVF::ICFGNode::fun</a></div><div class="ttdeci">const SVFFunction * fun</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00132">ICFGNode.h:132</a></div></div>
|
|
522
520
|
</div><!-- fragment -->
|
|
523
521
|
</div>
|
|
524
522
|
</div>
|
|
@@ -552,7 +550,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
552
550
|
<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#l00094">BasicTypes.h:94</a></div></div>
|
|
553
551
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a3cb226930eeaf558575e09e5b65e0223"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a3cb226930eeaf558575e09e5b65e0223">SVF::SVFUtil::getFunExitBB</a></div><div class="ttdeci">const BasicBlock * getFunExitBB(const Function *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00520">LLVMUtil.h:520</a></div></div>
|
|
554
552
|
<div class="ttc" id="classSVF_1_1SVFValue_html_a2409c01221b9a6632655cee43d1b35e4"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">SVF::SVFValue::getName</a></div><div class="ttdeci">const std::string getName() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00249">SVFBasicTypes.h:249</a></div></div>
|
|
555
|
-
<div class="ttc" id="classSVF_1_1FunExitICFGNode_html_a54dfbbebbfe18a8a493656d6ad8663be"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html#a54dfbbebbfe18a8a493656d6ad8663be">SVF::FunExitICFGNode::getFun</a></div><div class="ttdeci">const SVFFunction * getFun() const</div><div class="ttdoc">Return function. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
553
|
+
<div class="ttc" id="classSVF_1_1FunExitICFGNode_html_a54dfbbebbfe18a8a493656d6ad8663be"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html#a54dfbbebbfe18a8a493656d6ad8663be">SVF::FunExitICFGNode::getFun</a></div><div class="ttdeci">const SVFFunction * getFun() const</div><div class="ttdoc">Return function. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00317">ICFGNode.h:317</a></div></div>
|
|
556
554
|
<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>
|
|
557
555
|
<div class="ttc" id="classSVF_1_1ICFGNode_html_a6c68f52dd90728073fb79141df9b0661"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a6c68f52dd90728073fb79141df9b0661">SVF::ICFGNode::getSVFStmts</a></div><div class="ttdeci">const SVFStmtList & getSVFStmts() const</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00121">ICFGNode.h:121</a></div></div>
|
|
558
556
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00072">LLVMUtil.h:72</a></div></div>
|
|
@@ -581,30 +579,6 @@ Additional Inherited Members</h2></td></tr>
|
|
|
581
579
|
</table>
|
|
582
580
|
</div><div class="memdoc">
|
|
583
581
|
|
|
584
|
-
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00313">313</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
585
|
-
|
|
586
|
-
</div>
|
|
587
|
-
</div>
|
|
588
|
-
<a id="adfcebc33f3c36b8145074d370dfa1cb9"></a>
|
|
589
|
-
<h2 class="memtitle"><span class="permalink"><a href="#adfcebc33f3c36b8145074d370dfa1cb9">◆ </a></span>fun</h2>
|
|
590
|
-
|
|
591
|
-
<div class="memitem">
|
|
592
|
-
<div class="memproto">
|
|
593
|
-
<table class="mlabels">
|
|
594
|
-
<tr>
|
|
595
|
-
<td class="mlabels-left">
|
|
596
|
-
<table class="memname">
|
|
597
|
-
<tr>
|
|
598
|
-
<td class="memname">const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* SVF::FunExitICFGNode::fun</td>
|
|
599
|
-
</tr>
|
|
600
|
-
</table>
|
|
601
|
-
</td>
|
|
602
|
-
<td class="mlabels-right">
|
|
603
|
-
<span class="mlabels"><span class="mlabel">private</span></span> </td>
|
|
604
|
-
</tr>
|
|
605
|
-
</table>
|
|
606
|
-
</div><div class="memdoc">
|
|
607
|
-
|
|
608
582
|
<p class="definition">Definition at line <a class="el" href="ICFGNode_8h_source.html#l00312">312</a> of file <a class="el" href="ICFGNode_8h_source.html">ICFGNode.h</a>.</p>
|
|
609
583
|
|
|
610
584
|
</div>
|
|
@@ -332,7 +332,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
332
332
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::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>
|
|
333
333
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00390">SVFUtil.cpp:390</a></div></div>
|
|
334
334
|
<div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_a48ff6fc4badc79ad3204ae9bd95cc540"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#a48ff6fc4badc79ad3204ae9bd95cc540">SVF::AndersenWaveDiff::createAndersenWaveDiff</a></div><div class="ttdeci">static AndersenWaveDiff * createAndersenWaveDiff(SVFIR *_pag)</div><div class="ttdoc">Create an singleton instance directly instead of invoking llvm pass manager. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00430">Andersen.h:430</a></div></div>
|
|
335
|
-
<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#
|
|
335
|
+
<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#l00363">ICFGNode.h:363</a></div></div>
|
|
336
336
|
<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>
|
|
337
337
|
<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>
|
|
338
338
|
<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>
|
|
@@ -1084,7 +1084,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1084
1084
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::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>
|
|
1085
1085
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00390">SVFUtil.cpp:390</a></div></div>
|
|
1086
1086
|
<div class="ttc" id="classSVF_1_1ICFG_html_a47b5fe922b0339980fd49a89ecffd74d"><div class="ttname"><a href="classSVF_1_1ICFG.html#a47b5fe922b0339980fd49a89ecffd74d">SVF::ICFG::getCallBlock</a></div><div class="ttdeci">CallICFGNode * getCallBlock(const Instruction *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00242">ICFG.h:242</a></div></div>
|
|
1087
|
-
<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#
|
|
1087
|
+
<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#l00363">ICFGNode.h:363</a></div></div>
|
|
1088
1088
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00206">SVFUtil.h:206</a></div></div>
|
|
1089
1089
|
<div class="ttc" id="classSVF_1_1ICFG_html_af6dc72c9ba19d41cc11439a7c632af48"><div class="ttname"><a href="classSVF_1_1ICFG.html#af6dc72c9ba19d41cc11439a7c632af48">SVF::ICFG::addCallBlock</a></div><div class="ttdeci">CallICFGNode * addCallBlock(const Instruction *cs)</div><div class="ttdoc">Get/Add a call node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00235">ICFG.h:235</a></div></div>
|
|
1090
1090
|
</div><!-- fragment -->
|
|
@@ -1440,7 +1440,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1440
1440
|
<div class="fragment"><div class="line"><a name="l00223"></a><span class="lineno"> 223</span> {</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) && <span class="stringliteral">"not a call instruction?"</span>);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) && <span class="stringliteral">"associating an intrinsic debug instruction with an ICFGNode!"</span>);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <a class="code" href="classSVF_1_1RetICFGNode.html">RetICFGNode</a>* node = <a class="code" href="classSVF_1_1ICFG.html#a3b59f9ba22e03d323bc2fa5928902243">getRetBlock</a>(inst);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="keywordflow">if</span>(node==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  node = <a class="code" href="classSVF_1_1ICFG.html#aae7bcc56ba04d08cc030f108b06299ae">addRetBlock</a>(inst);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a> (node!=<span class="keyword">nullptr</span> && <span class="stringliteral">"no RetICFGNode for this instruction?"</span>);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  <span class="keywordflow">return</span> node;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span> }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00193">SVFUtil.h:193</a></div></div>
|
|
1441
1441
|
<div class="ttc" id="classSVF_1_1ICFG_html_a3b59f9ba22e03d323bc2fa5928902243"><div class="ttname"><a href="classSVF_1_1ICFG.html#a3b59f9ba22e03d323bc2fa5928902243">SVF::ICFG::getRetBlock</a></div><div class="ttdeci">RetICFGNode * getRetBlock(const Instruction *cs)</div><div class="ttdoc">Get/Add a return node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00251">ICFG.h:251</a></div></div>
|
|
1442
1442
|
<div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
|
|
1443
|
-
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
1443
|
+
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00458">ICFGNode.h:458</a></div></div>
|
|
1444
1444
|
<div class="ttc" id="classSVF_1_1ICFG_html_aae7bcc56ba04d08cc030f108b06299ae"><div class="ttname"><a href="classSVF_1_1ICFG.html#aae7bcc56ba04d08cc030f108b06299ae">SVF::ICFG::addRetBlock</a></div><div class="ttdeci">RetICFGNode * addRetBlock(const Instruction *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00258">ICFG.h:258</a></div></div>
|
|
1445
1445
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00206">SVFUtil.h:206</a></div></div>
|
|
1446
1446
|
</div><!-- fragment -->
|
|
@@ -1693,20 +1693,20 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1693
1693
|
<div class="ttc" id="classSVF_1_1PTACallGraph_html_a5f5a5ec7e707a21994d301cc07d32a5a"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a5f5a5ec7e707a21994d301cc07d32a5a">SVF::PTACallGraph::FunctionSet</a></div><div class="ttdeci">Set< const SVFFunction * > FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00228">PTACallGraph.h:228</a></div></div>
|
|
1694
1694
|
<div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00179">BasicTypes.h:179</a></div></div>
|
|
1695
1695
|
<div class="ttc" id="classSVF_1_1ICFG_html_a66cb50d8c176f800f06d9cb8924eb896"><div class="ttname"><a href="classSVF_1_1ICFG.html#a66cb50d8c176f800f06d9cb8924eb896">SVF::ICFG::getRetICFGNode</a></div><div class="ttdeci">RetICFGNode * getRetICFGNode(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00222">ICFG.cpp:222</a></div></div>
|
|
1696
|
-
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
1696
|
+
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00458">ICFGNode.h:458</a></div></div>
|
|
1697
1697
|
<div class="ttc" id="classSVF_1_1CallPE_html"><div class="ttname"><a href="classSVF_1_1CallPE.html">SVF::CallPE</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00477">SVFStatements.h:477</a></div></div>
|
|
1698
1698
|
<div class="ttc" id="classSVF_1_1ICFG_html_adc66b547720b9271e6805edea0b9d01f"><div class="ttname"><a href="classSVF_1_1ICFG.html#adc66b547720b9271e6805edea0b9d01f">SVF::ICFG::getCallICFGNode</a></div><div class="ttdeci">CallICFGNode * getCallICFGNode(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00209">ICFG.cpp:209</a></div></div>
|
|
1699
1699
|
<div class="ttc" id="classSVF_1_1FunEntryICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunEntryICFGNode.html">SVF::FunEntryICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00251">ICFGNode.h:251</a></div></div>
|
|
1700
1700
|
<div class="ttc" id="classSVF_1_1ICFG_html_acc261924103bd0c357acd3acfa6cf38a"><div class="ttname"><a href="classSVF_1_1ICFG.html#acc261924103bd0c357acd3acfa6cf38a">SVF::ICFG::getFunEntryBlock</a></div><div class="ttdeci">FunEntryICFGNode * getFunEntryBlock(const SVFFunction *fun)</div><div class="ttdoc">Get/Add a function entry node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00203">ICFG.h:203</a></div></div>
|
|
1701
1701
|
<div class="ttc" id="classSVF_1_1ICFG_html_a534625b10673efe5b0f344bfebf9b3cf"><div class="ttname"><a href="classSVF_1_1ICFG.html#a534625b10673efe5b0f344bfebf9b3cf">SVF::ICFG::removeICFGEdge</a></div><div class="ttdeci">void removeICFGEdge(ICFGEdge *edge)</div><div class="ttdoc">Remove a SVFG edge. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00116">ICFG.h:116</a></div></div>
|
|
1702
1702
|
<div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00076">BasicTypes.h:76</a></div></div>
|
|
1703
|
-
<div class="ttc" id="classSVF_1_1CallICFGNode_html_aa11226a2e4fa6a7b1d78006cc8ca0518"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#aa11226a2e4fa6a7b1d78006cc8ca0518">SVF::CallICFGNode::isIndirectCall</a></div><div class="ttdeci">bool isIndirectCall() const</div><div class="ttdoc">Return true if this is an indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
1703
|
+
<div class="ttc" id="classSVF_1_1CallICFGNode_html_aa11226a2e4fa6a7b1d78006cc8ca0518"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#aa11226a2e4fa6a7b1d78006cc8ca0518">SVF::CallICFGNode::isIndirectCall</a></div><div class="ttdeci">bool isIndirectCall() const</div><div class="ttdoc">Return true if this is an indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00411">ICFGNode.h:411</a></div></div>
|
|
1704
1704
|
<div class="ttc" id="classSVF_1_1ICFG_html_a4a44849b596c89ab14d2e5f18366e848"><div class="ttname"><a href="classSVF_1_1ICFG.html#a4a44849b596c89ab14d2e5f18366e848">SVF::ICFG::addRetEdge</a></div><div class="ttdeci">ICFGEdge * addRetEdge(ICFGNode *srcNode, ICFGNode *dstNode, const Instruction *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00392">ICFG.cpp:392</a></div></div>
|
|
1705
1705
|
<div class="ttc" id="classSVF_1_1ICFGEdge_html_a395c34788e98950bc43e8cb44313e429acb8fba7c61b08ec952f1b65643d7a84b"><div class="ttname"><a href="classSVF_1_1ICFGEdge.html#a395c34788e98950bc43e8cb44313e429acb8fba7c61b08ec952f1b65643d7a84b">SVF::ICFGEdge::IntraCF</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00053">ICFGEdge.h:53</a></div></div>
|
|
1706
1706
|
<div class="ttc" id="classSVF_1_1ICFG_html_a22d7f37a0cb2df90f73c1f2e3eaa71c6"><div class="ttname"><a href="classSVF_1_1ICFG.html#a22d7f37a0cb2df90f73c1f2e3eaa71c6">SVF::ICFG::getFunExitBlock</a></div><div class="ttdeci">FunExitICFGNode * getFunExitBlock(const SVFFunction *fun)</div><div class="ttdoc">Get/Add a function exit node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00219">ICFG.h:219</a></div></div>
|
|
1707
1707
|
<div class="ttc" id="classSVF_1_1ICFG_html_a999956500bbd605326531480546db9ba"><div class="ttname"><a href="classSVF_1_1ICFG.html#a999956500bbd605326531480546db9ba">SVF::ICFG::dump</a></div><div class="ttdeci">void dump(const std::string &file, bool simple=false)</div><div class="ttdoc">Dump graph into dot file. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00410">ICFG.cpp:410</a></div></div>
|
|
1708
|
-
<div class="ttc" id="classSVF_1_1CallICFGNode_html_a674753d5ca0fbe28674acb25291f2bcf"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const Instruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
1709
|
-
<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#
|
|
1708
|
+
<div class="ttc" id="classSVF_1_1CallICFGNode_html_a674753d5ca0fbe28674acb25291f2bcf"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const Instruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00380">ICFGNode.h:380</a></div></div>
|
|
1709
|
+
<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#l00363">ICFGNode.h:363</a></div></div>
|
|
1710
1710
|
<div class="ttc" id="classSVF_1_1Options_html_aea29a835c54fab800117e57de00e0b1e"><div class="ttname"><a href="classSVF_1_1Options.html#aea29a835c54fab800117e57de00e0b1e">SVF::Options::DumpICFG</a></div><div class="ttdeci">static const llvm::cl::opt< bool > DumpICFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00136">Options.h:136</a></div></div>
|
|
1711
1711
|
<div class="ttc" id="classSVF_1_1ICFG_html_aa662baae5682ef6ec5084fa4147c9709"><div class="ttname"><a href="classSVF_1_1ICFG.html#aa662baae5682ef6ec5084fa4147c9709">SVF::ICFG::hasIntraICFGEdge</a></div><div class="ttdeci">ICFGEdge * hasIntraICFGEdge(ICFGNode *src, ICFGNode *dst, ICFGEdge::ICFGEdgeK kind)</div><div class="ttdoc">Whether we has a SVFG edge. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00263">ICFG.cpp:263</a></div></div>
|
|
1712
1712
|
<div class="ttc" id="classSVF_1_1FunExitICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html">SVF::FunExitICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00308">ICFGNode.h:308</a></div></div>
|
|
@@ -254,10 +254,10 @@ Private Attributes</h2></td></tr>
|
|
|
254
254
|
<div class="fragment"><div class="line"><a name="l00178"></a><span class="lineno"> 178</span> {</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callICFGNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a702a888f2175dd32e2467bff27385e02">getCallICFGNode</a>(cs);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <a class="code" href="classSVF_1_1RetICFGNode.html">RetICFGNode</a>* retBlockNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a7c1125c992eec20e118e6bfc12cb8bfb">getRetICFGNode</a>(cs);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">if</span>(callee){</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">isExtCall</a>(callee))</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  {</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">addIntraEdge</a>(callICFGNode, retBlockNode); </div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  }</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  <a class="code" href="classSVF_1_1FunEntryICFGNode.html">FunEntryICFGNode</a>* calleeEntryNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#a0dca4655c2f6112a5be1f921b8e81076">getFunEntryICFGNode</a>(callee);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <a class="code" href="classSVF_1_1FunExitICFGNode.html">FunExitICFGNode</a>* calleeExitNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#af1b2d2839f811a00103df87342dfc919">getFunExitICFGNode</a>(callee);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#abde033687317d47909ee45db7501723f">addCallEdge</a>(callICFGNode, calleeEntryNode, cs);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#a4a44849b596c89ab14d2e5f18366e848">addRetEdge</a>(calleeExitNode, retBlockNode, cs);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  }</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  }</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  <span class="keywordflow">else</span>{</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <a class="code" href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">icfg</a>-><a class="code" href="classSVF_1_1ICFG.html#adafd8bbb91507a9a78a3f16305812afc">addIntraEdge</a>(callICFGNode, retBlockNode); </div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  }</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span> }</div><div class="ttc" id="classSVF_1_1ICFG_html_abde033687317d47909ee45db7501723f"><div class="ttname"><a href="classSVF_1_1ICFG.html#abde033687317d47909ee45db7501723f">SVF::ICFG::addCallEdge</a></div><div class="ttdeci">ICFGEdge * addCallEdge(ICFGNode *srcNode, ICFGNode *dstNode, const Instruction *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00375">ICFG.cpp:375</a></div></div>
|
|
255
255
|
<div class="ttc" id="classSVF_1_1ICFGBuilder_html_a7c1125c992eec20e118e6bfc12cb8bfb"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a7c1125c992eec20e118e6bfc12cb8bfb">SVF::ICFGBuilder::getRetICFGNode</a></div><div class="ttdeci">RetICFGNode * getRetICFGNode(const Instruction *cs)</div><div class="ttdoc">Add a return node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00092">ICFGBuilder.h:92</a></div></div>
|
|
256
256
|
<div class="ttc" id="classSVF_1_1ICFG_html_af1b2d2839f811a00103df87342dfc919"><div class="ttname"><a href="classSVF_1_1ICFG.html#af1b2d2839f811a00103df87342dfc919">SVF::ICFG::getFunExitICFGNode</a></div><div class="ttdeci">FunExitICFGNode * getFunExitICFGNode(const SVFFunction *fun)</div><div class="ttdoc">Add a function exit node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00251">ICFG.cpp:251</a></div></div>
|
|
257
|
-
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
257
|
+
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00458">ICFGNode.h:458</a></div></div>
|
|
258
258
|
<div class="ttc" id="classSVF_1_1FunEntryICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunEntryICFGNode.html">SVF::FunEntryICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00251">ICFGNode.h:251</a></div></div>
|
|
259
259
|
<div class="ttc" id="classSVF_1_1ICFG_html_a4a44849b596c89ab14d2e5f18366e848"><div class="ttname"><a href="classSVF_1_1ICFG.html#a4a44849b596c89ab14d2e5f18366e848">SVF::ICFG::addRetEdge</a></div><div class="ttdeci">ICFGEdge * addRetEdge(ICFGNode *srcNode, ICFGNode *dstNode, const Instruction *cs)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00392">ICFG.cpp:392</a></div></div>
|
|
260
|
-
<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#
|
|
260
|
+
<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#l00363">ICFGNode.h:363</a></div></div>
|
|
261
261
|
<div class="ttc" id="classSVF_1_1ICFG_html_a0dca4655c2f6112a5be1f921b8e81076"><div class="ttname"><a href="classSVF_1_1ICFG.html#a0dca4655c2f6112a5be1f921b8e81076">SVF::ICFG::getFunEntryICFGNode</a></div><div class="ttdeci">FunEntryICFGNode * getFunEntryICFGNode(const SVFFunction *fun)</div><div class="ttdoc">Add a function entry node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00242">ICFG.cpp:242</a></div></div>
|
|
262
262
|
<div class="ttc" id="classSVF_1_1FunExitICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunExitICFGNode.html">SVF::FunExitICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00308">ICFGNode.h:308</a></div></div>
|
|
263
263
|
<div class="ttc" id="classSVF_1_1ICFGBuilder_html_adefeaad9c02000f263430dfee7149ea6"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#adefeaad9c02000f263430dfee7149ea6">SVF::ICFGBuilder::icfg</a></div><div class="ttdeci">ICFG * icfg</div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00048">ICFGBuilder.h:48</a></div></div>
|
|
@@ -432,7 +432,7 @@ Private Attributes</h2></td></tr>
|
|
|
432
432
|
<div class="fragment"><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVFUtil::isCallSite</a>(inst) && <span class="stringliteral">"not a call instruction?"</span>);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVFUtil::isNonInstricCallSite</a>(inst) && <span class="stringliteral">"associating an intrinsic debug instruction with an ICFGNode!"</span>);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callICFGNode = <a class="code" href="classSVF_1_1ICFGBuilder.html#a702a888f2175dd32e2467bff27385e02">getCallICFGNode</a>(inst);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <a class="code" href="classSVF_1_1ICFGBuilder.html#af1fb4795e58130d639b75c354f67a6ab">addICFGInterEdges</a>(inst, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">getCallee</a>(inst)); <span class="comment">//creating interprocedural edges</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="keywordflow">return</span> callICFGNode;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span> }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2e08ce822223842fa6a73fd659b1a526"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2e08ce822223842fa6a73fd659b1a526">SVF::SVFUtil::isCallSite</a></div><div class="ttdeci">bool isCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a call or invoke instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00193">SVFUtil.h:193</a></div></div>
|
|
433
433
|
<div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
|
|
434
434
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a145abbd2958629718fbca41d25c3124d"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a145abbd2958629718fbca41d25c3124d">SVF::SVFUtil::getCallee</a></div><div class="ttdeci">const SVFFunction * getCallee(const CallSite cs)</div><div class="ttdoc">Return callee of a callsite. Return null if this is an indirect call. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00263">SVFUtil.h:263</a></div></div>
|
|
435
|
-
<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#
|
|
435
|
+
<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#l00363">ICFGNode.h:363</a></div></div>
|
|
436
436
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a8d8216a92140d982303f83ea424ddc91"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a8d8216a92140d982303f83ea424ddc91">SVF::SVFUtil::isNonInstricCallSite</a></div><div class="ttdeci">bool isNonInstricCallSite(const Instruction *inst)</div><div class="ttdoc">Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls...</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00206">SVFUtil.h:206</a></div></div>
|
|
437
437
|
<div class="ttc" id="classSVF_1_1ICFGBuilder_html_a702a888f2175dd32e2467bff27385e02"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a702a888f2175dd32e2467bff27385e02">SVF::ICFGBuilder::getCallICFGNode</a></div><div class="ttdeci">CallICFGNode * getCallICFGNode(const Instruction *cs)</div><div class="ttdoc">Add a call node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00087">ICFGBuilder.h:87</a></div></div>
|
|
438
438
|
<div class="ttc" id="classSVF_1_1ICFGBuilder_html_af1fb4795e58130d639b75c354f67a6ab"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#af1fb4795e58130d639b75c354f67a6ab">SVF::ICFGBuilder::addICFGInterEdges</a></div><div class="ttdeci">void addICFGInterEdges(const Instruction *cs, const SVFFunction *callee)</div><div class="ttdoc">Create edges between ICFG nodes across functions. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8cpp_source.html#l00177">ICFGBuilder.cpp:177</a></div></div>
|
|
@@ -544,7 +544,7 @@ Private Attributes</h2></td></tr>
|
|
|
544
544
|
<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#l00081">SVFBasicTypes.h:81</a></div></div>
|
|
545
545
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a2f9959fa23ab4bdc65ca36fbda8c1b70"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a2f9959fa23ab4bdc65ca36fbda8c1b70">SVF::SVFUtil::getNextInsts</a></div><div class="ttdeci">void getNextInsts(const Instruction *curInst, std::vector< const Instruction *> &instList)</div><div class="ttdoc">Get the next instructions following control flow. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00214">LLVMUtil.cpp:214</a></div></div>
|
|
546
546
|
<div class="ttc" id="classSVF_1_1ICFG_html_aa4517b497891823eccbad2e790e2a440"><div class="ttname"><a href="classSVF_1_1ICFG.html#aa4517b497891823eccbad2e790e2a440">SVF::ICFG::addConditionalIntraEdge</a></div><div class="ttdeci">ICFGEdge * addConditionalIntraEdge(ICFGNode *srcNode, ICFGNode *dstNode, const Value *condition, s32_t branchCondVal)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00355">ICFG.cpp:355</a></div></div>
|
|
547
|
-
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
547
|
+
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00458">ICFGNode.h:458</a></div></div>
|
|
548
548
|
<div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
|
|
549
549
|
<div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00076">BasicTypes.h:76</a></div></div>
|
|
550
550
|
<div class="ttc" id="classSVF_1_1ICFGBuilder_html_a42f190f697284e6da7a6211ce7adecfe"><div class="ttname"><a href="classSVF_1_1ICFGBuilder.html#a42f190f697284e6da7a6211ce7adecfe">SVF::ICFGBuilder::getOrAddBlockICFGNode</a></div><div class="ttdeci">ICFGNode * getOrAddBlockICFGNode(const Instruction *inst)</div><div class="ttdoc">Add/Get a basic block ICFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGBuilder_8h_source.html#l00075">ICFGBuilder.h:75</a></div></div>
|
|
@@ -404,7 +404,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
404
404
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</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="SVFIR_8h_source.html#l00106">SVFIR.h:106</a></div></div>
|
|
405
405
|
<div class="ttc" id="classSVF_1_1GenericNode_html_a391e996d695b114530120723da1d003e"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a391e996d695b114530120723da1d003e">SVF::GenericNode::getNodeKind</a></div><div class="ttdeci">GNodeK getNodeKind() const</div><div class="ttdoc">Get node kind. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00171">GenericGraph.h:171</a></div></div>
|
|
406
406
|
<div class="ttc" id="classSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
|
|
407
|
-
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
407
|
+
<div class="ttc" id="classSVF_1_1RetICFGNode_html"><div class="ttname"><a href="classSVF_1_1RetICFGNode.html">SVF::RetICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00458">ICFGNode.h:458</a></div></div>
|
|
408
408
|
<div class="ttc" id="classSVF_1_1GenericGraph_html_a4bef15157423cef48dc7333a803cd27d"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">SVF::GenericGraph::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00365">GenericGraph.h:365</a></div></div>
|
|
409
409
|
<div class="ttc" id="classSVF_1_1FunEntryICFGNode_html"><div class="ttname"><a href="classSVF_1_1FunEntryICFGNode.html">SVF::FunEntryICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00251">ICFGNode.h:251</a></div></div>
|
|
410
410
|
<div class="ttc" id="classSVF_1_1IntraCFGEdge_html"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html">SVF::IntraCFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00113">ICFGEdge.h:113</a></div></div>
|
|
@@ -414,7 +414,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
414
414
|
<div class="ttc" id="classSVF_1_1GenericEdge_html_ab47ca533c415841ef75456cbad439589"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">SVF::GenericEdge::getSrcNode</a></div><div class="ttdeci">NodeType * getSrcNode() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00085">GenericGraph.h:85</a></div></div>
|
|
415
415
|
<div class="ttc" id="classSVF_1_1ICFG_html_a498f84068ef643a94970aeb171607e31"><div class="ttname"><a href="classSVF_1_1ICFG.html#a498f84068ef643a94970aeb171607e31">SVF::ICFG::iterator</a></div><div class="ttdeci">ICFGNodeIDToNodeMapTy::iterator iterator</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00055">ICFG.h:55</a></div></div>
|
|
416
416
|
<div class="ttc" id="classSVF_1_1GepStmt_html_a959a9c95d25f90fd7acc8e6e36056b56"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a959a9c95d25f90fd7acc8e6e36056b56">SVF::GepStmt::getConstantFieldIdx</a></div><div class="ttdeci">s32_t getConstantFieldIdx() const</div><div class="ttdoc">Field index of the gep statement if it access the field of a struct. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00453">SVFStatements.h:453</a></div></div>
|
|
417
|
-
<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#
|
|
417
|
+
<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#l00363">ICFGNode.h:363</a></div></div>
|
|
418
418
|
<div class="ttc" id="classSVF_1_1ICFGNode_html_a5a148eccec266a67e4ff5364d7268fff"><div class="ttname"><a href="classSVF_1_1ICFGNode.html#a5a148eccec266a67e4ff5364d7268fff">SVF::ICFGNode::iterator</a></div><div class="ttdeci">ICFGEdge::ICFGEdgeSetTy::iterator iterator</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00065">ICFGNode.h:65</a></div></div>
|
|
419
419
|
<div class="ttc" id="namespaceSVF_html_af83f5c5c68cdb80576cdc1d62c01b207"><div class="ttname"><a href="namespaceSVF.html#af83f5c5c68cdb80576cdc1d62c01b207">SVF::operator<<</a></div><div class="ttdeci">OutStream & operator<<(OutStream &o, const std::pair< F, S > &var)</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00286">BasicTypes.h:286</a></div></div>
|
|
420
420
|
<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>
|
|
@@ -724,7 +724,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
724
724
|
<div class="ttc" id="classSVF_1_1InterMSSAPHISVFGNode_html_a5b4ba4b7753d786ff2e3d834bda017ce"><div class="ttname"><a href="classSVF_1_1InterMSSAPHISVFGNode.html#a5b4ba4b7753d786ff2e3d834bda017ce">SVF::InterMSSAPHISVFGNode::getCallSite</a></div><div class="ttdeci">const CallICFGNode * getCallSite() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00429">SVFGNode.h:429</a></div></div>
|
|
725
725
|
<div class="ttc" id="classSVF_1_1InterMSSAPHISVFGNode_html_a242d8967d6fc10ba37e3f0103081ec01"><div class="ttname"><a href="classSVF_1_1InterMSSAPHISVFGNode.html#a242d8967d6fc10ba37e3f0103081ec01">SVF::InterMSSAPHISVFGNode::getFun</a></div><div class="ttdeci">const SVFFunction * getFun() const</div><div class="ttdoc">Get the function of this SVFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGNode_8h_source.html#l00423">SVFGNode.h:423</a></div></div>
|
|
726
726
|
<div class="ttc" id="classSVF_1_1SVFValue_html_a2409c01221b9a6632655cee43d1b35e4"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">SVF::SVFValue::getName</a></div><div class="ttdeci">const std::string getName() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00249">SVFBasicTypes.h:249</a></div></div>
|
|
727
|
-
<div class="ttc" id="classSVF_1_1CallICFGNode_html_a674753d5ca0fbe28674acb25291f2bcf"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const Instruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#
|
|
727
|
+
<div class="ttc" id="classSVF_1_1CallICFGNode_html_a674753d5ca0fbe28674acb25291f2bcf"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const Instruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00380">ICFGNode.h:380</a></div></div>
|
|
728
728
|
<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>
|
|
729
729
|
<div class="ttc" id="classSVF_1_1MSSAPHISVFGNode_html_a1a07b3e8da65d17c16ed34a4f66b80dd"><div class="ttname"><a href="classSVF_1_1MSSAPHISVFGNode.html#a1a07b3e8da65d17c16ed34a4f66b80dd">SVF::MSSAPHISVFGNode::toString</a></div><div class="ttdeci">virtual const std::string toString() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00095">SVFG.cpp:95</a></div></div>
|
|
730
730
|
</div><!-- fragment -->
|