svf-tools 1.0.793 → 1.0.795

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.
Files changed (81) hide show
  1. package/SVF-doxygen/html/AccessPath_8cpp_source.html +1 -1
  2. package/SVF-doxygen/html/CDGBuilder_8cpp_source.html +1 -1
  3. package/SVF-doxygen/html/CDG_8h_source.html +27 -28
  4. package/SVF-doxygen/html/CFBasicBlockGBuilder_8cpp_source.html +3 -3
  5. package/SVF-doxygen/html/CFBasicBlockGBuilder_8h_source.html +1 -1
  6. package/SVF-doxygen/html/CFBasicBlockG_8h_source.html +308 -310
  7. package/SVF-doxygen/html/CHG_8cpp.html +2 -2
  8. package/SVF-doxygen/html/CHG_8cpp_source.html +3 -3
  9. package/SVF-doxygen/html/LLVMModule_8cpp_source.html +5 -5
  10. package/SVF-doxygen/html/MemSSA_8cpp_source.html +1 -1
  11. package/SVF-doxygen/html/PointerAnalysis_8cpp_source.html +2 -2
  12. package/SVF-doxygen/html/SVFG_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/SVFType_8cpp.html +2 -2
  14. package/SVF-doxygen/html/SVFType_8cpp_source.html +57 -55
  15. package/SVF-doxygen/html/SVFType_8h.html +2 -2
  16. package/SVF-doxygen/html/SVFType_8h_source.html +10 -10
  17. package/SVF-doxygen/html/SVFUtil_8cpp_source.html +2 -2
  18. package/SVF-doxygen/html/SVFValue_8cpp.html +46 -0
  19. package/SVF-doxygen/html/SVFValue_8cpp_source.html +266 -256
  20. package/SVF-doxygen/html/SVFValue_8h_source.html +14 -14
  21. package/SVF-doxygen/html/SaberCondAllocator_8cpp_source.html +2 -2
  22. package/SVF-doxygen/html/SymbolTableInfo_8cpp_source.html +1 -1
  23. package/SVF-doxygen/html/VFG_8cpp_source.html +1 -1
  24. package/SVF-doxygen/html/WTO_8h_source.html +2 -2
  25. package/SVF-doxygen/html/classSVF_1_1AccessPath.html +1 -1
  26. package/SVF-doxygen/html/classSVF_1_1CDG.html +1 -1
  27. package/SVF-doxygen/html/classSVF_1_1CDGBuilder.html +1 -1
  28. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGBuilder.html +2 -2
  29. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGWTO.html +1 -1
  30. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGWTO_1_1TailBuilder.html +1 -1
  31. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGraph.html +91 -91
  32. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockNode.html +24 -27
  33. package/SVF-doxygen/html/classSVF_1_1CHGraph.html +2 -2
  34. package/SVF-doxygen/html/classSVF_1_1LLVMModuleSet.html +5 -5
  35. package/SVF-doxygen/html/classSVF_1_1MemSSA.html +1 -1
  36. package/SVF-doxygen/html/classSVF_1_1PointerAnalysis.html +2 -2
  37. package/SVF-doxygen/html/classSVF_1_1SVFArrayType.html +4 -4
  38. package/SVF-doxygen/html/classSVF_1_1SVFBasicBlock.html +63 -63
  39. package/SVF-doxygen/html/classSVF_1_1SVFFunction.html +32 -32
  40. package/SVF-doxygen/html/classSVF_1_1SVFFunctionType.html +4 -4
  41. package/SVF-doxygen/html/classSVF_1_1SVFG.html +1 -1
  42. package/SVF-doxygen/html/classSVF_1_1SVFInstruction.html +4 -4
  43. package/SVF-doxygen/html/classSVF_1_1SVFIntegerType.html +7 -7
  44. package/SVF-doxygen/html/classSVF_1_1SVFLoopAndDomInfo.html +116 -116
  45. package/SVF-doxygen/html/classSVF_1_1SVFOtherType.html +4 -4
  46. package/SVF-doxygen/html/classSVF_1_1SVFPointerType.html +4 -4
  47. package/SVF-doxygen/html/classSVF_1_1SVFStructType.html +4 -4
  48. package/SVF-doxygen/html/classSVF_1_1SVFType.html +1 -10
  49. package/SVF-doxygen/html/classSVF_1_1SaberCondAllocator.html +2 -2
  50. package/SVF-doxygen/html/classSVF_1_1StInfo-members.html +1 -1
  51. package/SVF-doxygen/html/classSVF_1_1StInfo.html +14 -23
  52. package/SVF-doxygen/html/classSVF_1_1SymbolTableInfo.html +1 -1
  53. package/SVF-doxygen/html/classSVF_1_1VFG.html +1 -1
  54. package/SVF-doxygen/html/functions_a.html +1 -1
  55. package/SVF-doxygen/html/functions_func.html +1 -1
  56. package/SVF-doxygen/html/globals.html +2 -0
  57. package/SVF-doxygen/html/globals_func.html +2 -0
  58. package/SVF-doxygen/html/menudata.js +4 -2
  59. package/SVF-doxygen/html/namespaceSVF.html +41 -12
  60. package/SVF-doxygen/html/namespaceSVF_1_1SVFUtil.html +2 -2
  61. package/SVF-doxygen/html/namespacemembers.html +3 -36
  62. package/SVF-doxygen/html/namespacemembers_a.html +112 -0
  63. package/SVF-doxygen/html/namespacemembers_func.html +3 -6
  64. package/SVF-doxygen/html/namespacemembers_func_a.html +82 -0
  65. package/SVF-doxygen/html/search/all_0.js +1 -1
  66. package/SVF-doxygen/html/search/all_1.js +1 -1
  67. package/SVF-doxygen/html/search/all_f.js +1 -1
  68. package/SVF-doxygen/html/search/functions_0.js +1 -1
  69. package/SVF-doxygen/html/search/functions_1.js +1 -1
  70. package/SVF-doxygen/html/search/functions_f.js +1 -1
  71. package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01SVF_1_1CDG_01_5_01_4.html +19 -20
  72. package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01SVF_1_1CFBasicBlockGraph_01_5_01_4.html +102 -102
  73. package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFBasicBlockNode_01_5_01_4_01_4.html +1 -1
  74. package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFBasicBlockGraph_01_5_01_4.html +2 -2
  75. package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFBasicBlockNode_01_5_01_4.html +1 -1
  76. package/package.json +1 -1
  77. package/svf/include/Graphs/CDG.h +2 -3
  78. package/svf/include/Graphs/CFBasicBlockG.h +3 -5
  79. package/svf/lib/SVFIR/SVFType.cpp +2 -0
  80. package/svf/lib/SVFIR/SVFValue.cpp +7 -0
  81. package/svf-llvm/CMakeLists.txt +1 -1
