svf-tools 1.0.333 → 1.0.334

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 (142) hide show
  1. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +16 -7
  2. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +1 -1
  3. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
  4. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
  6. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +2 -2
  7. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +2 -2
  8. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
  9. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +4 -4
  10. package/SVF-doxygen/html/html/MemRegion_8h_source.html +2 -2
  11. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +2 -2
  12. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  13. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +2 -2
  14. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +1 -1
  15. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +4 -4
  16. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +16 -16
  17. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +22 -22
  18. package/SVF-doxygen/html/html/SVFIR_8h_source.html +16 -16
  19. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  20. package/SVF-doxygen/html/html/SVFStatements_8h.html +14 -12
  21. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +131 -122
  22. package/SVF-doxygen/html/html/VFGNode_8h_source.html +11 -11
  23. package/SVF-doxygen/html/html/VFG_8cpp_source.html +18 -18
  24. package/SVF-doxygen/html/html/VFG_8h_source.html +17 -16
  25. package/SVF-doxygen/html/html/annotated.html +271 -270
  26. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt-members.html +16 -10
  27. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +36 -14
  28. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.png +0 -0
  29. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt-members.html +145 -0
  30. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.html +770 -0
  31. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.png +0 -0
  32. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt-members.html +7 -11
  33. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +19 -138
  34. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt-members.html +2 -2
  35. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +39 -39
  36. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +3 -3
  37. package/SVF-doxygen/html/html/classSVF_1_1CallPE-members.html +19 -13
  38. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +43 -21
  39. package/SVF-doxygen/html/html/classSVF_1_1CallPE.png +0 -0
  40. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt-members.html +7 -11
  41. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +20 -139
  42. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +16 -9
  43. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +1 -1
  44. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt-members.html +16 -10
  45. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +36 -14
  46. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.png +0 -0
  47. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +1 -1
  48. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +1 -1
  49. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +1 -1
  50. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +3 -9
  51. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.png +0 -0
  52. package/SVF-doxygen/html/html/classSVF_1_1GepStmt-members.html +16 -10
  53. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +41 -19
  54. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.png +0 -0
  55. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +2 -2
  56. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt-members.html +16 -10
  57. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +36 -14
  58. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.png +0 -0
  59. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +8 -8
  60. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +6 -6
  61. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt-members.html +36 -29
  62. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +250 -31
  63. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt-members.html +17 -11
  64. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.html +39 -17
  65. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.png +0 -0
  66. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +2 -2
  67. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt-members.html +5 -9
  68. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +18 -137
  69. package/SVF-doxygen/html/html/classSVF_1_1RetPE-members.html +16 -10
  70. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +43 -21
  71. package/SVF-doxygen/html/html/classSVF_1_1RetPE.png +0 -0
  72. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +1 -1
  73. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +23 -23
  74. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +5 -5
  75. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +12 -8
  76. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.png +0 -0
  77. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt-members.html +16 -10
  78. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +36 -14
  79. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.png +0 -0
  80. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE-members.html +18 -12
  81. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +35 -13
  82. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.png +0 -0
  83. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE-members.html +17 -11
  84. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +35 -13
  85. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.png +0 -0
  86. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt-members.html +2 -2
  87. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +32 -32
  88. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +27 -27
  89. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt-members.html +17 -11
  90. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.html +37 -15
  91. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.png +0 -0
  92. package/SVF-doxygen/html/html/classes.html +91 -93
  93. package/SVF-doxygen/html/html/functions_a.html +10 -7
  94. package/SVF-doxygen/html/html/functions_c.html +16 -15
  95. package/SVF-doxygen/html/html/functions_func.html +7 -4
  96. package/SVF-doxygen/html/html/functions_func_c.html +24 -23
  97. package/SVF-doxygen/html/html/functions_func_g.html +26 -18
  98. package/SVF-doxygen/html/html/functions_func_o.html +5 -3
  99. package/SVF-doxygen/html/html/functions_func_t.html +1 -0
  100. package/SVF-doxygen/html/html/functions_g.html +30 -22
  101. package/SVF-doxygen/html/html/functions_l.html +5 -5
  102. package/SVF-doxygen/html/html/functions_m.html +1 -1
  103. package/SVF-doxygen/html/html/functions_o.html +14 -12
  104. package/SVF-doxygen/html/html/functions_p.html +18 -14
  105. package/SVF-doxygen/html/html/functions_r.html +2 -2
  106. package/SVF-doxygen/html/html/functions_s.html +10 -12
  107. package/SVF-doxygen/html/html/functions_t.html +4 -3
  108. package/SVF-doxygen/html/html/functions_v.html +3 -3
  109. package/SVF-doxygen/html/html/hierarchy.html +17 -16
  110. package/SVF-doxygen/html/html/namespaceSVF.html +2 -0
  111. package/SVF-doxygen/html/html/search/all_1.js +1 -0
  112. package/SVF-doxygen/html/html/search/all_10.js +6 -6
  113. package/SVF-doxygen/html/html/search/all_12.js +2 -2
  114. package/SVF-doxygen/html/html/search/all_13.js +7 -7
  115. package/SVF-doxygen/html/html/search/all_14.js +7 -7
  116. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  117. package/SVF-doxygen/html/html/search/all_16.js +2 -2
  118. package/SVF-doxygen/html/html/search/all_3.js +2 -2
  119. package/SVF-doxygen/html/html/search/all_7.js +8 -4
  120. package/SVF-doxygen/html/html/search/all_c.js +2 -2
  121. package/SVF-doxygen/html/html/search/all_d.js +1 -1
  122. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  123. package/SVF-doxygen/html/html/search/all_f.js +3 -3
  124. package/SVF-doxygen/html/html/search/classes_0.js +2 -1
  125. package/SVF-doxygen/html/html/search/functions_0.js +1 -0
  126. package/SVF-doxygen/html/html/search/functions_11.js +1 -1
  127. package/SVF-doxygen/html/html/search/functions_2.js +1 -1
  128. package/SVF-doxygen/html/html/search/functions_6.js +8 -4
  129. package/SVF-doxygen/html/html/search/functions_b.js +1 -1
  130. package/SVF-doxygen/html/html/search/functions_d.js +1 -1
  131. package/SVF-doxygen/html/html/search/variables_14.js +3 -3
  132. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  133. package/SVF-doxygen/html/html/search/variables_e.js +2 -2
  134. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
  135. package/include/Graphs/VFG.h +4 -4
  136. package/include/MemoryModel/SVFStatements.h +379 -310
  137. package/lib/Graphs/ConsG.cpp +24 -24
  138. package/lib/Graphs/VFG.cpp +10 -10
  139. package/lib/MSSA/MemRegion.cpp +5 -5
  140. package/lib/MemoryModel/SVFIR.cpp +2 -2
  141. package/lib/MemoryModel/SVFStatements.cpp +11 -11
  142. package/package.json +1 -1