@@ -4866,7 +4866,7 @@ Additional Inherited Members</h2></td></tr>
4866
4866
  <div class="ttc" id="aclassSVF_1_1SVFG_html_a67750c461e3543f6b75d2dd510d67297"><div class="ttname"><a href="classSVF_1_1SVFG.html#a67750c461e3543f6b75d2dd510d67297">SVF::SVFG::addSVFGEdge</a></div><div class="ttdeci">bool addSVFGEdge(SVFGEdge *edge)</div><div class="ttdoc">Add SVFG edge.</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00248">SVFG.h:248</a></div></div>
4867
4867
  <div class="ttc" id="aclassSVF_1_1VFG_html_a6c3daf2777cc5f76ce07241f803720f3"><div class="ttname"><a href="classSVF_1_1VFG.html#a6c3daf2777cc5f76ce07241f803720f3">SVF::VFG::globalVFGNodes</a></div><div class="ttdeci">GlobalVFGNodeSet globalVFGNodes</div><div class="ttdoc">set of global store VFG nodes</div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00102">VFG.h:102</a></div></div>
4868
4868
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a38122734cbe71551a420dfb7fee2012e"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a38122734cbe71551a420dfb7fee2012e">SVF::GenericGraph::nodeNum</a></div><div class="ttdeci">u32_t nodeNum</div><div class="ttdoc">total num of edge</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00456">GenericGraph.h:456</a></div></div>
4869
- <div class="ttc" id="aclassSVF_1_1SVFFunction_html_ae578002917b4ccbf28f172dba30d1d58"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ae578002917b4ccbf28f172dba30d1d58">SVF::SVFFunction::isVarArg</a></div><div class="ttdeci">bool isVarArg() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8cpp_source.html#l00180">SVFValue.cpp:180</a></div></div>
4869
+ <div class="ttc" id="aclassSVF_1_1SVFFunction_html_ae578002917b4ccbf28f172dba30d1d58"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ae578002917b4ccbf28f172dba30d1d58">SVF::SVFFunction::isVarArg</a></div><div class="ttdeci">bool isVarArg() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8cpp_source.html#l00187">SVFValue.cpp:187</a></div></div>
4870
4870
  <div class="ttc" id="anamespaceSVF_html_a5dfa3fa5129bacdc0be0c051ccf386df"><div class="ttname"><a href="namespaceSVF.html#a5dfa3fa5129bacdc0be0c051ccf386df">SVF::SVFGNode</a></div><div class="ttdeci">VFGNode SVFGNode</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00043">SVFG.h:43</a></div></div>
4871
4871
  <div class="ttc" id="aclassSVF_1_1SVFG_html_a74aa824a68f99756ac3e65231c7bc2e9"><div class="ttname"><a href="classSVF_1_1SVFG.html#a74aa824a68f99756ac3e65231c7bc2e9">SVF::SVFG::addActualOUTSVFGNode</a></div><div class="ttdeci">void addActualOUTSVFGNode(const CallICFGNode *callsite, const MRVer *resVer, const NodeID nodeId)</div><div class="ttdoc">Add memory callsite chi SVFG node.</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00427">SVFG.h:427</a></div></div>
4872
4872
  <div class="ttc" id="aclassSVF_1_1CallMU_html"><div class="ttname"><a href="classSVF_1_1CallMU.html">SVF::CallMU</a></div><div class="ttdef"><b>Definition:</b> <a href="MSSAMuChi_8h_source.html#l00221">MSSAMuChi.h:221</a></div></div>
@@ -293,10 +293,10 @@ Additional Inherited Members</h2></td></tr>
293
293
  <p>predecessor Instructions </p>
294
294
  <p>Constructor without name, set name with <a class="el" href="classSVF_1_1SVFValue.html#a8325774df9d65d78ef6a66fef59b9a97">setName()</a> </p>
295
295
 
296
- <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00260">260</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
297
- <div class="fragment"><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; : <a class="code" href="classSVF_1_1SVFValue.html#af38497e11745949a8a1eeead143efd58">SVFValue</a>(ty, k), <a class="code" href="classSVF_1_1SVFInstruction.html#ade4a9596b2c288f2f74ce813d21fcaa0">bb</a>(<a class="code" href="cJSON_8h.html#a1a175e87536301df98c805ac0636ad7c">b</a>), <a class="code" href="classSVF_1_1SVFInstruction.html#ab092c00376cf697bc4a3b7baa9f3a2f3">terminator</a>(tm), <a class="code" href="classSVF_1_1SVFInstruction.html#a61e04a2e436a4c141980ee06854b74ca">ret</a>(isRet)</div>
298
- <div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;{</div>
299
- <div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;}</div>
296
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00267">267</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
297
+ <div class="fragment"><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; : <a class="code" href="classSVF_1_1SVFValue.html#af38497e11745949a8a1eeead143efd58">SVFValue</a>(ty, k), <a class="code" href="classSVF_1_1SVFInstruction.html#ade4a9596b2c288f2f74ce813d21fcaa0">bb</a>(<a class="code" href="cJSON_8h.html#a1a175e87536301df98c805ac0636ad7c">b</a>), <a class="code" href="classSVF_1_1SVFInstruction.html#ab092c00376cf697bc4a3b7baa9f3a2f3">terminator</a>(tm), <a class="code" href="classSVF_1_1SVFInstruction.html#a61e04a2e436a4c141980ee06854b74ca">ret</a>(isRet)</div>
298
+ <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;{</div>
299
+ <div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;}</div>
300
300
  </div><!-- fragment -->
301
301
  </div>
302
302
  </div>
@@ -280,13 +280,13 @@ Additional Inherited Members</h2></td></tr>
280
280
 
281
281
  <p>Implements <a class="el" href="classSVF_1_1SVFType.html#af03420fef3b660f998d0a2f09a18a615">SVF::SVFType</a>.</p>
282
282
 
283
- <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00024">24</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
284
- <div class="fragment"><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;{</div>
285
- <div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFIntegerType.html#a887e8255bb19f85d80d737ac753f0a87">signAndWidth</a> &lt; 0)</div>
286
- <div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; os &lt;&lt; <span class="charliteral">&#39;i&#39;</span> &lt;&lt; -<a class="code" href="classSVF_1_1SVFIntegerType.html#a887e8255bb19f85d80d737ac753f0a87">signAndWidth</a>;</div>
287
- <div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">else</span></div>
288
- <div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; os &lt;&lt; <span class="charliteral">&#39;u&#39;</span> &lt;&lt; <a class="code" href="classSVF_1_1SVFIntegerType.html#a887e8255bb19f85d80d737ac753f0a87">signAndWidth</a>;</div>
289
- <div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;}</div>
283
+ <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00026">26</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
284
+ <div class="fragment"><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;{</div>
285
+ <div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFIntegerType.html#a887e8255bb19f85d80d737ac753f0a87">signAndWidth</a> &lt; 0)</div>
286
+ <div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; os &lt;&lt; <span class="charliteral">&#39;i&#39;</span> &lt;&lt; -<a class="code" href="classSVF_1_1SVFIntegerType.html#a887e8255bb19f85d80d737ac753f0a87">signAndWidth</a>;</div>
287
+ <div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">else</span></div>
288
+ <div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; os &lt;&lt; <span class="charliteral">&#39;u&#39;</span> &lt;&lt; <a class="code" href="classSVF_1_1SVFIntegerType.html#a887e8255bb19f85d80d737ac753f0a87">signAndWidth</a>;</div>
289
+ <div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;}</div>
290
290
  </div><!-- fragment -->
291
291
  </div>
292
292
  </div>
@@ -350,36 +350,36 @@ Friends</h2></td></tr>
350
350
  </table>
351
351
  </div><div class="memdoc">
352
352
 