@@ -1332,7 +1332,7 @@ Private Attributes</h2></td></tr>
1332
1332
  <p>if this function does not have any caller, then we do not care its MSSA </p>
1333
1333
 
1334
1334
  <p class="definition">Definition at line <a class="el" href="MemRegion_8cpp_source.html#l00172">172</a> of file <a class="el" href="MemRegion_8cpp_source.html">MemRegion.cpp</a>.</p>
1335
- <div class="fragment"><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;{</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule = <a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a>();</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVFModule::const_iterator</a> fi = svfModule-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">begin</a>(), efi = svfModule-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">end</a>(); fi != efi;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; ++fi)</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; {</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>&amp; fun = **fi;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a50182faec95c6c4635df65a55148b040">Options::IgnoreDeadFun</a> &amp;&amp; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a6d268e8d588717601345be3a911a7625">isDeadFunction</a>(fun.<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()))</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">for</span> (Function::const_iterator iter = fun.<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()-&gt;begin(), eiter = fun.<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()-&gt;end();</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; iter != eiter; ++iter)</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>&amp; bb = *iter;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">for</span> (BasicBlock::const_iterator bit = bb.begin(), ebit = bb.end();</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; bit != ebit; ++bit)</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>&amp; inst = *bit;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVFStmtList</a>&amp; pagEdgeList = <a class="code" href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">getPAGEdgesFromInst</a>(&amp;inst);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">for</span> (SVFStmtList::iterator bit = pagEdgeList.begin(), ebit =</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; pagEdgeList.end(); bit != ebit; ++bit)</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; {</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* inst = *bit;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#ab250a4950269f57027d8e8ef10089f58">pagEdgeToFunMap</a>[inst] = &amp;fun;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreStmt.html">StoreStmt</a> *st = SVFUtil::dyn_cast&lt;StoreStmt&gt;(inst))</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; {</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> cpts(<a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(st-&gt;getDstID()).toNodeBS());</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="comment">// TODO: change this assertion check later when we have conditional points-to set</span></div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (cpts.empty())</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(!cpts.empty() &amp;&amp; <span class="stringliteral">&quot;null pointer!!&quot;</span>);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#af50efed3af17806a3ba3f668e4466d3e">addCPtsToStore</a>(cpts, st, &amp;fun);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; }</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1LoadStmt.html">LoadStmt</a> *ld = SVFUtil::dyn_cast&lt;LoadStmt&gt;(inst))</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; {</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> cpts(<a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(ld-&gt;getSrcID()).toNodeBS());</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="comment">// TODO: change this assertion check later when we have conditional points-to set</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">if</span> (cpts.empty())</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(!cpts.empty() &amp;&amp; <span class="stringliteral">&quot;null pointer!!&quot;</span>);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a79a3032b50f7ef905213b770b12e0967">addCPtsToLoad</a>(cpts, ld, &amp;fun);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; }</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; }</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; }</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; }</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00077">BasicTypes.h:77</a></div></div>
1335
+ <div class="fragment"><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;{</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule = <a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a>();</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVFModule::const_iterator</a> fi = svfModule-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">begin</a>(), efi = svfModule-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">end</a>(); fi != efi;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; ++fi)</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; {</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>&amp; fun = **fi;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a50182faec95c6c4635df65a55148b040">Options::IgnoreDeadFun</a> &amp;&amp; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a6d268e8d588717601345be3a911a7625">isDeadFunction</a>(fun.<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()))</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">for</span> (Function::const_iterator iter = fun.<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()-&gt;begin(), eiter = fun.<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>()-&gt;end();</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; iter != eiter; ++iter)</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>&amp; bb = *iter;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">for</span> (BasicBlock::const_iterator bit = bb.begin(), ebit = bb.end();</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; bit != ebit; ++bit)</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a>&amp; inst = *bit;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVFStmtList</a>&amp; pagEdgeList = <a class="code" href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">getPAGEdgesFromInst</a>(&amp;inst);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">for</span> (SVFStmtList::iterator bit = pagEdgeList.begin(), ebit =</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; pagEdgeList.end(); bit != ebit; ++bit)</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; {</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* inst = *bit;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#ab250a4950269f57027d8e8ef10089f58">pagEdgeToFunMap</a>[inst] = &amp;fun;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreStmt.html">StoreStmt</a> *st = SVFUtil::dyn_cast&lt;StoreStmt&gt;(inst))</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; {</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> cpts(<a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(st-&gt;getLHSVarID()).toNodeBS());</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="comment">// TODO: change this assertion check later when we have conditional points-to set</span></div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (cpts.empty())</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(!cpts.empty() &amp;&amp; <span class="stringliteral">&quot;null pointer!!&quot;</span>);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#af50efed3af17806a3ba3f668e4466d3e">addCPtsToStore</a>(cpts, st, &amp;fun);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; }</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1LoadStmt.html">LoadStmt</a> *ld = SVFUtil::dyn_cast&lt;LoadStmt&gt;(inst))</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; {</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> cpts(<a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(ld-&gt;getRHSVarID()).toNodeBS());</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="comment">// TODO: change this assertion check later when we have conditional points-to set</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">if</span> (cpts.empty())</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(!cpts.empty() &amp;&amp; <span class="stringliteral">&quot;null pointer!!&quot;</span>);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a79a3032b50f7ef905213b770b12e0967">addCPtsToLoad</a>(cpts, ld, &amp;fun);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; }</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; }</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; }</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; }</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00077">BasicTypes.h:77</a></div></div>
1336
1336
  <div class="ttc" id="classSVF_1_1SVFModule_html_a5486697889c6cca4f9f426650defc255"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">SVF::SVFModule::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00147">SVFModule.h:147</a></div></div>
1337
1337
  <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>
1338
1338
  <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="BasicTypes_8h_source.html#l00233">BasicTypes.h:233</a></div></div>
@@ -1344,14 +1344,14 @@ Private Attributes</h2></td></tr>
1344
1344
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad8b71cebf46deaf60e2cd4f6d6bb9433"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">SVF::PointerAnalysis::getModule</a></div><div class="ttdeci">SVFModule * getModule() const</div><div class="ttdoc">Module. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00217">PointerAnalysis.h:217</a></div></div>
1345
1345
  <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00099">PointerAnalysisImpl.h:99</a></div></div>
1346
1346
  <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="BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
1347
- <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00633">SVFStatements.h:633</a></div></div>
1347
+ <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00376">SVFStatements.h:376</a></div></div>
1348
1348
  <div class="ttc" id="classSVF_1_1MRGenerator_html_ab250a4950269f57027d8e8ef10089f58"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#ab250a4950269f57027d8e8ef10089f58">SVF::MRGenerator::pagEdgeToFunMap</a></div><div class="ttdeci">PAGEdgeToFunMap pagEdgeToFunMap</div><div class="ttdoc">Map a PAGEdge to its fun. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00220">MemRegion.h:220</a></div></div>
1349
1349
  <div class="ttc" id="classSVF_1_1MRGenerator_html_a79a3032b50f7ef905213b770b12e0967"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#a79a3032b50f7ef905213b770b12e0967">SVF::MRGenerator::addCPtsToLoad</a></div><div class="ttdeci">void addCPtsToLoad(NodeBS &amp;cpts, const LoadStmt *ld, const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00343">MemRegion.h:343</a></div></div>
1350
1350
  <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="BasicTypes_8h_source.html#l00249">BasicTypes.h:249</a></div></div>
1351
1351
  <div class="ttc" id="classSVF_1_1MRGenerator_html_afb7ce3a24edda14895999eb15231daff"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">SVF::MRGenerator::pta</a></div><div class="ttdeci">BVDataPTAImpl * pta</div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00193">MemRegion.h:193</a></div></div>
1352
1352
  <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
1353
1353
  <div class="ttc" id="classSVF_1_1SVFModule_html_a58d03edb6ff85f4943135478f113df31"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">SVF::SVFModule::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00155">SVFModule.h:155</a></div></div>
1354
- <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00596">SVFStatements.h:596</a></div></div>
1354
+ <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00339">SVFStatements.h:339</a></div></div>
1355
1355
  <div class="ttc" id="classSVF_1_1SVFModule_html_afcf2978f32e15127fb093405dc17d7f1"><div class="ttname"><a href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVF::SVFModule::const_iterator</a></div><div class="ttdeci">FunctionSetType::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00052">SVFModule.h:52</a></div></div>
1356
1356
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a6d268e8d588717601345be3a911a7625"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a6d268e8d588717601345be3a911a7625">SVF::SVFUtil::isDeadFunction</a></div><div class="ttdeci">bool isDeadFunction(const Function *fun)</div><div class="ttdoc">whether this is a function without any possible caller? </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00125">LLVMUtil.cpp:125</a></div></div>
1357
1357
  <div class="ttc" id="classSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00047">SVFStatements.h:47</a></div></div>
@@ -1916,7 +1916,7 @@ Private Attributes</h2></td></tr>
1916
1916
  <p>Obtain the mod sets for a call, used for external ModRefInfo queries </p>
1917
1917
 
1918
1918
  <p class="definition">Definition at line <a class="el" href="MemRegion_8cpp_source.html#l00670">670</a> of file <a class="el" href="MemRegion_8cpp_source.html">MemRegion.cpp</a>.</p>
1919
- <div class="fragment"><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;{</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">isExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()) &amp;&amp; !<a class="code" href="namespaceSVF_1_1SVFUtil.html#a93ac673b885633849fa484938405ca75">isHeapAllocExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()))</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; {</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVFStmtList</a>&amp; pagEdgeList = <a class="code" href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">getPAGEdgesFromInst</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>());</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> mods;</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordflow">for</span> (SVFStmtList::const_iterator bit = pagEdgeList.begin(), ebit =</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; pagEdgeList.end(); bit != ebit; ++bit)</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; {</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = *bit;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreStmt.html">StoreStmt</a>* st = SVFUtil::dyn_cast&lt;StoreStmt&gt;(edge))</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; mods |= <a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(st-&gt;getDstID()).toNodeBS();</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; }</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordflow">return</span> mods;</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; }</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; {</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MRGenerator.html#aebd6abbf574392abce426dc796d2ee56">getModSideEffectOfCallSite</a>(cs);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; }</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;}</div><div class="ttc" id="classSVF_1_1MRGenerator_html_aebd6abbf574392abce426dc796d2ee56"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#aebd6abbf574392abce426dc796d2ee56">SVF::MRGenerator::getModSideEffectOfCallSite</a></div><div class="ttdeci">const NodeBS &amp; getModSideEffectOfCallSite(const CallBlockNode *cs)</div><div class="ttdoc">Get indirect mods of a callsite. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00399">MemRegion.h:399</a></div></div>
1919
+ <div class="fragment"><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;{</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">isExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()) &amp;&amp; !<a class="code" href="namespaceSVF_1_1SVFUtil.html#a93ac673b885633849fa484938405ca75">isHeapAllocExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()))</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; {</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVFStmtList</a>&amp; pagEdgeList = <a class="code" href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">getPAGEdgesFromInst</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>());</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> mods;</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordflow">for</span> (SVFStmtList::const_iterator bit = pagEdgeList.begin(), ebit =</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; pagEdgeList.end(); bit != ebit; ++bit)</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; {</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = *bit;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreStmt.html">StoreStmt</a>* st = SVFUtil::dyn_cast&lt;StoreStmt&gt;(edge))</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; mods |= <a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(st-&gt;getLHSVarID()).toNodeBS();</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; }</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordflow">return</span> mods;</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; }</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; {</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MRGenerator.html#aebd6abbf574392abce426dc796d2ee56">getModSideEffectOfCallSite</a>(cs);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; }</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;}</div><div class="ttc" id="classSVF_1_1MRGenerator_html_aebd6abbf574392abce426dc796d2ee56"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#aebd6abbf574392abce426dc796d2ee56">SVF::MRGenerator::getModSideEffectOfCallSite</a></div><div class="ttdeci">const NodeBS &amp; getModSideEffectOfCallSite(const CallBlockNode *cs)</div><div class="ttdoc">Get indirect mods of a callsite. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00399">MemRegion.h:399</a></div></div>
1920
1920
  <div class="ttc" id="classSVF_1_1MRGenerator_html_a8717adf4520e0702274c5f013776be52"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVF::MRGenerator::SVFStmtList</a></div><div class="ttdeci">SVFIR::SVFStmtList SVFStmtList</div><div class="ttdoc">SVFIR edge list. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00172">MemRegion.h:172</a></div></div>
1921
1921
  <div class="ttc" id="classSVF_1_1MRGenerator_html_acc78a116ca0be01a359d1313b2ae603c"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">SVF::MRGenerator::getPAGEdgesFromInst</a></div><div class="ttdeci">SVFStmtList &amp; getPAGEdgesFromInst(const Instruction *inst)</div><div class="ttdoc">Given an instruction, get all its the PAGEdge (statement) in sequence. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8cpp_source.html#l00160">MemRegion.cpp:160</a></div></div>
1922
1922
  <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00099">PointerAnalysisImpl.h:99</a></div></div>
@@ -1924,7 +1924,7 @@ Private Attributes</h2></td></tr>
1924
1924
  <div class="ttc" id="classSVF_1_1CallBlockNode_html_ad3d50024efcfa94b1246c982b43aff2f"><div class="ttname"><a href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">SVF::CallBlockNode::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#l00381">ICFGNode.h:381</a></div></div>
1925
1925
  <div class="ttc" id="classSVF_1_1MRGenerator_html_afb7ce3a24edda14895999eb15231daff"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">SVF::MRGenerator::pta</a></div><div class="ttdeci">BVDataPTAImpl * pta</div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00193">MemRegion.h:193</a></div></div>
1926
1926
  <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
1927
- <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00596">SVFStatements.h:596</a></div></div>
1927
+ <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00339">SVFStatements.h:339</a></div></div>
1928
1928
  <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#l00063">LLVMUtil.h:63</a></div></div>
1929
1929
  <div class="ttc" id="classSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00047">SVFStatements.h:47</a></div></div>
1930
1930
  </div><!-- fragment -->
@@ -2354,11 +2354,11 @@ Private Attributes</h2></td></tr>
2354
2354
  <p>Obtain the ref sets for a call, used for external ModRefInfo queries </p>
2355
2355
 
2356
2356
  <p class="definition">Definition at line <a class="el" href="MemRegion_8cpp_source.html#l00694">694</a> of file <a class="el" href="MemRegion_8cpp_source.html">MemRegion.cpp</a>.</p>
2357
- <div class="fragment"><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;{</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">isExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()) &amp;&amp; !<a class="code" href="namespaceSVF_1_1SVFUtil.html#a93ac673b885633849fa484938405ca75">isHeapAllocExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()))</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; {</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVFStmtList</a>&amp; pagEdgeList = <a class="code" href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">getPAGEdgesFromInst</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>());</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> refs;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordflow">for</span> (SVFStmtList::const_iterator bit = pagEdgeList.begin(), ebit =</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; pagEdgeList.end(); bit != ebit; ++bit)</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; {</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = *bit;</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1LoadStmt.html">LoadStmt</a>* ld = SVFUtil::dyn_cast&lt;LoadStmt&gt;(edge))</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; refs |= <a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(ld-&gt;getSrcID()).toNodeBS();</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; }</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; <span class="keywordflow">return</span> refs;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; }</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; {</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MRGenerator.html#ae2cc7d7d6ab427acb0352b388c7a4acc">getRefSideEffectOfCallSite</a>(cs);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; }</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;}</div><div class="ttc" id="classSVF_1_1MRGenerator_html_ae2cc7d7d6ab427acb0352b388c7a4acc"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#ae2cc7d7d6ab427acb0352b388c7a4acc">SVF::MRGenerator::getRefSideEffectOfCallSite</a></div><div class="ttdeci">const NodeBS &amp; getRefSideEffectOfCallSite(const CallBlockNode *cs)</div><div class="ttdoc">Get indirect refs of a callsite. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00394">MemRegion.h:394</a></div></div>
2357
+ <div class="fragment"><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;{</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">isExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()) &amp;&amp; !<a class="code" href="namespaceSVF_1_1SVFUtil.html#a93ac673b885633849fa484938405ca75">isHeapAllocExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()))</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; {</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVFStmtList</a>&amp; pagEdgeList = <a class="code" href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">getPAGEdgesFromInst</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>());</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> refs;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordflow">for</span> (SVFStmtList::const_iterator bit = pagEdgeList.begin(), ebit =</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; pagEdgeList.end(); bit != ebit; ++bit)</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; {</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = *bit;</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1LoadStmt.html">LoadStmt</a>* ld = SVFUtil::dyn_cast&lt;LoadStmt&gt;(edge))</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; refs |= <a class="code" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">pta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(ld-&gt;getRHSVarID()).toNodeBS();</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; }</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; <span class="keywordflow">return</span> refs;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; }</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; {</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MRGenerator.html#ae2cc7d7d6ab427acb0352b388c7a4acc">getRefSideEffectOfCallSite</a>(cs);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; }</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;}</div><div class="ttc" id="classSVF_1_1MRGenerator_html_ae2cc7d7d6ab427acb0352b388c7a4acc"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#ae2cc7d7d6ab427acb0352b388c7a4acc">SVF::MRGenerator::getRefSideEffectOfCallSite</a></div><div class="ttdeci">const NodeBS &amp; getRefSideEffectOfCallSite(const CallBlockNode *cs)</div><div class="ttdoc">Get indirect refs of a callsite. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00394">MemRegion.h:394</a></div></div>
2358
2358
  <div class="ttc" id="classSVF_1_1MRGenerator_html_a8717adf4520e0702274c5f013776be52"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVF::MRGenerator::SVFStmtList</a></div><div class="ttdeci">SVFIR::SVFStmtList SVFStmtList</div><div class="ttdoc">SVFIR edge list. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00172">MemRegion.h:172</a></div></div>
2359
2359
  <div class="ttc" id="classSVF_1_1MRGenerator_html_acc78a116ca0be01a359d1313b2ae603c"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">SVF::MRGenerator::getPAGEdgesFromInst</a></div><div class="ttdeci">SVFStmtList &amp; getPAGEdgesFromInst(const Instruction *inst)</div><div class="ttdoc">Given an instruction, get all its the PAGEdge (statement) in sequence. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8cpp_source.html#l00160">MemRegion.cpp:160</a></div></div>
2360
2360
  <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00099">PointerAnalysisImpl.h:99</a></div></div>
2361
- <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00633">SVFStatements.h:633</a></div></div>
2361
+ <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00376">SVFStatements.h:376</a></div></div>
2362
2362
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a93ac673b885633849fa484938405ca75"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a93ac673b885633849fa484938405ca75">SVF::SVFUtil::isHeapAllocExtCall</a></div><div class="ttdeci">bool isHeapAllocExtCall(const CallSite cs)</div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8h_source.html#l00115">LLVMUtil.h:115</a></div></div>
2363
2363
  <div class="ttc" id="classSVF_1_1CallBlockNode_html_ad3d50024efcfa94b1246c982b43aff2f"><div class="ttname"><a href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">SVF::CallBlockNode::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#l00381">ICFGNode.h:381</a></div></div>
2364
2364
  <div class="ttc" id="classSVF_1_1MRGenerator_html_afb7ce3a24edda14895999eb15231daff"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">SVF::MRGenerator::pta</a></div><div class="ttdeci">BVDataPTAImpl * pta</div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00193">MemRegion.h:193</a></div></div>
@@ -2543,7 +2543,7 @@ Private Attributes</h2></td></tr>
2543
2543
  <p>otherwise, we find the mod/ref sets from the callee function, who has definition and been processed </p>
2544
2544
 
2545
2545
  <p class="definition">Definition at line <a class="el" href="MemRegion_8cpp_source.html#l00603">603</a> of file <a class="el" href="MemRegion_8cpp_source.html">MemRegion.cpp</a>.</p>
2546
- <div class="fragment"><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;{</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a93ac673b885633849fa484938405ca75">isHeapAllocExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()))</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; {</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVFStmtList</a>&amp; pagEdgeList = <a class="code" href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">getPAGEdgesFromInst</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>());</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; <span class="keywordflow">for</span> (SVFStmtList::const_iterator bit = pagEdgeList.begin(),</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; ebit = pagEdgeList.end(); bit != ebit; ++bit)</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; {</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = *bit;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1AddrStmt.html">AddrStmt</a>* addr = SVFUtil::dyn_cast&lt;AddrStmt&gt;(edge))</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; mod.set(addr-&gt;getSrcID());</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; }</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; }</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; {</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; mod = <a class="code" href="classSVF_1_1MRGenerator.html#a7d47fbc3dbe8fd19ca5e4210bdecf914">getModSideEffectOfFunction</a>(callee);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; ref = <a class="code" href="classSVF_1_1MRGenerator.html#ac0007c8808654ca74feef0d8568378b9">getRefSideEffectOfFunction</a>(callee);</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; }</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="comment">// add ref set</span></div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordtype">bool</span> refchanged = <a class="code" href="classSVF_1_1MRGenerator.html#a4e02c3aee7eb0206f6d643b72e39d059">addRefSideEffectOfCallSite</a>(cs, ref);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <span class="comment">// add mod set</span></div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordtype">bool</span> modchanged = <a class="code" href="classSVF_1_1MRGenerator.html#a8b00b46136ce2586b5f94248d0826a94">addModSideEffectOfCallSite</a>(cs, mod);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordflow">return</span> refchanged || modchanged;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;}</div><div class="ttc" id="classSVF_1_1AddrStmt_html"><div class="ttname"><a href="classSVF_1_1AddrStmt.html">SVF::AddrStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00197">SVFStatements.h:197</a></div></div>
2546
+ <div class="fragment"><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;{</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a93ac673b885633849fa484938405ca75">isHeapAllocExtCall</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>()))</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; {</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <a class="code" href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVFStmtList</a>&amp; pagEdgeList = <a class="code" href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">getPAGEdgesFromInst</a>(cs-&gt;<a class="code" href="classSVF_1_1CallBlockNode.html#ad3d50024efcfa94b1246c982b43aff2f">getCallSite</a>());</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; <span class="keywordflow">for</span> (SVFStmtList::const_iterator bit = pagEdgeList.begin(),</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; ebit = pagEdgeList.end(); bit != ebit; ++bit)</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; {</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFStmt.html">PAGEdge</a>* edge = *bit;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1AddrStmt.html">AddrStmt</a>* addr = SVFUtil::dyn_cast&lt;AddrStmt&gt;(edge))</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; mod.set(addr-&gt;getRHSVarID());</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; }</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; }</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; {</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; mod = <a class="code" href="classSVF_1_1MRGenerator.html#a7d47fbc3dbe8fd19ca5e4210bdecf914">getModSideEffectOfFunction</a>(callee);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; ref = <a class="code" href="classSVF_1_1MRGenerator.html#ac0007c8808654ca74feef0d8568378b9">getRefSideEffectOfFunction</a>(callee);</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; }</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="comment">// add ref set</span></div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordtype">bool</span> refchanged = <a class="code" href="classSVF_1_1MRGenerator.html#a4e02c3aee7eb0206f6d643b72e39d059">addRefSideEffectOfCallSite</a>(cs, ref);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <span class="comment">// add mod set</span></div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordtype">bool</span> modchanged = <a class="code" href="classSVF_1_1MRGenerator.html#a8b00b46136ce2586b5f94248d0826a94">addModSideEffectOfCallSite</a>(cs, mod);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordflow">return</span> refchanged || modchanged;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;}</div><div class="ttc" id="classSVF_1_1AddrStmt_html"><div class="ttname"><a href="classSVF_1_1AddrStmt.html">SVF::AddrStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00269">SVFStatements.h:269</a></div></div>
2547
2547
  <div class="ttc" id="classSVF_1_1MRGenerator_html_a7d47fbc3dbe8fd19ca5e4210bdecf914"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#a7d47fbc3dbe8fd19ca5e4210bdecf914">SVF::MRGenerator::getModSideEffectOfFunction</a></div><div class="ttdeci">const NodeBS &amp; getModSideEffectOfFunction(const SVFFunction *fun)</div><div class="ttdoc">Get indirect mods of a function. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00389">MemRegion.h:389</a></div></div>
2548
2548
  <div class="ttc" id="classSVF_1_1MRGenerator_html_a8717adf4520e0702274c5f013776be52"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#a8717adf4520e0702274c5f013776be52">SVF::MRGenerator::SVFStmtList</a></div><div class="ttdeci">SVFIR::SVFStmtList SVFStmtList</div><div class="ttdoc">SVFIR edge list. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00172">MemRegion.h:172</a></div></div>
2549
2549
  <div class="ttc" id="classSVF_1_1MRGenerator_html_acc78a116ca0be01a359d1313b2ae603c"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#acc78a116ca0be01a359d1313b2ae603c">SVF::MRGenerator::getPAGEdgesFromInst</a></div><div class="ttdeci">SVFStmtList &amp; getPAGEdgesFromInst(const Instruction *inst)</div><div class="ttdoc">Given an instruction, get all its the PAGEdge (statement) in sequence. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8cpp_source.html#l00160">MemRegion.cpp:160</a></div></div>
@@ -1582,7 +1582,7 @@ Private Attributes</h2></td></tr>
1582
1582
  <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="BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
1583
1583
  <div class="ttc" id="classSVF_1_1MemSSA_html_a953a56a65ee36fd1c78b29179cd3f33a"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a953a56a65ee36fd1c78b29179cd3f33a">SVF::MemSSA::RETMU</a></div><div class="ttdeci">RetMU&lt; Condition &gt; RETMU</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00054">MemSSA.h:54</a></div></div>
1584
1584
  <div class="ttc" id="classSVF_1_1MemSSA_html_a66e693af7b37e4e58b4834898d6a34fa"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a66e693af7b37e4e58b4834898d6a34fa">SVF::MemSSA::BBList</a></div><div class="ttdeci">std::vector&lt; const BasicBlock * &gt; BBList</div><div class="ttdoc">For phi insertion. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00087">MemSSA.h:87</a></div></div>
1585
- <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00633">SVFStatements.h:633</a></div></div>
1585
+ <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00376">SVFStatements.h:376</a></div></div>
1586
1586
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
1587
1587
  <div class="ttc" id="classSVF_1_1MRGenerator_html_a7ede01d58bb2490ded5895ca5bd45948"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#a7ede01d58bb2490ded5895ca5bd45948">SVF::MRGenerator::getCallSiteRefMRSet</a></div><div class="ttdeci">MRSet &amp; getCallSiteRefMRSet(const CallBlockNode *cs)</div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00459">MemRegion.h:459</a></div></div>
1588
1588
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7a7e06e90a215086696effb5f5537baf"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7a7e06e90a215086696effb5f5537baf">SVF::SVFUtil::functionDoesNotRet</a></div><div class="ttdeci">bool functionDoesNotRet(const Function *fun)</div><div class="ttdoc">Return true if the function has a return instruction reachable from function entry. </div><div class="ttdef"><b>Definition:</b> <a href="LLVMUtil_8cpp_source.html#l00088">LLVMUtil.cpp:88</a></div></div>
@@ -1592,7 +1592,7 @@ Private Attributes</h2></td></tr>
1592
1592
  <div class="ttc" id="classSVF_1_1MRGenerator_html_acb78098bf1fc8c3a80720a3dff3a0a1d"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#acb78098bf1fc8c3a80720a3dff3a0a1d">SVF::MRGenerator::getCallSiteModMRSet</a></div><div class="ttdeci">MRSet &amp; getCallSiteModMRSet(const CallBlockNode *cs)</div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00463">MemRegion.h:463</a></div></div>
1593
1593
  <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="BasicTypes_8h_source.html#l00249">BasicTypes.h:249</a></div></div>
1594
1594
  <div class="ttc" id="classSVF_1_1MemSSA_html_a213ebe634bbdbe33460ccd941c1dc6a5"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a213ebe634bbdbe33460ccd941c1dc6a5">SVF::MemSSA::mrGen</a></div><div class="ttdeci">MRGenerator * mrGen</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00116">MemSSA.h:116</a></div></div>
1595
- <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00596">SVFStatements.h:596</a></div></div>
1595
+ <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00339">SVFStatements.h:339</a></div></div>
1596
1596
  <div class="ttc" id="classSVF_1_1MemSSA_html_abae2396bf8a37a22be9365d368fe455c"><div class="ttname"><a href="classSVF_1_1MemSSA.html#abae2396bf8a37a22be9365d368fe455c">SVF::MemSSA::funToReturnMuSetMap</a></div><div class="ttdeci">FunToReturnMuSetMap funToReturnMuSetMap</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00137">MemSSA.h:137</a></div></div>
1597
1597
  <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>
1598
1598
  <div class="ttc" id="classSVF_1_1MemRegion_html"><div class="ttname"><a href="classSVF_1_1MemRegion.html">SVF::MemRegion</a></div><div class="ttdoc">Memory Region class. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00051">MemRegion.h:51</a></div></div>
@@ -1685,7 +1685,7 @@ Private Attributes</h2></td></tr>
1685
1685
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad8b71cebf46deaf60e2cd4f6d6bb9433"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">SVF::PointerAnalysis::getModule</a></div><div class="ttdeci">SVFModule * getModule() const</div><div class="ttdoc">Module. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00217">PointerAnalysis.h:217</a></div></div>
1686
1686
  <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="BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
1687
1687
  <div class="ttc" id="classSVF_1_1MemSSA_html_a81bba824495a882b49e687683954b112"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a81bba824495a882b49e687683954b112">SVF::MemSSA::MUSet</a></div><div class="ttdeci">Set&lt; MU * &gt; MUSet</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00064">MemSSA.h:64</a></div></div>
1688
- <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00633">SVFStatements.h:633</a></div></div>
1688
+ <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00376">SVFStatements.h:376</a></div></div>
1689
1689
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
1690
1690
  <div class="ttc" id="classSVF_1_1MemSSA_html_aec75259d035e3b5589e6fcbbcdfe4b2c"><div class="ttname"><a href="classSVF_1_1MemSSA.html#aec75259d035e3b5589e6fcbbcdfe4b2c">SVF::MemSSA::hasFuncEntryChi</a></div><div class="ttdeci">bool hasFuncEntryChi(const SVFFunction *fun) const</div><div class="ttdoc">Has function entry chi or return mu. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00367">MemSSA.h:367</a></div></div>
1691
1691
  <div class="ttc" id="classSVF_1_1MemSSA_html_af5e356e82c3f93b65bd89908e0f465dc"><div class="ttname"><a href="classSVF_1_1MemSSA.html#af5e356e82c3f93b65bd89908e0f465dc">SVF::MemSSA::hasMU</a></div><div class="ttdeci">bool hasMU(const PAGEdge *inst) const</div><div class="ttdoc">Has mu/chi methods. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00332">MemSSA.h:332</a></div></div>
@@ -1696,7 +1696,7 @@ Private Attributes</h2></td></tr>
1696
1696
  <div class="ttc" id="classSVF_1_1MemSSA_html_a10743fe9c116ee624387c0473815b800"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a10743fe9c116ee624387c0473815b800">SVF::MemSSA::getFuncEntryChiSet</a></div><div class="ttdeci">CHISet &amp; getFuncEntryChiSet(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00376">MemSSA.h:376</a></div></div>
1697
1697
  <div class="ttc" id="classSVF_1_1MemSSA_html_af8c38a7ff8da4206f19c038024606d93"><div class="ttname"><a href="classSVF_1_1MemSSA.html#af8c38a7ff8da4206f19c038024606d93">SVF::MemSSA::getReturnMuSet</a></div><div class="ttdeci">MUSet &amp; getReturnMuSet(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00380">MemSSA.h:380</a></div></div>
1698
1698
  <div class="ttc" id="classSVF_1_1SVFModule_html_a58d03edb6ff85f4943135478f113df31"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">SVF::SVFModule::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00155">SVFModule.h:155</a></div></div>
1699
- <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00596">SVFStatements.h:596</a></div></div>
1699
+ <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00339">SVFStatements.h:339</a></div></div>
1700
1700
  <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>
1701
1701
  <div class="ttc" id="classSVF_1_1SVFModule_html_a709371b13dcf500277f8bc275bdb23c7"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a709371b13dcf500277f8bc275bdb23c7">SVF::SVFModule::iterator</a></div><div class="ttdeci">FunctionSetType::iterator iterator</div><div class="ttdoc">Iterators type def. </div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00051">SVFModule.h:51</a></div></div>
1702
1702
  <div class="ttc" id="classSVF_1_1CallBlockNode_html"><div class="ttname"><a href="classSVF_1_1CallBlockNode.html">SVF::CallBlockNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00364">ICFGNode.h:364</a></div></div>
@@ -3076,7 +3076,7 @@ Private Attributes</h2></td></tr>
3076
3076
  <div class="ttc" id="classSVF_1_1MemSSA_html_a6066364112e665c33cbf2ec50ae1e3a8"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a6066364112e665c33cbf2ec50ae1e3a8">SVF::MemSSA::RenameChiSet</a></div><div class="ttdeci">void RenameChiSet(const CHISet &amp;chiSet, MRVector &amp;memRegs)</div><div class="ttdoc">Rename chi set. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00254">MemSSA.h:254</a></div></div>
3077
3077
  <div class="ttc" id="namespaceSVF_html_a827d09974dc7bf0849f96823cc2fee89"><div class="ttname"><a href="namespaceSVF.html#a827d09974dc7bf0849f96823cc2fee89">SVF::DomTreeNode</a></div><div class="ttdeci">llvm::DomTreeNode DomTreeNode</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00199">BasicTypes.h:199</a></div></div>
3078
3078
  <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="BasicTypes_8h_source.html#l00079">BasicTypes.h:79</a></div></div>
3079
- <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00633">SVFStatements.h:633</a></div></div>
3079
+ <div class="ttc" id="classSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00376">SVFStatements.h:376</a></div></div>
3080
3080
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
3081
3081
  <div class="ttc" id="classSVF_1_1MemSSA_html_a7c3fda6f082231350524c2d7c16f067e"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a7c3fda6f082231350524c2d7c16f067e">SVF::MemSSA::MRVector</a></div><div class="ttdeci">std::vector&lt; const MemRegion * &gt; MRVector</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00070">MemSSA.h:70</a></div></div>
3082
3082
  <div class="ttc" id="classSVF_1_1MemSSA_html_a271c20725d49dd65b95c062938ffde4c"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a271c20725d49dd65b95c062938ffde4c">SVF::MemSSA::SSARenameBB</a></div><div class="ttdeci">virtual void SSARenameBB(const BasicBlock &amp;bb)</div><div class="ttdoc">SSA rename for a basic block. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8cpp_source.html#l00279">MemSSA.cpp:279</a></div></div>
@@ -3086,7 +3086,7 @@ Private Attributes</h2></td></tr>
3086
3086
  <div class="ttc" id="classSVF_1_1MemSSA_html_a213ebe634bbdbe33460ccd941c1dc6a5"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a213ebe634bbdbe33460ccd941c1dc6a5">SVF::MemSSA::mrGen</a></div><div class="ttdeci">MRGenerator * mrGen</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00116">MemSSA.h:116</a></div></div>
3087
3087
  <div class="ttc" id="classSVF_1_1MemSSA_html_a552bb17f0435e012b7393fb641c19298"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a552bb17f0435e012b7393fb641c19298">SVF::MemSSA::hasPHISet</a></div><div class="ttdeci">bool hasPHISet(const BasicBlock *bb) const</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00408">MemSSA.h:408</a></div></div>
3088
3088
  <div class="ttc" id="classSVF_1_1MemSSA_html_af8c38a7ff8da4206f19c038024606d93"><div class="ttname"><a href="classSVF_1_1MemSSA.html#af8c38a7ff8da4206f19c038024606d93">SVF::MemSSA::getReturnMuSet</a></div><div class="ttdeci">MUSet &amp; getReturnMuSet(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00380">MemSSA.h:380</a></div></div>
3089
- <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00596">SVFStatements.h:596</a></div></div>
3089
+ <div class="ttc" id="classSVF_1_1StoreStmt_html"><div class="ttname"><a href="classSVF_1_1StoreStmt.html">SVF::StoreStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00339">SVFStatements.h:339</a></div></div>
3090
3090
  <div class="ttc" id="classSVF_1_1MemSSA_html_a0ed34f7a27db045c624c5db61d53132b"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a0ed34f7a27db045c624c5db61d53132b">SVF::MemSSA::RenamePhiOps</a></div><div class="ttdeci">void RenamePhiOps(const PHISet &amp;phiSet, u32_t pos, MRVector &amp;)</div><div class="ttdoc">Rename operands (RHS) of phis. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00279">MemSSA.h:279</a></div></div>
3091
3091
  <div class="ttc" id="classSVF_1_1MemSSA_html_a52b1598f44fe6a6e30095f596bf85cb0"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a52b1598f44fe6a6e30095f596bf85cb0">SVF::MemSSA::dt</a></div><div class="ttdeci">DominatorTree * dt</div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00118">MemSSA.h:118</a></div></div>
3092
3092
  <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>
@@ -85,8 +85,10 @@ $(function() {
85
85
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a7eb93c9018c80057672a8ce71615dc0d">GEdgeKind</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"></td></tr>
86
86
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a6764973569c281d483afab17a75cb4dc">GenericEdge</a>(NodeTy *s, NodeTy *d, GEdgeFlag k)</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
87
87
  <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a793c53e0b4f9a58099c096f0a0856495">getBB</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
88
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
89
- <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#aeaa31a2c8479e831b36ce2e2582ceb86">getDstNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
88
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a4b5273864f38ae2e7337cdd624a351ab">getDstID</a>()</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
89
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::SVFStmt::getDstID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
90
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#aebcdd46f666ae9e6f0b0bf1a792a145a">getDstNode</a>()</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
91
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#aeaa31a2c8479e831b36ce2e2582ceb86">SVF::SVFStmt::getDstNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
90
92
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#af7bb0d687fc61cae1de639c88e472491">getEdgeID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
91
93
  <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#abe8525c542def8162b094c169a01993b">getEdgeKind</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
92
94
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#aa809a57c8cdaaa35dfc3cc0f3b33b52b">getICFGNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
@@ -97,8 +99,10 @@ $(function() {
97
99
  <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#af300571886b7aa2d84b0a70851c99bc3">getOpVarNum</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
98
100
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a00a14ad8f49912b876fd9d729fea4601">getRes</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
99
101
  <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a71a530eb9fa9f7e273e471b4a75a039e">getResID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"></td></tr>
100
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
101
- <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">getSrcNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
102
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#acb793282c0abdef799b02658eebe1b79">getSrcID</a>()</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
103
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::SVFStmt::getSrcID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
104
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a09cc241c2cb1c89a7d89ef6c605eaed8">getSrcNode</a>()</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
105
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">SVF::SVFStmt::getSrcNode</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
102
106
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a65ee8b43a3a4999eb112a197d1a9f882">getValue</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
103
107
  <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0b6c03af568b70903da6b200ac86c951">isPTAEdge</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
104
108
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a93fc6c4c991931c78c48500c2db50f66">KindToSVFStmtMapTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
@@ -106,33 +110,36 @@ $(function() {
106
110
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a3b20523aed66ac8943d7d00ff777137b">makeEdgeFlagWithAddionalOpnd</a>(GEdgeKind k, const SVFVar *var)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
107
111
  <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a4513c6e66b46c36219ba6d7403f3eb00">makeEdgeFlagWithCallInst</a>(GEdgeKind k, const ICFGNode *cs)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
108
112
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#ad61722f886afaaee722ac55a4eed4d18">makeEdgeFlagWithStoreInst</a>(GEdgeKind k, const ICFGNode *store)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
109
- <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#aad0c81aeb48e5d94dd8c60d87b41714c">MultiOpndStmt</a>(SVFVar *r, const OPVars &amp;opnds, GEdgeFlag k)</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
113
+ <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a60420a9681df31686eb4a42adf37e1e3">MultiOpndStmt</a>()</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
114
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a6b01d569057dda1783503563c20c74e6">MultiOpndStmt</a>(const MultiOpndStmt &amp;)</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
115
+ <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#aad0c81aeb48e5d94dd8c60d87b41714c">MultiOpndStmt</a>(SVFVar *r, const OPVars &amp;opnds, GEdgeFlag k)</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
110
116
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#aff95460d4b859e657a9198b7c5e5c736">NodeType</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"></td></tr>
111
117
  <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ac2089ffeab3f27354b2094758c805746">NormalGep</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
112
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a0e461644bf9a4e50099b38f09222e858">operator==</a>(const GenericEdge&lt; NodeType &gt; *rhs) const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
113
- <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#abebed8985cb4d4d1361c42e5454c90b9">opVarBegin</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
114
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a172025849492f4de8f87564ef08f5880">opVars</a></td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
115
- <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#acf8c7cfbf1c8baab672040635bb9a007">OPVars</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"></td></tr>
116
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#ad53097d07487d564e7d13f9d7d9ab10c">opVerEnd</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
117
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a2bdfa37167b5496629e5cae62705d5f2">PAGEdgeSetTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
118
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a229c78147511f2a581c761552179b6fa">PAGEdgeToSetMapTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
119
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9">PEDGEK</a> enum name</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
120
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3cd98eeb47c8475e7ee64480dcdee9">Phi</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
121
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a8d269a45adf13e69468f0357222ab2af">Ret</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
122
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a852730edf374d18a3fb3985211ed7623">setBB</a>(const BasicBlock *bb)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
123
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#adb92a92f5c878576dff26cb38eab8c8c">setICFGNode</a>(ICFGNode *node)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
124
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a24dddb4e346a6e569908e3efe8a6ecc0">setValue</a>(const Value *val)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
125
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">Store</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
126
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">SVFStmt</a>(SVFVar *s, SVFVar *d, GEdgeFlag k)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
127
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVFStmtSetTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
128
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">ThreadFork</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
129
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">ThreadJoin</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
130
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#ad0b4dbe87e009518f22360c48b0d0c22">toString</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
131
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#aa306e817648ab5def47e83473e99b3d3">totalEdgeNum</a></td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
132
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad2a5e6fe0f2b5fefb53abb9e91c57688">UnaryOp</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
133
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3a8902fc2aa68428e271012861a2a2">VariantGep</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
134
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a548daea0cac6491de91d4840b7297741">~GenericEdge</a>()</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
135
- <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#aac79c7e8d390f297002782afb0ba3ff0">~SVFStmt</a>()</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
118
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#afbd0d606112605bf355f4a9de6b44406">operator=</a>(const MultiOpndStmt &amp;)</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
119
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a0e461644bf9a4e50099b38f09222e858">operator==</a>(const GenericEdge&lt; NodeType &gt; *rhs) const</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
120
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#abebed8985cb4d4d1361c42e5454c90b9">opVarBegin</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
121
+ <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#a172025849492f4de8f87564ef08f5880">opVars</a></td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
122
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#acf8c7cfbf1c8baab672040635bb9a007">OPVars</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"></td></tr>
123
+ <tr><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html#ad53097d07487d564e7d13f9d7d9ab10c">opVerEnd</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MultiOpndStmt.html">SVF::MultiOpndStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
124
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a2bdfa37167b5496629e5cae62705d5f2">PAGEdgeSetTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
125
+ <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a229c78147511f2a581c761552179b6fa">PAGEdgeToSetMapTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
126
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9">PEDGEK</a> enum name</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
127
+ <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3cd98eeb47c8475e7ee64480dcdee9">Phi</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
128
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a8d269a45adf13e69468f0357222ab2af">Ret</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
129
+ <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a852730edf374d18a3fb3985211ed7623">setBB</a>(const BasicBlock *bb)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
130
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#adb92a92f5c878576dff26cb38eab8c8c">setICFGNode</a>(ICFGNode *node)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
131
+ <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a24dddb4e346a6e569908e3efe8a6ecc0">setValue</a>(const Value *val)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
132
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">Store</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
133
+ <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a47102f72115d41bff899b1b2ffec75b1">SVFStmt</a>(SVFVar *s, SVFVar *d, GEdgeFlag k)</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
134
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVFStmtSetTy</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
135
+ <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a375b956af2119d7abca8f1995f7701fd">ThreadFork</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
136
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a3c3f8883c2d3b50aef6331d5da97ffb0">ThreadJoin</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
137
+ <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#ad0b4dbe87e009518f22360c48b0d0c22">toString</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
138
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#aa306e817648ab5def47e83473e99b3d3">totalEdgeNum</a></td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
139
+ <tr><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad2a5e6fe0f2b5fefb53abb9e91c57688">UnaryOp</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
140
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a6b3a8902fc2aa68428e271012861a2a2">VariantGep</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"></td></tr>
141
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html#a548daea0cac6491de91d4840b7297741">~GenericEdge</a>()</td><td class="entry"><a class="el" href="classSVF_1_1GenericEdge.html">SVF::GenericEdge&lt; NodeTy &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
142
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html#aac79c7e8d390f297002782afb0ba3ff0">~SVFStmt</a>()</td><td class="entry"><a class="el" href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
136
143
  </table></div><!-- contents -->
137
144
  <!-- start footer part -->
138
145
  <hr class="footer"/><address class="footer"><small>