353
- <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00053">53</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
354
- <div class="fragment"><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;{</div>
355
- <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">if</span> (bbKey == bbValue)</div>
356
- <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
357
- <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
358
- <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="comment">// An unreachable node is dominated by anything.</span></div>
359
- <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">isUnreachable</a>(bbValue))</div>
360
- <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; {</div>
361
- <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
362
- <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div>
363
- <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; </div>
364
- <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="comment">// And dominates nothing.</span></div>
365
- <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">isUnreachable</a>(bbKey))</div>
366
- <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; {</div>
367
- <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
368
- <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</div>
369
- <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
370
- <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*,BBSet&gt;</a>&amp; <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a> = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a2fc6b806a436d8fa65863f6cef99e716">getDomTreeMap</a>();</div>
371
- <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*,BBSet&gt;::const_iterator</a> mapIter = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a>.find(bbKey);</div>
372
- <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span> (mapIter != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a>.end())</div>
353
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00060">60</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
354
+ <div class="fragment"><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;{</div>
355
+ <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span> (bbKey == bbValue)</div>
356
+ <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
357
+ <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
358
+ <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// An unreachable node is dominated by anything.</span></div>
359
+ <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">isUnreachable</a>(bbValue))</div>
360
+ <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; {</div>
361
+ <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
362
+ <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</div>
363
+ <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
364
+ <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">// And dominates nothing.</span></div>
365
+ <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">isUnreachable</a>(bbKey))</div>
373
366
  <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; {</div>
374
- <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ad478ac88bc07cf4d6d0ad3517b2c4ab3">BBSet</a> &amp; dtBBs = mapIter-&gt;second;</div>
375
- <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">if</span> (dtBBs.find(bbValue) != dtBBs.end())</div>
376
- <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; {</div>
377
- <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
378
- <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
379
- <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div>
380
- <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; </div>
381
- <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
382
- <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;}</div>
367
+ <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
368
+ <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div>
369
+ <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
370
+ <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*,BBSet&gt;</a>&amp; <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a> = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a2fc6b806a436d8fa65863f6cef99e716">getDomTreeMap</a>();</div>
371
+ <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*,BBSet&gt;::const_iterator</a> mapIter = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a>.find(bbKey);</div>
372
+ <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (mapIter != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a>.end())</div>
373
+ <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div>
374
+ <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ad478ac88bc07cf4d6d0ad3517b2c4ab3">BBSet</a> &amp; dtBBs = mapIter-&gt;second;</div>
375
+ <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (dtBBs.find(bbValue) != dtBBs.end())</div>
376
+ <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; {</div>
377
+ <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
378
+ <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
379
+ <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
380
+ <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
381
+ <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
382
+ <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;}</div>
383
383
  </div><!-- fragment -->
384
384
  </div>
385
385
  </div>
@@ -411,31 +411,31 @@ Friends</h2></td></tr>
411
411
 
412
412
  <p>find nearest common post dominator of two basic blocks </p>
413
413
 
414
- <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00114">114</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
415
- <div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;{</div>
416
- <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; assert(A &amp;&amp; B &amp;&amp; <span class="stringliteral">&quot;Pointers are not valid&quot;</span>);</div>
417
- <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; assert(A-&gt;<a class="code" href="classSVF_1_1SVFBasicBlock.html#af48d08d3adf7dd3ed69d97e4df360059">getParent</a>() == B-&gt;<a class="code" href="classSVF_1_1SVFBasicBlock.html#af48d08d3adf7dd3ed69d97e4df360059">getParent</a>() &amp;&amp;</div>
418
- <div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="stringliteral">&quot;Two blocks are not in same function&quot;</span>);</div>
419
- <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; </div>
420
- <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="comment">// Use level information to go up the tree until the levels match. Then</span></div>
421
- <div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="comment">// continue going up til we arrive at the same node.</span></div>
422
- <div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">while</span> (A != B)</div>
423
- <div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; {</div>
424
- <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="comment">// no common PDominator</span></div>
425
- <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">if</span>(A == <a class="code" href="cJSON_8cpp.html#a1a05ede2ad100bf5de5dfa7ccdfa4397">NULL</a>) <span class="keywordflow">return</span> <a class="code" href="cJSON_8cpp.html#a1a05ede2ad100bf5de5dfa7ccdfa4397">NULL</a>;</div>
426
- <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> lvA = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">getBBPDomLevel</a>().find(A);</div>
427
- <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> lvB = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">getBBPDomLevel</a>().find(B);</div>
428
- <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; assert(lvA != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">getBBPDomLevel</a>().end() &amp;&amp; lvB != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">getBBPDomLevel</a>().end());</div>
429
- <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; </div>
430
- <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">if</span> (lvA-&gt;second &lt; lvB-&gt;second) std::swap(A, B);</div>
431
- <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; </div>
432
- <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> lvAIdom = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ae8a308d5ee34c0eb4a6c1278565e5907">getBB2PIdom</a>().find(A);</div>
433
- <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; assert(lvAIdom != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ae8a308d5ee34c0eb4a6c1278565e5907">getBB2PIdom</a>().end());</div>
434
- <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; A = lvAIdom-&gt;second;</div>
435
- <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div>
414
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00121">121</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
415
+ <div class="fragment"><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;{</div>
416
+ <div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; assert(A &amp;&amp; B &amp;&amp; <span class="stringliteral">&quot;Pointers are not valid&quot;</span>);</div>
417
+ <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; assert(A-&gt;<a class="code" href="classSVF_1_1SVFBasicBlock.html#af48d08d3adf7dd3ed69d97e4df360059">getParent</a>() == B-&gt;<a class="code" href="classSVF_1_1SVFBasicBlock.html#af48d08d3adf7dd3ed69d97e4df360059">getParent</a>() &amp;&amp;</div>
418
+ <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="stringliteral">&quot;Two blocks are not in same function&quot;</span>);</div>
419
+ <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; </div>
420
+ <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="comment">// Use level information to go up the tree until the levels match. Then</span></div>
421
+ <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="comment">// continue going up til we arrive at the same node.</span></div>
422
+ <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">while</span> (A != B)</div>
423
+ <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; {</div>
424
+ <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="comment">// no common PDominator</span></div>
425
+ <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span>(A == <a class="code" href="cJSON_8cpp.html#a1a05ede2ad100bf5de5dfa7ccdfa4397">NULL</a>) <span class="keywordflow">return</span> <a class="code" href="cJSON_8cpp.html#a1a05ede2ad100bf5de5dfa7ccdfa4397">NULL</a>;</div>
426
+ <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> lvA = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">getBBPDomLevel</a>().find(A);</div>
427
+ <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> lvB = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">getBBPDomLevel</a>().find(B);</div>
428
+ <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; assert(lvA != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">getBBPDomLevel</a>().end() &amp;&amp; lvB != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">getBBPDomLevel</a>().end());</div>
436
429
  <div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
437
- <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> A;</div>
438
- <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;}</div>
430
+ <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (lvA-&gt;second &lt; lvB-&gt;second) std::swap(A, B);</div>
431
+ <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; </div>
432
+ <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span> lvAIdom = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ae8a308d5ee34c0eb4a6c1278565e5907">getBB2PIdom</a>().find(A);</div>
433
+ <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; assert(lvAIdom != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ae8a308d5ee34c0eb4a6c1278565e5907">getBB2PIdom</a>().end());</div>
434
+ <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; A = lvAIdom-&gt;second;</div>
435
+ <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
436
+ <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; </div>
437
+ <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> A;</div>
438
+ <div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;}</div>
439
439
  </div><!-- fragment -->
440
440
  </div>
441
441
  </div>
@@ -705,24 +705,24 @@ Friends</h2></td></tr>
705
705
  </table>
706
706
  </div><div class="memdoc">
707
707
 
708
- <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00034">34</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
709
- <div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;{</div>
710
- <div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#abe37f8896e2491a7a60be3fbfde8123c">hasLoopInfo</a>(bb))</div>
711
- <div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; {</div>
712
- <div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ae5e2b154313b4330bb015050aec72a1f">LoopBBs</a> blocks = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a0fb893485fc3df088d921762514faf66">getLoopInfo</a>(bb);</div>
713
- <div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">if</span> (!blocks.empty())</div>
714
- <div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; {</div>
715
- <div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a>* block : blocks)</div>
716
- <div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div>
717
- <div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a>* succ : block-&gt;<a class="code" href="classSVF_1_1SVFBasicBlock.html#a66f51cd41e93ad055c4a0c2874e73fae">getSuccessors</a>())</div>
718
- <div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; {</div>
719
- <div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">if</span> ((std::find(blocks.begin(), blocks.end(), succ)==blocks.end()))</div>
720
- <div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; exitbbs.push_back(succ);</div>
721
- <div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div>
722
- <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div>
723
- <div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; }</div>
724
- <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }</div>
725
- <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;}</div>
708
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00041">41</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
709
+ <div class="fragment"><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div>
710
+ <div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#abe37f8896e2491a7a60be3fbfde8123c">hasLoopInfo</a>(bb))</div>
711
+ <div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; {</div>
712
+ <div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ae5e2b154313b4330bb015050aec72a1f">LoopBBs</a> blocks = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a0fb893485fc3df088d921762514faf66">getLoopInfo</a>(bb);</div>
713
+ <div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">if</span> (!blocks.empty())</div>
714
+ <div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; {</div>
715
+ <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a>* block : blocks)</div>
716
+ <div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; {</div>
717
+ <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a>* succ : block-&gt;<a class="code" href="classSVF_1_1SVFBasicBlock.html#a66f51cd41e93ad055c4a0c2874e73fae">getSuccessors</a>())</div>
718
+ <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; {</div>
719
+ <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">if</span> ((std::find(blocks.begin(), blocks.end(), succ)==blocks.end()))</div>
720
+ <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; exitbbs.push_back(succ);</div>
721
+ <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div>
722
+ <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div>
723
+ <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; }</div>
724
+ <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div>
725
+ <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;}</div>
726
726
  </div><!-- fragment -->
727
727
  </div>
728
728
  </div>
@@ -774,12 +774,12 @@ Friends</h2></td></tr>
774
774
  </table>
775
775
  </div><div class="memdoc">
776
776
 
777
- <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00027">27</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
778
- <div class="fragment"><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div>
779
- <div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; assert(<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#abe37f8896e2491a7a60be3fbfde8123c">hasLoopInfo</a>(bb) &amp;&amp; <span class="stringliteral">&quot;loopinfo does not exist (bb not in a loop)&quot;</span>);</div>
780
- <div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*, LoopBBs&gt;::const_iterator</a> mapIter = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ad578beedd9a6b64a57f82d799e6b8fa7">bb2LoopMap</a>.find(bb);</div>
781
- <div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">return</span> mapIter-&gt;second;</div>
782
- <div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;}</div>
777
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00034">34</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
778
+ <div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;{</div>
779
+ <div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; assert(<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#abe37f8896e2491a7a60be3fbfde8123c">hasLoopInfo</a>(bb) &amp;&amp; <span class="stringliteral">&quot;loopinfo does not exist (bb not in a loop)&quot;</span>);</div>
780
+ <div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*, LoopBBs&gt;::const_iterator</a> mapIter = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ad578beedd9a6b64a57f82d799e6b8fa7">bb2LoopMap</a>.find(bb);</div>
781
+ <div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">return</span> mapIter-&gt;second;</div>
782
+ <div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;}</div>
783
783
  </div><!-- fragment -->
784
784
  </div>
785
785
  </div>
@@ -920,16 +920,16 @@ Friends</h2></td></tr>
920
920
  </table>
921
921
  </div><div class="memdoc">
922
922
 
923
- <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00140">140</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
924
- <div class="fragment"><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;{</div>
925
- <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#abe37f8896e2491a7a60be3fbfde8123c">hasLoopInfo</a>(bb))</div>
926
- <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; {</div>
927
- <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ae5e2b154313b4330bb015050aec72a1f">LoopBBs</a>&amp; blocks = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a0fb893485fc3df088d921762514faf66">getLoopInfo</a>(bb);</div>
928
- <div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; assert(!blocks.empty() &amp;&amp; <span class="stringliteral">&quot;no available loop info?&quot;</span>);</div>
929
- <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">return</span> blocks.front() == bb;</div>
930
- <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
931
- <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
932
- <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;}</div>
923
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00147">147</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
924
+ <div class="fragment"><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;{</div>
925
+ <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#abe37f8896e2491a7a60be3fbfde8123c">hasLoopInfo</a>(bb))</div>
926
+ <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; {</div>
927
+ <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ae5e2b154313b4330bb015050aec72a1f">LoopBBs</a>&amp; blocks = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a0fb893485fc3df088d921762514faf66">getLoopInfo</a>(bb);</div>
928
+ <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; assert(!blocks.empty() &amp;&amp; <span class="stringliteral">&quot;no available loop info?&quot;</span>);</div>
929
+ <div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">return</span> blocks.front() == bb;</div>
930
+ <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }</div>
931
+ <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
932
+ <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;}</div>
933
933
  </div><!-- fragment -->
934
934
  </div>
935
935
  </div>
@@ -1032,35 +1032,35 @@ Friends</h2></td></tr>
1032
1032
  </table>
1033
1033
  </div><div class="memdoc">
1034
1034
 
1035
- <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00084">84</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
1036
- <div class="fragment"><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;{</div>
1037
- <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">if</span> (bbKey == bbValue)</div>
1038
- <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
1039
- <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; </div>
1040
- <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">// An unreachable node is dominated by anything.</span></div>
1041
- <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">isUnreachable</a>(bbValue))</div>
1042
- <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; {</div>
1043
- <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
1044
- <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
1045
- <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; </div>
1046
- <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="comment">// And dominates nothing.</span></div>
1047
- <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">isUnreachable</a>(bbKey))</div>
1048
- <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; {</div>
1049
- <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
1050
- <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div>
1051
- <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; </div>
1052
- <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*,BBSet&gt;</a>&amp; <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a> = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ad07f95e790b5c3a50c864155aa20a083">getPostDomTreeMap</a>();</div>
1053
- <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*,BBSet&gt;::const_iterator</a> mapIter = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a>.find(bbKey);</div>
1054
- <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (mapIter != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a>.end())</div>
1035
+ <p class="definition">Definition at line <a class="el" href="SVFValue_8cpp_source.html#l00091">91</a> of file <a class="el" href="SVFValue_8cpp_source.html">SVFValue.cpp</a>.</p>
1036
+ <div class="fragment"><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;{</div>
1037
+ <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">if</span> (bbKey == bbValue)</div>
1038
+ <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
1039
+ <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
1040
+ <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">// An unreachable node is dominated by anything.</span></div>
1041
+ <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">isUnreachable</a>(bbValue))</div>
1042
+ <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; {</div>
1043
+ <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
1044
+ <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; }</div>
1045
+ <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
1046
+ <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">// And dominates nothing.</span></div>
1047
+ <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">isUnreachable</a>(bbKey))</div>
1055
1048
  <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; {</div>
1056
- <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ad478ac88bc07cf4d6d0ad3517b2c4ab3">BBSet</a> &amp; dtBBs = mapIter-&gt;second;</div>
1057
- <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (dtBBs.find(bbValue) != dtBBs.end())</div>
1058
- <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; {</div>
1059
- <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
1060
- <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
1061
- <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
1062
- <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
1063
- <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;}</div>
1049
+ <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
1050
+ <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; }</div>
1051
+ <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; </div>
1052
+ <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*,BBSet&gt;</a>&amp; <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a> = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ad07f95e790b5c3a50c864155aa20a083">getPostDomTreeMap</a>();</div>
1053
+ <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFBasicBlock*,BBSet&gt;::const_iterator</a> mapIter = <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a>.find(bbKey);</div>
1054
+ <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">if</span> (mapIter != <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#a34296b98ee8dd1bfc0b1ae7fe327cde3">dtBBsMap</a>.end())</div>
1055
+ <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; {</div>
1056
+ <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFLoopAndDomInfo.html#ad478ac88bc07cf4d6d0ad3517b2c4ab3">BBSet</a> &amp; dtBBs = mapIter-&gt;second;</div>
1057
+ <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">if</span> (dtBBs.find(bbValue) != dtBBs.end())</div>
1058
+ <div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; {</div>
1059
+ <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
1060
+ <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
1061
+ <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
1062
+ <div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
1063
+ <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;}</div>
1064
1064
  </div><!-- fragment -->
1065
1065
  </div>
1066
1066
  </div>
@@ -1344,7 +1344,7 @@ Friends</h2></td></tr>
1344
1344
  <div class="ttc" id="aclassSVF_1_1SVFLoopAndDomInfo_html_ac285502846c993f149b6bcc3e04f767e"><div class="ttname"><a href="classSVF_1_1SVFLoopAndDomInfo.html#ac285502846c993f149b6bcc3e04f767e">SVF::SVFLoopAndDomInfo::getBBPDomLevel</a></div><div class="ttdeci">const Map&lt; const SVFBasicBlock *, u32_t &gt; &amp; getBBPDomLevel() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00118">SVFValue.h:118</a></div></div>
1345
1345
  <div class="ttc" id="aclassSVF_1_1SVFBasicBlock_html_a66f51cd41e93ad055c4a0c2874e73fae"><div class="ttname"><a href="classSVF_1_1SVFBasicBlock.html#a66f51cd41e93ad055c4a0c2874e73fae">SVF::SVFBasicBlock::getSuccessors</a></div><div class="ttdeci">const std::vector&lt; const SVFBasicBlock * &gt; &amp; getSuccessors() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00601">SVFValue.h:601</a></div></div>
1346
1346
  <div class="ttc" id="aclassSVF_1_1SVFBasicBlock_html_af48d08d3adf7dd3ed69d97e4df360059"><div class="ttname"><a href="classSVF_1_1SVFBasicBlock.html#af48d08d3adf7dd3ed69d97e4df360059">SVF::SVFBasicBlock::getParent</a></div><div class="ttdeci">const SVFFunction * getParent() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00577">SVFValue.h:577</a></div></div>
1347
- <div class="ttc" id="aclassSVF_1_1SVFLoopAndDomInfo_html_a0fb893485fc3df088d921762514faf66"><div class="ttname"><a href="classSVF_1_1SVFLoopAndDomInfo.html#a0fb893485fc3df088d921762514faf66">SVF::SVFLoopAndDomInfo::getLoopInfo</a></div><div class="ttdeci">const LoopBBs &amp; getLoopInfo(const SVFBasicBlock *bb) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8cpp_source.html#l00027">SVFValue.cpp:27</a></div></div>
1347
+ <div class="ttc" id="aclassSVF_1_1SVFLoopAndDomInfo_html_a0fb893485fc3df088d921762514faf66"><div class="ttname"><a href="classSVF_1_1SVFLoopAndDomInfo.html#a0fb893485fc3df088d921762514faf66">SVF::SVFLoopAndDomInfo::getLoopInfo</a></div><div class="ttdeci">const LoopBBs &amp; getLoopInfo(const SVFBasicBlock *bb) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8cpp_source.html#l00034">SVFValue.cpp:34</a></div></div>
1348
1348
  <div class="ttc" id="aclassSVF_1_1SVFLoopAndDomInfo_html_aac4d533d1c7abfefbd54507357e240f4"><div class="ttname"><a href="classSVF_1_1SVFLoopAndDomInfo.html#aac4d533d1c7abfefbd54507357e240f4">SVF::SVFLoopAndDomInfo::isUnreachable</a></div><div class="ttdeci">bool isUnreachable(const SVFBasicBlock *bb) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00149">SVFValue.h:149</a></div></div>
1349
1349
  <div class="ttc" id="aclassSVF_1_1SVFLoopAndDomInfo_html_af3eeabc8b81b2aff27ae3577195a1eff"><div class="ttname"><a href="classSVF_1_1SVFLoopAndDomInfo.html#af3eeabc8b81b2aff27ae3577195a1eff">SVF::SVFLoopAndDomInfo::reachableBBs</a></div><div class="ttdeci">BBList reachableBBs</div><div class="ttdoc">reachable BasicBlocks from the function entry.</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00060">SVFValue.h:60</a></div></div>
1350
1350
  <div class="ttc" id="acJSON_8cpp_html_a1a05ede2ad100bf5de5dfa7ccdfa4397"><div class="ttname"><a href="cJSON_8cpp.html#a1a05ede2ad100bf5de5dfa7ccdfa4397">NULL</a></div><div class="ttdeci">return NULL</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l01173">cJSON.cpp:1173</a></div></div>
@@ -285,10 +285,10 @@ Additional Inherited Members</h2></td></tr>
285
285
 
286
286
  <p>Implements <a class="el" href="classSVF_1_1SVFType.html#af03420fef3b660f998d0a2f09a18a615">SVF::SVFType</a>.</p>
287
287
 
288
- <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00047">47</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
289
- <div class="fragment"><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;{</div>
290
- <div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; os &lt;&lt; <a class="code" href="classSVF_1_1SVFOtherType.html#aff34f4a447b923dbb524c30adcb4aef3">repr</a>;</div>
291
- <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;}</div>
288
+ <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00049">49</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
289
+ <div class="fragment"><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div>
290
+ <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; os &lt;&lt; <a class="code" href="classSVF_1_1SVFOtherType.html#aff34f4a447b923dbb524c30adcb4aef3">repr</a>;</div>
291
+ <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;}</div>
292
292
  </div><!-- fragment -->
293
293
  </div>
294
294
  </div>
@@ -280,10 +280,10 @@ Additional Inherited Members</h2></td></tr>
280
280
 
281
281
  <p>Implements <a class="el" href="classSVF_1_1SVFType.html#af03420fef3b660f998d0a2f09a18a615">SVF::SVFType</a>.</p>
282
282
 
283
- <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00019">19</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
284
- <div class="fragment"><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;{</div>
285
- <div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; os &lt;&lt; *<a class="code" href="classSVF_1_1SVFPointerType.html#a067e8f095942e095aa1721dee3a241ea">getPtrElementType</a>() &lt;&lt; <span class="charliteral">&#39;*&#39;</span>;</div>
286
- <div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;}</div>
283
+ <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00021">21</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
284
+ <div class="fragment"><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;{</div>
285
+ <div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; os &lt;&lt; *<a class="code" href="classSVF_1_1SVFPointerType.html#a067e8f095942e095aa1721dee3a241ea">getPtrElementType</a>() &lt;&lt; <span class="charliteral">&#39;*&#39;</span>;</div>
286
+ <div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;}</div>
287
287
  </div><!-- fragment -->
288
288
  </div>
289
289
  </div>
@@ -282,10 +282,10 @@ Additional Inherited Members</h2></td></tr>
282
282
 
283
283
  <p>Implements <a class="el" href="classSVF_1_1SVFType.html#af03420fef3b660f998d0a2f09a18a615">SVF::SVFType</a>.</p>
284
284
 
285
- <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00037">37</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
286
- <div class="fragment"><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;{</div>
287
- <div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;S.&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1SVFStructType.html#a21782d68a616fb955d4988382eea61cf">name</a>;</div>
288
- <div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;}</div>
285
+ <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00039">39</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
286
+ <div class="fragment"><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;{</div>
287
+ <div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; os &lt;&lt; <span class="stringliteral">&quot;S.&quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1SVFStructType.html#a21782d68a616fb955d4988382eea61cf">name</a>;</div>
288
+ <div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;}</div>
289
289
  </div><!-- fragment -->
290
290
  </div>
291
291
  </div>
@@ -605,13 +605,6 @@ Friends</h2></td></tr>
605
605
  </div><div class="memdoc">
606
606
  <dl class="section note"><dt>Note</dt><dd>Use <code>os&lt;&lt;svfType</code> or <code>svfType.print(os)</code> when possible to avoid string concatenation. </dd></dl>
607
607
 
608
- <p class="definition">Definition at line <a class="el" href="SVFType_8cpp_source.html#l00006">6</a> of file <a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a>.</p>
609
- <div class="fragment"><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;{</div>
610
- <div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; std::ostringstream os;</div>
611
- <div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; <a class="code" href="classSVF_1_1SVFType.html#af03420fef3b660f998d0a2f09a18a615">print</a>(os);</div>
612
- <div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; <span class="keywordflow">return</span> os.str();</div>
613
- <div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;}</div>
614
- </div><!-- fragment -->
615
608
  </div>
616
609
  </div>
617
610
  <h2 class="groupheader">Friends And Related Function Documentation</h2>
@@ -768,9 +761,8 @@ Friends</h2></td></tr>
768
761
 
769
762
  </div>
770
763
  </div>
771
- <hr/>The documentation for this class was generated from the following files:<ul>
764
+ <hr/>The documentation for this class was generated from the following file:<ul>
772
765
  <li>/home/runner/work/SVF/SVF/svf/include/SVFIR/<a class="el" href="SVFType_8h_source.html">SVFType.h</a></li>
773
- <li>/home/runner/work/SVF/SVF/svf/lib/SVFIR/<a class="el" href="SVFType_8cpp_source.html">SVFType.cpp</a></li>
774
766
  </ul>
775
767
  </div><!-- contents -->
776
768
  <div class="ttc" id="aclassSVF_1_1SVFType_html_a333e01a9c431c8f53bd2fc597bd5c40cac8c846ff3208d07a4a39c7a21433c6a5"><div class="ttname"><a href="classSVF_1_1SVFType.html#a333e01a9c431c8f53bd2fc597bd5c40cac8c846ff3208d07a4a39c7a21433c6a5">SVF::SVFType::SVFArrayTy</a></div><div class="ttdeci">@ SVFArrayTy</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00257">SVFType.h:257</a></div></div>
@@ -779,7 +771,6 @@ Friends</h2></td></tr>
779
771
  <div class="ttc" id="aclassSVF_1_1SVFType_html_a86ea48a882823de2e3e906220dc0111e"><div class="ttname"><a href="classSVF_1_1SVFType.html#a86ea48a882823de2e3e906220dc0111e">SVF::SVFType::typeinfo</a></div><div class="ttdeci">StInfo * typeinfo</div><div class="ttdoc">Return a pointer to the current type.</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00265">SVFType.h:265</a></div></div>
780
772
  <div class="ttc" id="aclassSVF_1_1SVFType_html_a333e01a9c431c8f53bd2fc597bd5c40ca01274de074f51be05f2ad6b2d0ca9dd6"><div class="ttname"><a href="classSVF_1_1SVFType.html#a333e01a9c431c8f53bd2fc597bd5c40ca01274de074f51be05f2ad6b2d0ca9dd6">SVF::SVFType::SVFFunctionTy</a></div><div class="ttdeci">@ SVFFunctionTy</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00255">SVFType.h:255</a></div></div>
781
773
  <div class="ttc" id="aclassSVF_1_1SVFType_html_a428617a1e7addda6094ddd80bdbb62c8"><div class="ttname"><a href="classSVF_1_1SVFType.html#a428617a1e7addda6094ddd80bdbb62c8">SVF::SVFType::kind</a></div><div class="ttdeci">GNodeK kind</div><div class="ttdoc">used for classof</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00262">SVFType.h:262</a></div></div>
782
- <div class="ttc" id="aclassSVF_1_1SVFType_html_af03420fef3b660f998d0a2f09a18a615"><div class="ttname"><a href="classSVF_1_1SVFType.html#af03420fef3b660f998d0a2f09a18a615">SVF::SVFType::print</a></div><div class="ttdeci">virtual void print(std::ostream &amp;os) const =0</div></div>
783
774
  <div class="ttc" id="aclassSVF_1_1SVFType_html_a333e01a9c431c8f53bd2fc597bd5c40cae8c18603570fa65fa5a9aabdf2f5d0a1"><div class="ttname"><a href="classSVF_1_1SVFType.html#a333e01a9c431c8f53bd2fc597bd5c40cae8c18603570fa65fa5a9aabdf2f5d0a1">SVF::SVFType::SVFPointerTy</a></div><div class="ttdeci">@ SVFPointerTy</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00253">SVFType.h:253</a></div></div>
784
775
  <div class="ttc" id="aclassSVF_1_1SVFType_html_a333e01a9c431c8f53bd2fc597bd5c40ca2862d2a6ef2e31bf7fa1cc2f72d65725"><div class="ttname"><a href="classSVF_1_1SVFType.html#a333e01a9c431c8f53bd2fc597bd5c40ca2862d2a6ef2e31bf7fa1cc2f72d65725">SVF::SVFType::SVFTy</a></div><div class="ttdeci">@ SVFTy</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00252">SVFType.h:252</a></div></div>
785
776
  <div class="ttc" id="aclassSVF_1_1SVFType_html_a25faa037b356801c8c678f8c00dada33"><div class="ttname"><a href="classSVF_1_1SVFType.html#a25faa037b356801c8c678f8c00dada33">SVF::SVFType::getPointerToTy</a></div><div class="ttdeci">const SVFPointerType * getPointerToTy</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00264">SVFType.h:264</a></div></div>