svf-tools 1.0.356 → 1.0.360

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 (215) hide show
  1. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +2 -2
  2. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +1 -1
  3. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +1 -1
  4. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +7 -7
  6. package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
  7. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +4 -4
  8. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +6 -6
  9. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +3 -3
  10. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +3 -3
  11. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +2 -2
  12. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
  14. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +2 -4
  15. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +7 -7
  16. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +3 -3
  17. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +17 -17
  18. package/SVF-doxygen/html/html/ICFG_8h_source.html +17 -18
  19. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +2 -2
  20. package/SVF-doxygen/html/html/IRGraph_8h_source.html +2 -2
  21. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +3 -3
  22. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +12 -12
  23. package/SVF-doxygen/html/html/LocationSet_8h_source.html +1 -1
  24. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +1 -1
  25. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +2 -2
  26. package/SVF-doxygen/html/html/MHP_8h_source.html +2 -2
  27. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +1 -1
  28. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +10 -10
  29. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +2 -2
  30. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +3 -3
  31. package/SVF-doxygen/html/html/PCG_8cpp_source.html +1 -1
  32. package/SVF-doxygen/html/html/PCG_8h_source.html +3 -3
  33. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +15 -15
  34. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +2 -2
  35. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +8 -8
  36. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +5 -5
  37. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +3 -3
  38. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +5 -5
  39. package/SVF-doxygen/html/html/SVFG_8h_source.html +5 -5
  40. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +7 -7
  41. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +12 -12
  42. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +20 -20
  43. package/SVF-doxygen/html/html/SVFIR_8h_source.html +18 -18
  44. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +1 -1
  45. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  46. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +91 -89
  47. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +5 -5
  48. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
  49. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +22 -22
  50. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
  51. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +52 -50
  52. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +86 -83
  53. package/SVF-doxygen/html/html/TCT_8cpp_source.html +1 -1
  54. package/SVF-doxygen/html/html/TCT_8h_source.html +2 -2
  55. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
  56. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +3 -3
  57. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +1 -1
  58. package/SVF-doxygen/html/html/VFGNode_8h_source.html +7 -7
  59. package/SVF-doxygen/html/html/VFG_8cpp_source.html +17 -17
  60. package/SVF-doxygen/html/html/VFG_8h_source.html +16 -16
  61. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +3 -3
  62. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +2 -2
  63. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +5 -5
  64. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +2 -2
  65. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +2 -2
  66. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +15 -15
  67. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +32 -32
  68. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +3 -3
  69. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +1 -1
  70. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +2 -2
  71. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode-members.html +1 -1
  72. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +6 -6
  73. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +15 -15
  74. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +16 -16
  75. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +7 -7
  76. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +4 -4
  77. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +1 -1
  78. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +3 -3
  79. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +2 -2
  80. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +3 -3
  81. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +2 -2
  82. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +2 -2
  83. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +4 -4
  84. package/SVF-doxygen/html/html/classSVF_1_1GepStmt-members.html +7 -5
  85. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +80 -12
  86. package/SVF-doxygen/html/html/classSVF_1_1ICFG-members.html +22 -22
  87. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +234 -234
  88. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder-members.html +3 -3
  89. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +48 -51
  90. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter-members.html +11 -11
  91. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +18 -18
  92. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +1 -1
  93. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +3 -3
  94. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +27 -29
  95. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +8 -8
  96. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +2 -2
  97. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +2 -2
  98. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +16 -16
  99. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +2 -2
  100. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +87 -87
  101. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +6 -6
  102. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +25 -25
  103. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +99 -99
  104. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  105. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +3 -3
  106. package/SVF-doxygen/html/html/classSVF_1_1PCG-members.html +1 -1
  107. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +9 -9
  108. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +16 -16
  109. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +15 -15
  110. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +11 -11
  111. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode-members.html +1 -1
  112. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +5 -5
  113. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +15 -15
  114. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +13 -13
  115. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +3 -3
  116. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +33 -33
  117. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +38 -38
  118. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +1 -1
  119. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +1 -1
  120. package/SVF-doxygen/html/html/classSVF_1_1StInfo-members.html +20 -15
  121. package/SVF-doxygen/html/html/classSVF_1_1StInfo.html +239 -89
  122. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +35 -35
  123. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo-members.html +6 -4
  124. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +178 -130
  125. package/SVF-doxygen/html/html/classSVF_1_1TCT-members.html +1 -1
  126. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +12 -12
  127. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +9 -9
  128. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +9 -9
  129. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
  130. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +2 -2
  131. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +4 -4
  132. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +20 -20
  133. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +31 -31
  134. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +3 -3
  135. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +6 -6
  136. package/SVF-doxygen/html/html/functions_a.html +13 -13
  137. package/SVF-doxygen/html/html/functions_e.html +3 -0
  138. package/SVF-doxygen/html/html/functions_f.html +15 -20
  139. package/SVF-doxygen/html/html/functions_func.html +13 -13
  140. package/SVF-doxygen/html/html/functions_func_g.html +49 -47
  141. package/SVF-doxygen/html/html/functions_func_i.html +9 -8
  142. package/SVF-doxygen/html/html/functions_func_s.html +8 -5
  143. package/SVF-doxygen/html/html/functions_g.html +50 -48
  144. package/SVF-doxygen/html/html/functions_i.html +15 -14
  145. package/SVF-doxygen/html/html/functions_l.html +6 -6
  146. package/SVF-doxygen/html/html/functions_n.html +6 -0
  147. package/SVF-doxygen/html/html/functions_p.html +9 -9
  148. package/SVF-doxygen/html/html/functions_r.html +2 -4
  149. package/SVF-doxygen/html/html/functions_s.html +22 -19
  150. package/SVF-doxygen/html/html/functions_t.html +7 -7
  151. package/SVF-doxygen/html/html/functions_vars_e.html +3 -0
  152. package/SVF-doxygen/html/html/functions_vars_f.html +0 -3
  153. package/SVF-doxygen/html/html/functions_vars_n.html +6 -0
  154. package/SVF-doxygen/html/html/search/all_1.js +6 -6
  155. package/SVF-doxygen/html/html/search/all_10.js +6 -6
  156. package/SVF-doxygen/html/html/search/all_12.js +2 -2
  157. package/SVF-doxygen/html/html/search/all_13.js +9 -8
  158. package/SVF-doxygen/html/html/search/all_14.js +4 -4
  159. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  160. package/SVF-doxygen/html/html/search/all_16.js +1 -1
  161. package/SVF-doxygen/html/html/search/all_5.js +1 -0
  162. package/SVF-doxygen/html/html/search/all_6.js +0 -1
  163. package/SVF-doxygen/html/html/search/all_7.js +19 -20
  164. package/SVF-doxygen/html/html/search/all_9.js +2 -2
  165. package/SVF-doxygen/html/html/search/all_c.js +2 -2
  166. package/SVF-doxygen/html/html/search/all_d.js +1 -1
  167. package/SVF-doxygen/html/html/search/all_e.js +4 -2
  168. package/SVF-doxygen/html/html/search/functions_0.js +6 -6
  169. package/SVF-doxygen/html/html/search/functions_10.js +1 -0
  170. package/SVF-doxygen/html/html/search/functions_6.js +19 -20
  171. package/SVF-doxygen/html/html/search/functions_8.js +1 -1
  172. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  173. package/SVF-doxygen/html/html/search/variables_14.js +2 -2
  174. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  175. package/SVF-doxygen/html/html/search/variables_5.js +1 -0
  176. package/SVF-doxygen/html/html/search/variables_6.js +0 -1
  177. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  178. package/SVF-doxygen/html/html/search/variables_e.js +3 -1
  179. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
  180. package/SVF-doxygen/html/html/svf-ex_8cpp.html +2 -2
  181. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +2 -2
  182. package/include/Graphs/ICFG.h +18 -18
  183. package/include/Graphs/ICFGNode.h +2 -2
  184. package/include/Graphs/SVFG.h +4 -4
  185. package/include/Graphs/SVFGOPT.h +2 -2
  186. package/include/Graphs/VFG.h +7 -7
  187. package/include/MTA/LockResultValidator.h +1 -1
  188. package/include/MTA/MHP.h +2 -2
  189. package/include/MTA/PCG.h +2 -2
  190. package/include/MTA/TCT.h +2 -2
  191. package/include/MemoryModel/SVFIR.h +2 -2
  192. package/include/MemoryModel/SVFStatements.h +11 -3
  193. package/include/MemoryModel/SymbolTableInfo.h +37 -41
  194. package/include/SVF-FE/ICFGBuilder.h +5 -5
  195. package/include/SVF-FE/SVFIRBuilder.h +1 -1
  196. package/lib/Graphs/ICFG.cpp +23 -23
  197. package/lib/Graphs/SVFG.cpp +4 -4
  198. package/lib/Graphs/VFG.cpp +3 -3
  199. package/lib/MSSA/MemRegion.cpp +7 -7
  200. package/lib/MSSA/MemSSA.cpp +3 -3
  201. package/lib/MTA/LockAnalysis.cpp +4 -4
  202. package/lib/MTA/MTAResultValidator.cpp +1 -1
  203. package/lib/MTA/PCG.cpp +1 -1
  204. package/lib/MTA/TCT.cpp +2 -2
  205. package/lib/MemoryModel/LocationSet.cpp +42 -37
  206. package/lib/MemoryModel/PointerAnalysis.cpp +1 -1
  207. package/lib/MemoryModel/SymbolTableInfo.cpp +71 -8
  208. package/lib/SABER/LeakChecker.cpp +3 -3
  209. package/lib/SVF-FE/CallGraphBuilder.cpp +4 -4
  210. package/lib/SVF-FE/ICFGBuilder.cpp +19 -27
  211. package/lib/SVF-FE/SVFIRBuilder.cpp +15 -15
  212. package/lib/WPA/Andersen.cpp +3 -3
  213. package/lib/WPA/WPAPass.cpp +4 -4
  214. package/package.json +1 -1
  215. package/tools/Example/svf-ex.cpp +1 -1
@@ -1366,11 +1366,11 @@ Additional Inherited Members</h2></td></tr>
1366
1366
  <p>Reimplemented from <a class="el" href="classSVF_1_1DDAVFSolver.html#a645c7d0637b49e139898016ff652e1f3">SVF::DDAVFSolver&lt; NodeID, PointsTo, LocDPItem &gt;</a>.</p>
1367
1367
 
1368
1368
  <p class="definition">Definition at line <a class="el" href="FlowDDA_8cpp_source.html#l00155">155</a> of file <a class="el" href="FlowDDA_8cpp_source.html">FlowDDA.cpp</a>.</p>
1369
- <div class="fragment"><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;{</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* mem = <a class="code" href="classSVF_1_1DDAVFSolver.html#a5521918cc06c182c821b9fae8136e4fe">_pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(<a class="code" href="classSVF_1_1FlowDDA.html#a9749c82c1164adb17e2ae53e725ded9a">getPtrNodeID</a>(var));</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(mem &amp;&amp; <span class="stringliteral">&quot;memory object is null??&quot;</span>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span>(mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">isHeap</a>())</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment">// if(const Instruction* mallocSite = SVFUtil::dyn_cast&lt;Instruction&gt;(mem-&gt;getValue())) {</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment">// const SVFFunction* fun = mallocSite-&gt;getParent()-&gt;getParent();</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment">// const SVFFunction* curFun = store-&gt;getBB() ? store-&gt;getBB()-&gt;getParent() : nullptr;</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment">// if(fun!=curFun)</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment">// return true;</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment">// if(_callGraphSCC-&gt;isInCycle(_callGraph-&gt;getCallGraphNode(fun)-&gt;getId()))</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment">// return true;</span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment">// if(loopInfoBuilder.getLoopInfo(fun)-&gt;getLoopFor(mallocSite-&gt;getParent()))</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment">// return true;</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment">// return false;</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment">// }</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</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; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;}</div><div class="ttc" id="classSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00422">SymbolTableInfo.h:422</a></div></div>
1369
+ <div class="fragment"><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;{</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* mem = <a class="code" href="classSVF_1_1DDAVFSolver.html#a5521918cc06c182c821b9fae8136e4fe">_pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(<a class="code" href="classSVF_1_1FlowDDA.html#a9749c82c1164adb17e2ae53e725ded9a">getPtrNodeID</a>(var));</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(mem &amp;&amp; <span class="stringliteral">&quot;memory object is null??&quot;</span>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span>(mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">isHeap</a>())</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment">// if(const Instruction* mallocSite = SVFUtil::dyn_cast&lt;Instruction&gt;(mem-&gt;getValue())) {</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment">// const SVFFunction* fun = mallocSite-&gt;getParent()-&gt;getParent();</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment">// const SVFFunction* curFun = store-&gt;getBB() ? store-&gt;getBB()-&gt;getParent() : nullptr;</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment">// if(fun!=curFun)</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment">// return true;</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment">// if(_callGraphSCC-&gt;isInCycle(_callGraph-&gt;getCallGraphNode(fun)-&gt;getId()))</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment">// return true;</span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment">// if(loopInfoBuilder.getLoopInfo(fun)-&gt;getLoopFor(mallocSite-&gt;getParent()))</span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment">// return true;</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment">// return false;</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment">// }</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</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; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;}</div><div class="ttc" id="classSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00415">SymbolTableInfo.h:415</a></div></div>
1370
1370
  <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>
1371
1371
  <div class="ttc" id="classSVF_1_1FlowDDA_html_a9749c82c1164adb17e2ae53e725ded9a"><div class="ttname"><a href="classSVF_1_1FlowDDA.html#a9749c82c1164adb17e2ae53e725ded9a">SVF::FlowDDA::getPtrNodeID</a></div><div class="ttdeci">virtual NodeID getPtrNodeID(const NodeID &amp;var) const override</div><div class="ttdoc">Override parent method. </div><div class="ttdef"><b>Definition:</b> <a href="FlowDDA_8h_source.html#l00086">FlowDDA.h:86</a></div></div>
1372
1372
  <div class="ttc" id="classSVF_1_1DDAVFSolver_html_a5521918cc06c182c821b9fae8136e4fe"><div class="ttname"><a href="classSVF_1_1DDAVFSolver.html#a5521918cc06c182c821b9fae8136e4fe">SVF::DDAVFSolver&lt; NodeID, PointsTo, LocDPItem &gt;::_pag</a></div><div class="ttdeci">SVFIR * _pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="DDAVFSolver_8h_source.html#l00753">DDAVFSolver.h:753</a></div></div>
1373
- <div class="ttc" id="classSVF_1_1MemObj_html_a898c5bb3956402578266a6fb142e02b1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">SVF::MemObj::isHeap</a></div><div class="ttdeci">bool isHeap() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00687">SymbolTableInfo.cpp:687</a></div></div>
1373
+ <div class="ttc" id="classSVF_1_1MemObj_html_a898c5bb3956402578266a6fb142e02b1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">SVF::MemObj::isHeap</a></div><div class="ttdeci">bool isHeap() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00750">SymbolTableInfo.cpp:750</a></div></div>
1374
1374
  <div class="ttc" id="classSVF_1_1SVFIR_html_a2dd4d5f704906270af13e7a07f900eb1"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">SVF::SVFIR::getObject</a></div><div class="ttdeci">const MemObj * getObject(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00357">SVFIR.h:357</a></div></div>
1375
1375
  </div><!-- fragment -->
1376
1376
  </div>
@@ -1427,7 +1427,7 @@ Additional Inherited Members</h2></td></tr>
1427
1427
  <div class="ttc" id="classSVF_1_1PointsTo_html_ab196d86cfb48d1c5d27a0c03c7497afa"><div class="ttname"><a href="classSVF_1_1PointsTo.html#ab196d86cfb48d1c5d27a0c03c7497afa">SVF::PointsTo::set</a></div><div class="ttdeci">void set(u32_t n)</div><div class="ttdoc">Inserts n in the set. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00149">PointsTo.cpp:149</a></div></div>
1428
1428
  <div class="ttc" id="classSVF_1_1GepStmt_html_abec33091e0dac0cdd5b95b6d7b0db3d8"><div class="ttname"><a href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">SVF::GepStmt::getLocationSet</a></div><div class="ttdeci">const LocationSet &amp; getLocationSet() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00435">SVFStatements.h:435</a></div></div>
1429
1429
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
1430
- <div class="ttc" id="classSVF_1_1GepStmt_html_a0ddf180a0f7ba64fc8655687910e3788"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">SVF::GepStmt::isVariantFieldGep</a></div><div class="ttdeci">bool isVariantFieldGep() const</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00451">SVFStatements.h:451</a></div></div>
1430
+ <div class="ttc" id="classSVF_1_1GepStmt_html_a0ddf180a0f7ba64fc8655687910e3788"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">SVF::GepStmt::isVariantFieldGep</a></div><div class="ttdeci">bool isVariantFieldGep() const</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00459">SVFStatements.h:459</a></div></div>
1431
1431
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a220f4c09e4c09c58d018719d44ec1dc3"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a220f4c09e4c09c58d018719d44ec1dc3">SVF::SVFUtil::dumpSet</a></div><div class="ttdeci">void dumpSet(NodeBS To, raw_ostream &amp;O=SVFUtil::outs())</div><div class="ttdoc">Dump sparse bitvector set. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00149">SVFUtil.cpp:149</a></div></div>
1432
1432
  <div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
1433
1433
  <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
@@ -1678,7 +1678,7 @@ Additional Inherited Members</h2></td></tr>
1678
1678
  <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>
1679
1679
  <div class="ttc" id="classSVF_1_1PointsTo_html_a879783ba6629e500af9aa7dfcda2563d"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a879783ba6629e500af9aa7dfcda2563d">SVF::PointsTo::count</a></div><div class="ttdeci">u32_t count(void) const</div><div class="ttdoc">Returns number of elements. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00106">PointsTo.cpp:106</a></div></div>
1680
1680
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae6ea391ac44dffeb6899bb44323c5361"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">SVF::PointerAnalysis::isHeapMemObj</a></div><div class="ttdeci">bool isHeapMemObj(NodeID id) const</div><div class="ttdoc">Whether this object is heap or array. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00325">PointerAnalysis.h:325</a></div></div>
1681
- <div class="ttc" id="classSVF_1_1MemObj_html_a41d85883d44ad77832b020455951c6fc"><div class="ttname"><a href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">SVF::MemObj::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive() const</div><div class="ttdoc">Return true if its field limit is 0. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00656">SymbolTableInfo.cpp:656</a></div></div>
1681
+ <div class="ttc" id="classSVF_1_1MemObj_html_a41d85883d44ad77832b020455951c6fc"><div class="ttname"><a href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">SVF::MemObj::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive() const</div><div class="ttdoc">Return true if its field limit is 0. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00719">SymbolTableInfo.cpp:719</a></div></div>
1682
1682
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a108380f6f0b67654bb7c7676686096c8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">SVF::PointerAnalysis::isLocalVarInRecursiveFun</a></div><div class="ttdeci">bool isLocalVarInRecursiveFun(NodeID id) const</div><div class="ttdoc">Whether a local variable is in function recursions. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00156">PointerAnalysis.cpp:156</a></div></div>
1683
1683
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_adc7f5c71efb9cd1bec4f5ca9127654c3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">SVF::PointerAnalysis::pag</a></div><div class="ttdeci">static SVFIR * pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00147">PointerAnalysis.h:147</a></div></div>
1684
1684
  <div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
@@ -1887,7 +1887,7 @@ Additional Inherited Members</h2></td></tr>
1887
1887
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a45462312a746339fff8b990a093d9a1b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b">SVF::PointerAnalysis::isBlkObjOrConstantObj</a></div><div class="ttdeci">virtual bool isBlkObjOrConstantObj(NodeID ptd) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00313">PointerAnalysis.h:313</a></div></div>
1888
1888
  <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00176">SVFBasicTypes.h:176</a></div></div>
1889
1889
  <div class="ttc" id="classSVF_1_1GepStmt_html_abec33091e0dac0cdd5b95b6d7b0db3d8"><div class="ttname"><a href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">SVF::GepStmt::getLocationSet</a></div><div class="ttdeci">const LocationSet &amp; getLocationSet() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00435">SVFStatements.h:435</a></div></div>
1890
- <div class="ttc" id="classSVF_1_1GepStmt_html_a0ddf180a0f7ba64fc8655687910e3788"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">SVF::GepStmt::isVariantFieldGep</a></div><div class="ttdeci">bool isVariantFieldGep() const</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00451">SVFStatements.h:451</a></div></div>
1890
+ <div class="ttc" id="classSVF_1_1GepStmt_html_a0ddf180a0f7ba64fc8655687910e3788"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">SVF::GepStmt::isVariantFieldGep</a></div><div class="ttdeci">bool isVariantFieldGep() const</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00459">SVFStatements.h:459</a></div></div>
1891
1891
  <div class="ttc" id="classSVF_1_1FlowSensitive_html_a282126e5b67ed4e19aa40c81180b8290"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a282126e5b67ed4e19aa40c81180b8290">SVF::FlowSensitive::gepTime</a></div><div class="ttdeci">double gepTime</div><div class="ttdoc">time of handling gep edges </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00314">FlowSensitive.h:314</a></div></div>
1892
1892
  <div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
1893
1893
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a68b05bc02c5473c1e0d39ac4f4454bac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">SVF::PointerAnalysis::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00350">PointerAnalysis.h:350</a></div></div>
@@ -684,7 +684,7 @@ Additional Inherited Members</h2></td></tr>
684
684
  <div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00361">GenericGraph.h:361</a></div></div>
685
685
  <div class="ttc" id="classSVF_1_1FlowSensitive_html_a2feaa4b7a72989b311e9084a81320254"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a2feaa4b7a72989b311e9084a81320254">SVF::FlowSensitive::indirectPropaTime</a></div><div class="ttdeci">double indirectPropaTime</div><div class="ttdoc">time of points-to propagation of top-level pointers </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00310">FlowSensitive.h:310</a></div></div>
686
686
  <div class="ttc" id="classSVF_1_1WPASolver_html_ab3369caa278da03e6e6697a839985cd6"><div class="ttname"><a href="classSVF_1_1WPASolver.html#ab3369caa278da03e6e6697a839985cd6">SVF::WPASolver::numOfIteration</a></div><div class="ttdeci">u32_t numOfIteration</div><div class="ttdoc">num of iterations during constaint solving </div><div class="ttdef"><b>Definition:</b> <a href="WPASolver_8h_source.html#l00206">WPASolver.h:206</a></div></div>
687
- <div class="ttc" id="classSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00422">SymbolTableInfo.h:422</a></div></div>
687
+ <div class="ttc" id="classSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00415">SymbolTableInfo.h:415</a></div></div>
688
688
  <div class="ttc" id="classSVF_1_1FlowSensitive_html_aae032e5f5d53b131d0112dc8faa464a9"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">SVF::FlowSensitive::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00250">FlowSensitive.h:250</a></div></div>
689
689
  <div class="ttc" id="classSVF_1_1FlowSensitiveStat_html_a2162dffeb03e84daca52d6d8429b8529"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a2162dffeb03e84daca52d6d8429b8529">SVF::FlowSensitiveStat::_NumOfVarHaveEmptyINOUTPts</a></div><div class="ttdeci">u32_t _NumOfVarHaveEmptyINOUTPts[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00139">WPAStat.h:139</a></div></div>
690
690
  <div class="ttc" id="classSVF_1_1PTAStat_html_a16f9bdb5387471d0bd825c4a9cbcb22e"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a16f9bdb5387471d0bd825c4a9cbcb22e">SVF::PTAStat::NumOfGepFieldObjects</a></div><div class="ttdeci">static const char * NumOfGepFieldObjects</div><div class="ttdoc">SVFIR gep object node (field obj, dynamically created dummy node) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00102">PTAStat.h:102</a></div></div>
@@ -753,9 +753,9 @@ Additional Inherited Members</h2></td></tr>
753
753
  <div class="ttc" id="classSVF_1_1FlowSensitiveStat_html_ab6ccd8de2b7573f34c4d04b7f40d6522"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">SVF::FlowSensitiveStat::_NumOfVarHaveINOUTPts</a></div><div class="ttdeci">u32_t _NumOfVarHaveINOUTPts[2]</div><div class="ttdoc">number of pag nodes which have points-to set in IN/OUT set. </div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00138">WPAStat.h:138</a></div></div>
754
754
  <div class="ttc" id="classSVF_1_1FlowSensitive_html_a88a111b6bc347d6562db7af8bd8f2f0e"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a88a111b6bc347d6562db7af8bd8f2f0e">SVF::FlowSensitive::numOfProcessedGep</a></div><div class="ttdeci">u32_t numOfProcessedGep</div><div class="ttdoc">Number of processed Copy node. </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00293">FlowSensitive.h:293</a></div></div>
755
755
  <div class="ttc" id="classSVF_1_1FlowSensitive_html_af71a5ae3aef022c569e89f40515072cf"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#af71a5ae3aef022c569e89f40515072cf">SVF::FlowSensitive::numOfProcessedMSSANode</a></div><div class="ttdeci">u32_t numOfProcessedMSSANode</div><div class="ttdoc">Number of processed formal ret node. </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00299">FlowSensitive.h:299</a></div></div>
756
- <div class="ttc" id="classSVF_1_1MemObj_html_a41d85883d44ad77832b020455951c6fc"><div class="ttname"><a href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">SVF::MemObj::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive() const</div><div class="ttdoc">Return true if its field limit is 0. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00656">SymbolTableInfo.cpp:656</a></div></div>
756
+ <div class="ttc" id="classSVF_1_1MemObj_html_a41d85883d44ad77832b020455951c6fc"><div class="ttname"><a href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">SVF::MemObj::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive() const</div><div class="ttdoc">Return true if its field limit is 0. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00719">SymbolTableInfo.cpp:719</a></div></div>
757
757
  <div class="ttc" id="classSVF_1_1FlowSensitiveStat_html_a08ea2c3d891337992291123a1bb4da97"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a08ea2c3d891337992291123a1bb4da97">SVF::FlowSensitiveStat::_PotentialNumOfVarHaveINOUTPts</a></div><div class="ttdeci">u32_t _PotentialNumOfVarHaveINOUTPts[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00147">WPAStat.h:147</a></div></div>
758
- <div class="ttc" id="classSVF_1_1MemObj_html_a3ab6f65ffbf6442daac4d3f70f2d3cb1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a3ab6f65ffbf6442daac4d3f70f2d3cb1">SVF::MemObj::getId</a></div><div class="ttdeci">SymID getId() const</div><div class="ttdoc">Get the memory object id. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00452">SymbolTableInfo.h:452</a></div></div>
758
+ <div class="ttc" id="classSVF_1_1MemObj_html_a3ab6f65ffbf6442daac4d3f70f2d3cb1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a3ab6f65ffbf6442daac4d3f70f2d3cb1">SVF::MemObj::getId</a></div><div class="ttdeci">SymID getId() const</div><div class="ttdoc">Get the memory object id. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00445">SymbolTableInfo.h:445</a></div></div>
759
759
  <div class="ttc" id="classSVF_1_1FlowSensitive_html_a888d6334e5e226c634680e4c0674dcfb"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a888d6334e5e226c634680e4c0674dcfb">SVF::FlowSensitive::copyTime</a></div><div class="ttdeci">double copyTime</div><div class="ttdoc">time of handling copy edges </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00313">FlowSensitive.h:313</a></div></div>
760
760
  <div class="ttc" id="classSVF_1_1FlowSensitive_html_ac4d4b42bb96006801597f81ed3c4b337"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#ac4d4b42bb96006801597f81ed3c4b337">SVF::FlowSensitive::propagationTime</a></div><div class="ttdeci">double propagationTime</div><div class="ttdoc">time of points-to propagation. </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00308">FlowSensitive.h:308</a></div></div>
761
761
  <div class="ttc" id="classSVF_1_1PTAStat_html_a1a4d418fd9e5413e7ffbbfe57f5e0560"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a1a4d418fd9e5413e7ffbbfe57f5e0560">SVF::PTAStat::TotalNumOfPointers</a></div><div class="ttdeci">static const char * TotalNumOfPointers</div><div class="ttdoc">Total SVFIR value node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00060">PTAStat.h:60</a></div></div>
@@ -1651,12 +1651,12 @@ Additional Inherited Members</h2></td></tr>
1651
1651
  <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>
1652
1652
  <div class="ttc" id="classSVF_1_1FlowSensitiveTBHC_html_a045ffbf7eea276d154be2cf883ea71f7"><div class="ttname"><a href="classSVF_1_1FlowSensitiveTBHC.html#a045ffbf7eea276d154be2cf883ea71f7">SVF::FlowSensitiveTBHC::getTypeFromCTirMetadata</a></div><div class="ttdeci">const DIType * getTypeFromCTirMetadata(const SVFGNode *)</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveTBHC_8cpp_source.html#l00628">FlowSensitiveTBHC.cpp:628</a></div></div>
1653
1653
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac5683fe2e24b393ccc5cb6d8bc92cf2b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">SVF::PointerAnalysis::setObjFieldInsensitive</a></div><div class="ttdeci">void setObjFieldInsensitive(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00362">PointerAnalysis.h:362</a></div></div>
1654
- <div class="ttc" id="classSVF_1_1GepStmt_html_adf6912f8ddae4f765b685a4f9d3be602"><div class="ttname"><a href="classSVF_1_1GepStmt.html#adf6912f8ddae4f765b685a4f9d3be602">SVF::GepStmt::getConstantFieldIdx</a></div><div class="ttdeci">s64_t getConstantFieldIdx() const</div><div class="ttdoc">offset of the gep statement </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00446">SVFStatements.h:446</a></div></div>
1654
+ <div class="ttc" id="classSVF_1_1GepStmt_html_adf6912f8ddae4f765b685a4f9d3be602"><div class="ttname"><a href="classSVF_1_1GepStmt.html#adf6912f8ddae4f765b685a4f9d3be602">SVF::GepStmt::getConstantFieldIdx</a></div><div class="ttdeci">s64_t getConstantFieldIdx() const</div><div class="ttdoc">Field index of the gep statement if it access the field of a struct. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00454">SVFStatements.h:454</a></div></div>
1655
1655
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a5ec3d9bf1fc81346c9df29638daedc0f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">SVF::PointerAnalysis::stat</a></div><div class="ttdeci">PTAStat * stat</div><div class="ttdoc">Statistics. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00155">PointerAnalysis.h:155</a></div></div>
1656
1656
  <div class="ttc" id="classSVF_1_1PointsTo_html_ab196d86cfb48d1c5d27a0c03c7497afa"><div class="ttname"><a href="classSVF_1_1PointsTo.html#ab196d86cfb48d1c5d27a0c03c7497afa">SVF::PointsTo::set</a></div><div class="ttdeci">void set(u32_t n)</div><div class="ttdoc">Inserts n in the set. </div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00149">PointsTo.cpp:149</a></div></div>
1657
1657
  <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00176">SVFBasicTypes.h:176</a></div></div>
1658
1658
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_a219edef6c013a953ed12ee3c56bde6de"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#a219edef6c013a953ed12ee3c56bde6de">SVF::TypeBasedHeapCloning::getType</a></div><div class="ttdeci">const DIType * getType(NodeID o) const</div><div class="ttdoc">Returns the type (from objToType) of o. Asserts existence. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00058">TypeBasedHeapCloning.cpp:58</a></div></div>
1659
- <div class="ttc" id="classSVF_1_1GepStmt_html_a0ddf180a0f7ba64fc8655687910e3788"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">SVF::GepStmt::isVariantFieldGep</a></div><div class="ttdeci">bool isVariantFieldGep() const</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00451">SVFStatements.h:451</a></div></div>
1659
+ <div class="ttc" id="classSVF_1_1GepStmt_html_a0ddf180a0f7ba64fc8655687910e3788"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">SVF::GepStmt::isVariantFieldGep</a></div><div class="ttdeci">bool isVariantFieldGep() const</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00459">SVFStatements.h:459</a></div></div>
1660
1660
  <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>
1661
1661
  <div class="ttc" id="classSVF_1_1FlowSensitiveTBHC_html_acd6ade2b73c19d1eb7faf0e457becba6"><div class="ttname"><a href="classSVF_1_1FlowSensitiveTBHC.html#acd6ade2b73c19d1eb7faf0e457becba6">SVF::FlowSensitiveTBHC::gepToSVFGRetrievers</a></div><div class="ttdeci">Map&lt; NodeID, NodeBS &gt; gepToSVFGRetrievers</div><div class="ttdoc">Maps GEP objects to the SVFG nodes that retrieved them with getGepObjClones. </div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveTBHC_8h_source.html#l00115">FlowSensitiveTBHC.h:115</a></div></div>
1662
1662
  <div class="ttc" id="classSVF_1_1TypeBasedHeapCloning_html_ae520e0551e63223a908f92a6b9667356"><div class="ttname"><a href="classSVF_1_1TypeBasedHeapCloning.html#ae520e0551e63223a908f92a6b9667356">SVF::TypeBasedHeapCloning::getFilterSet</a></div><div class="ttdeci">PointsTo &amp; getFilterSet(NodeID loc)</div><div class="ttdoc">Returns the filter set of a location. Not const; could create empty PointsTo. </div><div class="ttdef"><b>Definition:</b> <a href="TypeBasedHeapCloning_8cpp_source.html#l00113">TypeBasedHeapCloning.cpp:113</a></div></div>
@@ -874,8 +874,8 @@ Private Attributes</h2></td></tr>
874
874
  </div><div class="memdoc">
875
875
 
876
876
  <p class="definition">Definition at line <a class="el" href="MHP_8h_source.html#l00383">383</a> of file <a class="el" href="MHP_8h_source.html">MHP.h</a>.</p>
877
- <div class="fragment"><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; {</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ForkJoinAnalysis.html#a2c6ce7aa04c399746d89230be0e0f1ce">tct</a>-&gt;<a class="code" href="classSVF_1_1TCT.html#afea9de8f27e501fdc2723cc14a8dc93f">getCallBlockNode</a>(inst);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; }</div><div class="ttc" id="classSVF_1_1ForkJoinAnalysis_html_a2c6ce7aa04c399746d89230be0e0f1ce"><div class="ttname"><a href="classSVF_1_1ForkJoinAnalysis.html#a2c6ce7aa04c399746d89230be0e0f1ce">SVF::ForkJoinAnalysis::tct</a></div><div class="ttdeci">TCT * tct</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00534">MHP.h:534</a></div></div>
878
- <div class="ttc" id="classSVF_1_1TCT_html_afea9de8f27e501fdc2723cc14a8dc93f"><div class="ttname"><a href="classSVF_1_1TCT.html#afea9de8f27e501fdc2723cc14a8dc93f">SVF::TCT::getCallBlockNode</a></div><div class="ttdeci">CallICFGNode * getCallBlockNode(const Instruction *inst)</div><div class="ttdoc">Get CallICFGNode given inst. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00151">TCT.h:151</a></div></div>
877
+ <div class="fragment"><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; {</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ForkJoinAnalysis.html#a2c6ce7aa04c399746d89230be0e0f1ce">tct</a>-&gt;<a class="code" href="classSVF_1_1TCT.html#a238810a60f1010c5177e01683c8c1159">getCallICFGNode</a>(inst);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; }</div><div class="ttc" id="classSVF_1_1ForkJoinAnalysis_html_a2c6ce7aa04c399746d89230be0e0f1ce"><div class="ttname"><a href="classSVF_1_1ForkJoinAnalysis.html#a2c6ce7aa04c399746d89230be0e0f1ce">SVF::ForkJoinAnalysis::tct</a></div><div class="ttdeci">TCT * tct</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00534">MHP.h:534</a></div></div>
878
+ <div class="ttc" id="classSVF_1_1TCT_html_a238810a60f1010c5177e01683c8c1159"><div class="ttname"><a href="classSVF_1_1TCT.html#a238810a60f1010c5177e01683c8c1159">SVF::TCT::getCallICFGNode</a></div><div class="ttdeci">CallICFGNode * getCallICFGNode(const Instruction *inst)</div><div class="ttdoc">Get CallICFGNode given inst. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00151">TCT.h:151</a></div></div>
879
879
  </div><!-- fragment -->
880
880
  </div>
881
881
  </div>
@@ -382,7 +382,7 @@ Additional Inherited Members</h2></td></tr>
382
382
  <div class="ttc" id="classSVF_1_1ObjVar_html_a3ccbe6bbe3f565641e0cf46c5ecbb6bb"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a3ccbe6bbe3f565641e0cf46c5ecbb6bb">SVF::ObjVar::ObjVar</a></div><div class="ttdeci">ObjVar(const Value *val, NodeID i, const MemObj *m, PNODEK ty=ObjNode)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00331">SVFVariables.h:331</a></div></div>
383
383
  <div class="ttc" id="classSVF_1_1ObjVar_html_a3d08dc1d15a449ff4b7018da4bfdcb88"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a3d08dc1d15a449ff4b7018da4bfdcb88">SVF::ObjVar::mem</a></div><div class="ttdeci">const MemObj * mem</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00329">SVFVariables.h:329</a></div></div>
384
384
  <div class="ttc" id="classSVF_1_1GepObjVar_html_a55b057663180420c6bb09bf849d83f6b"><div class="ttname"><a href="classSVF_1_1GepObjVar.html#a55b057663180420c6bb09bf849d83f6b">SVF::GepObjVar::ls</a></div><div class="ttdeci">LocationSet ls</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00462">SVFVariables.h:462</a></div></div>
385
- <div class="ttc" id="classSVF_1_1MemObj_html_a4da54ef60231d2e6c26669226b99d2f3"><div class="ttname"><a href="classSVF_1_1MemObj.html#a4da54ef60231d2e6c26669226b99d2f3">SVF::MemObj::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdoc">Get the reference value to this object. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00446">SymbolTableInfo.h:446</a></div></div>
385
+ <div class="ttc" id="classSVF_1_1MemObj_html_a4da54ef60231d2e6c26669226b99d2f3"><div class="ttname"><a href="classSVF_1_1MemObj.html#a4da54ef60231d2e6c26669226b99d2f3">SVF::MemObj::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdoc">Get the reference value to this object. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00439">SymbolTableInfo.h:439</a></div></div>
386
386
  </div><!-- fragment -->
387
387
  </div>
388
388
  </div>
@@ -628,10 +628,10 @@ Additional Inherited Members</h2></td></tr>
628
628
 
629
629
  <p class="definition">Definition at line <a class="el" href="SVFVariables_8h_source.html#l00521">521</a> of file <a class="el" href="SVFVariables_8h_source.html">SVFVariables.h</a>.</p>
630
630
  <div class="fragment"><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; {</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-&gt;<a class="code" href="classSVF_1_1SymbolTableInfo.html#a866085ff37b7841606c523817c621f49">getOriginalFieldType</a>(<a class="code" href="classSVF_1_1ObjVar.html#a3d08dc1d15a449ff4b7018da4bfdcb88">mem</a>-&gt;<a class="code" href="classSVF_1_1MemObj.html#aa4fa7a1b86d66692ffffeaee0e187216">getType</a>(), <a class="code" href="classSVF_1_1GepObjVar.html#a55b057663180420c6bb09bf849d83f6b">ls</a>.<a class="code" href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">accumulateConstantFieldIdx</a>());</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; }</div><div class="ttc" id="classSVF_1_1LocationSet_html_ab987c41ffdae931d941f89d03ed09146"><div class="ttname"><a href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">SVF::LocationSet::accumulateConstantFieldIdx</a></div><div class="ttdeci">s64_t accumulateConstantFieldIdx() const</div><div class="ttdoc">Get methods. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00120">LocationSet.h:120</a></div></div>
631
- <div class="ttc" id="classSVF_1_1MemObj_html_aa4fa7a1b86d66692ffffeaee0e187216"><div class="ttname"><a href="classSVF_1_1MemObj.html#aa4fa7a1b86d66692ffffeaee0e187216">SVF::MemObj::getType</a></div><div class="ttdeci">const Type * getType() const</div><div class="ttdoc">Get obj type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00626">SymbolTableInfo.cpp:626</a></div></div>
632
- <div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a866085ff37b7841606c523817c621f49"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a866085ff37b7841606c523817c621f49">SVF::SymbolTableInfo::getOriginalFieldType</a></div><div class="ttdeci">const Type * getOriginalFieldType(const Type *baseType, u32_t field_idx)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00342">SymbolTableInfo.cpp:342</a></div></div>
631
+ <div class="ttc" id="classSVF_1_1MemObj_html_aa4fa7a1b86d66692ffffeaee0e187216"><div class="ttname"><a href="classSVF_1_1MemObj.html#aa4fa7a1b86d66692ffffeaee0e187216">SVF::MemObj::getType</a></div><div class="ttdeci">const Type * getType() const</div><div class="ttdoc">Get obj type. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00689">SymbolTableInfo.cpp:689</a></div></div>
632
+ <div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a866085ff37b7841606c523817c621f49"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a866085ff37b7841606c523817c621f49">SVF::SymbolTableInfo::getOriginalFieldType</a></div><div class="ttdeci">const Type * getOriginalFieldType(const Type *baseType, u32_t field_idx)</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00405">SymbolTableInfo.cpp:405</a></div></div>
633
633
  <div class="ttc" id="classSVF_1_1ObjVar_html_a3d08dc1d15a449ff4b7018da4bfdcb88"><div class="ttname"><a href="classSVF_1_1ObjVar.html#a3d08dc1d15a449ff4b7018da4bfdcb88">SVF::ObjVar::mem</a></div><div class="ttdeci">const MemObj * mem</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00329">SVFVariables.h:329</a></div></div>
634
- <div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00059">SymbolTableInfo.cpp:59</a></div></div>
634
+ <div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00101">SymbolTableInfo.cpp:101</a></div></div>
635
635
  <div class="ttc" id="classSVF_1_1GepObjVar_html_a55b057663180420c6bb09bf849d83f6b"><div class="ttname"><a href="classSVF_1_1GepObjVar.html#a55b057663180420c6bb09bf849d83f6b">SVF::GepObjVar::ls</a></div><div class="ttdeci">LocationSet ls</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00462">SVFVariables.h:462</a></div></div>
636
636
  </div><!-- fragment -->
637
637
  </div>
@@ -102,11 +102,13 @@ $(function() {
102
102
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html#a973a2b79da223275ed6a1831837b89c7">getLHSVar</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
103
103
  <tr><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">getLHSVarID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
104
104
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">getLocationSet</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html">SVF::GepStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
105
- <tr><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html#ad03d28d16754c9049dd4d0ad3b6c1e28">getRHSVar</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
106
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html#a4cec89489e82c60c287cae3327f3f01d">getRHSVarID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
107
- <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>
108
- <tr class="even"><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>
109
- <tr><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>
105
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html#a37811e62495493454405cb33e4a2b904">getOffsetValueVec</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html">SVF::GepStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
106
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html#ad03d28d16754c9049dd4d0ad3b6c1e28">getRHSVar</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
107
+ <tr><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html#a4cec89489e82c60c287cae3327f3f01d">getRHSVarID</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1AssignStmt.html">SVF::AssignStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
108
+ <tr class="even"><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>
109
+ <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>
110
+ <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>
111
+ <tr><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html#ab6f37c073e4755c4b8bb3ed6365687f4">isConstantOffset</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html">SVF::GepStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
110
112
  <tr class="even"><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>
111
113
  <tr><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">isVariantFieldGep</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1GepStmt.html">SVF::GepStmt</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
112
114
  <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>
@@ -89,10 +89,16 @@ Inheritance diagram for SVF::GepStmt:</div>
89
89
  Public Member Functions</h2></td></tr>
90
90
  <tr class="memitem:abec33091e0dac0cdd5b95b6d7b0db3d8"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1LocationSet.html">LocationSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">getLocationSet</a> () const</td></tr>
91
91
  <tr class="separator:abec33091e0dac0cdd5b95b6d7b0db3d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
92
+ <tr class="memitem:a37811e62495493454405cb33e4a2b904"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1LocationSet.html#a9bb7e08f7cfb2859d25b0e68e21fec89">LocationSet::OffsetValueVec</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepStmt.html#a37811e62495493454405cb33e4a2b904">getOffsetValueVec</a> () const</td></tr>
93
+ <tr class="separator:a37811e62495493454405cb33e4a2b904"><td class="memSeparator" colspan="2">&#160;</td></tr>
94
+ <tr class="memitem:ab6f37c073e4755c4b8bb3ed6365687f4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepStmt.html#ab6f37c073e4755c4b8bb3ed6365687f4">isConstantOffset</a> () const</td></tr>
95
+ <tr class="memdesc:ab6f37c073e4755c4b8bb3ed6365687f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return TRUE if this is a constant location set. <a href="#ab6f37c073e4755c4b8bb3ed6365687f4">More...</a><br /></td></tr>
96
+ <tr class="separator:ab6f37c073e4755c4b8bb3ed6365687f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
92
97
  <tr class="memitem:a33b3b9ef0cf7e2ea6400aef74a399adf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#abe09d99af006554a5c00803e9a89f9a6">s64_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepStmt.html#a33b3b9ef0cf7e2ea6400aef74a399adf">accumulateConstantOffset</a> () const</td></tr>
98
+ <tr class="memdesc:a33b3b9ef0cf7e2ea6400aef74a399adf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return accumulated constant offset (when accessing array or struct) if this offset is a constant. <a href="#a33b3b9ef0cf7e2ea6400aef74a399adf">More...</a><br /></td></tr>
93
99
  <tr class="separator:a33b3b9ef0cf7e2ea6400aef74a399adf"><td class="memSeparator" colspan="2">&#160;</td></tr>
94
100
  <tr class="memitem:adf6912f8ddae4f765b685a4f9d3be602"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#abe09d99af006554a5c00803e9a89f9a6">s64_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepStmt.html#adf6912f8ddae4f765b685a4f9d3be602">getConstantFieldIdx</a> () const</td></tr>
95
- <tr class="memdesc:adf6912f8ddae4f765b685a4f9d3be602"><td class="mdescLeft">&#160;</td><td class="mdescRight">offset of the gep statement <a href="#adf6912f8ddae4f765b685a4f9d3be602">More...</a><br /></td></tr>
101
+ <tr class="memdesc:adf6912f8ddae4f765b685a4f9d3be602"><td class="mdescLeft">&#160;</td><td class="mdescRight">Field index of the gep statement if it access the field of a struct. <a href="#adf6912f8ddae4f765b685a4f9d3be602">More...</a><br /></td></tr>
96
102
  <tr class="separator:adf6912f8ddae4f765b685a4f9d3be602"><td class="memSeparator" colspan="2">&#160;</td></tr>
97
103
  <tr class="memitem:a0ddf180a0f7ba64fc8655687910e3788"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">isVariantFieldGep</a> () const</td></tr>
98
104
  <tr class="memdesc:a0ddf180a0f7ba64fc8655687910e3788"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gep statement with a variant field index (pointer arithmetic) for struct field access. <a href="#a0ddf180a0f7ba64fc8655687910e3788">More...</a><br /></td></tr>
@@ -380,8 +386,8 @@ Additional Inherited Members</h2></td></tr>
380
386
 
381
387
  <p>constructor </p>
382
388
 
383
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00457">457</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
384
- <div class="fragment"><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; : <a class="code" href="classSVF_1_1AssignStmt.html#abc65520cc2b9608c97374829eb475c57">AssignStmt</a>(s,d,<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVFStmt::Gep</a>), <a class="code" href="classSVF_1_1GepStmt.html#a543a3f4801b22719f7b9677246bf2ac7">ls</a>(l), <a class="code" href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">variantField</a>(varfld)</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; {</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVF::SVFStmt::Gep</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
389
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00465">465</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
390
+ <div class="fragment"><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; : <a class="code" href="classSVF_1_1AssignStmt.html#abc65520cc2b9608c97374829eb475c57">AssignStmt</a>(s,d,<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVFStmt::Gep</a>), <a class="code" href="classSVF_1_1GepStmt.html#a543a3f4801b22719f7b9677246bf2ac7">ls</a>(l), <a class="code" href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">variantField</a>(varfld)</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; {</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVF::SVFStmt::Gep</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
385
391
  <div class="ttc" id="classSVF_1_1AssignStmt_html_abc65520cc2b9608c97374829eb475c57"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#abc65520cc2b9608c97374829eb475c57">SVF::AssignStmt::AssignStmt</a></div><div class="ttdeci">AssignStmt()</div><div class="ttdoc">place holder </div></div>
386
392
  <div class="ttc" id="classSVF_1_1GepStmt_html_af8eefbd002ec36f36612b8e9ccdbc757"><div class="ttname"><a href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">SVF::GepStmt::variantField</a></div><div class="ttdeci">bool variantField</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access (e...</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00417">SVFStatements.h:417</a></div></div>
387
393
  <div class="ttc" id="classSVF_1_1GepStmt_html_a543a3f4801b22719f7b9677246bf2ac7"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a543a3f4801b22719f7b9677246bf2ac7">SVF::GepStmt::ls</a></div><div class="ttdeci">LocationSet ls</div><div class="ttdoc">location set of the gep edge </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00416">SVFStatements.h:416</a></div></div>
@@ -412,9 +418,11 @@ Additional Inherited Members</h2></td></tr>
412
418
  </table>
413
419
  </div><div class="memdoc">
414
420
 
415
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00441">441</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
416
- <div class="fragment"><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; {</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#a543a3f4801b22719f7b9677246bf2ac7">ls</a>.<a class="code" href="classSVF_1_1LocationSet.html#a216afe1a2481c57b278549732d5e185e">accumulateConstantOffset</a>();</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a216afe1a2481c57b278549732d5e185e"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a216afe1a2481c57b278549732d5e185e">SVF::LocationSet::accumulateConstantOffset</a></div><div class="ttdeci">s64_t accumulateConstantOffset() const</div><div class="ttdoc">Return accumulated constant offset given OffsetValueVec. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#l00106">LocationSet.cpp:106</a></div></div>
417
- <div class="ttc" id="classSVF_1_1GepStmt_html_a543a3f4801b22719f7b9677246bf2ac7"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a543a3f4801b22719f7b9677246bf2ac7">SVF::GepStmt::ls</a></div><div class="ttdeci">LocationSet ls</div><div class="ttdoc">location set of the gep edge </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00416">SVFStatements.h:416</a></div></div>
421
+ <p>Return accumulated constant offset (when accessing array or struct) if this offset is a constant. </p>
422
+
423
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00449">449</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
424
+ <div class="fragment"><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; {</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">getLocationSet</a>().<a class="code" href="classSVF_1_1LocationSet.html#a216afe1a2481c57b278549732d5e185e">accumulateConstantOffset</a>();</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a216afe1a2481c57b278549732d5e185e"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a216afe1a2481c57b278549732d5e185e">SVF::LocationSet::accumulateConstantOffset</a></div><div class="ttdeci">s64_t accumulateConstantOffset() const</div><div class="ttdoc">Return accumulated constant offset given OffsetValueVec. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#l00111">LocationSet.cpp:111</a></div></div>
425
+ <div class="ttc" id="classSVF_1_1GepStmt_html_abec33091e0dac0cdd5b95b6d7b0db3d8"><div class="ttname"><a href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">SVF::GepStmt::getLocationSet</a></div><div class="ttdeci">const LocationSet &amp; getLocationSet() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00435">SVFStatements.h:435</a></div></div>
418
426
  </div><!-- fragment -->
419
427
  </div>
420
428
  </div>
@@ -529,10 +537,10 @@ Additional Inherited Members</h2></td></tr>
529
537
  </table>
530
538
  </div><div class="memdoc">
531
539
 
532
- <p>offset of the gep statement </p>
540
+ <p>Field index of the gep statement if it access the field of a struct. </p>
533
541
 
534
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00446">446</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
535
- <div class="fragment"><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">getLocationSet</a>().<a class="code" href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">accumulateConstantFieldIdx</a>();</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; }</div><div class="ttc" id="classSVF_1_1LocationSet_html_ab987c41ffdae931d941f89d03ed09146"><div class="ttname"><a href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">SVF::LocationSet::accumulateConstantFieldIdx</a></div><div class="ttdeci">s64_t accumulateConstantFieldIdx() const</div><div class="ttdoc">Get methods. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00120">LocationSet.h:120</a></div></div>
542
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00454">454</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
543
+ <div class="fragment"><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; {</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">getLocationSet</a>().<a class="code" href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">accumulateConstantFieldIdx</a>();</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; }</div><div class="ttc" id="classSVF_1_1LocationSet_html_ab987c41ffdae931d941f89d03ed09146"><div class="ttname"><a href="classSVF_1_1LocationSet.html#ab987c41ffdae931d941f89d03ed09146">SVF::LocationSet::accumulateConstantFieldIdx</a></div><div class="ttdeci">s64_t accumulateConstantFieldIdx() const</div><div class="ttdoc">Get methods. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00120">LocationSet.h:120</a></div></div>
536
544
  <div class="ttc" id="classSVF_1_1GepStmt_html_abec33091e0dac0cdd5b95b6d7b0db3d8"><div class="ttname"><a href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">SVF::GepStmt::getLocationSet</a></div><div class="ttdeci">const LocationSet &amp; getLocationSet() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00435">SVFStatements.h:435</a></div></div>
537
545
  </div><!-- fragment -->
538
546
  </div>
@@ -562,11 +570,71 @@ Additional Inherited Members</h2></td></tr>
562
570
 
563
571
  <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00435">435</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
564
572
  <div class="fragment"><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; {</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>(<a class="code" href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">isVariantFieldGep</a>()==<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;Can&#39;t retrieve the LocationSet if using a variable field index (pointer arithmetic) for struct field access &quot;</span>);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#a543a3f4801b22719f7b9677246bf2ac7">ls</a>;</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; }</div><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>
565
- <div class="ttc" id="classSVF_1_1GepStmt_html_a0ddf180a0f7ba64fc8655687910e3788"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">SVF::GepStmt::isVariantFieldGep</a></div><div class="ttdeci">bool isVariantFieldGep() const</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00451">SVFStatements.h:451</a></div></div>
573
+ <div class="ttc" id="classSVF_1_1GepStmt_html_a0ddf180a0f7ba64fc8655687910e3788"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788">SVF::GepStmt::isVariantFieldGep</a></div><div class="ttdeci">bool isVariantFieldGep() const</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access. </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00459">SVFStatements.h:459</a></div></div>
566
574
  <div class="ttc" id="classSVF_1_1GepStmt_html_a543a3f4801b22719f7b9677246bf2ac7"><div class="ttname"><a href="classSVF_1_1GepStmt.html#a543a3f4801b22719f7b9677246bf2ac7">SVF::GepStmt::ls</a></div><div class="ttdeci">LocationSet ls</div><div class="ttdoc">location set of the gep edge </div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00416">SVFStatements.h:416</a></div></div>
567
575
  </div><!-- fragment -->
568
576
  </div>
569
577
  </div>
578
+ <a id="a37811e62495493454405cb33e4a2b904"></a>
579
+ <h2 class="memtitle"><span class="permalink"><a href="#a37811e62495493454405cb33e4a2b904">&#9670;&nbsp;</a></span>getOffsetValueVec()</h2>
580
+
581
+ <div class="memitem">
582
+ <div class="memproto">
583
+ <table class="mlabels">
584
+ <tr>
585
+ <td class="mlabels-left">
586
+ <table class="memname">
587
+ <tr>
588
+ <td class="memname">const <a class="el" href="classSVF_1_1LocationSet.html#a9bb7e08f7cfb2859d25b0e68e21fec89">LocationSet::OffsetValueVec</a>&amp; SVF::GepStmt::getOffsetValueVec </td>
589
+ <td>(</td>
590
+ <td class="paramname"></td><td>)</td>
591
+ <td> const</td>
592
+ </tr>
593
+ </table>
594
+ </td>
595
+ <td class="mlabels-right">
596
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
597
+ </tr>
598
+ </table>
599
+ </div><div class="memdoc">
600
+
601
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00440">440</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
602
+ <div class="fragment"><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; {</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">getLocationSet</a>().<a class="code" href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">getOffsetValueVec</a>();</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div><div class="ttc" id="classSVF_1_1GepStmt_html_abec33091e0dac0cdd5b95b6d7b0db3d8"><div class="ttname"><a href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">SVF::GepStmt::getLocationSet</a></div><div class="ttdeci">const LocationSet &amp; getLocationSet() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00435">SVFStatements.h:435</a></div></div>
603
+ <div class="ttc" id="classSVF_1_1LocationSet_html_a5a5ca0b81da0b34ab426bc6a28ed346c"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a5a5ca0b81da0b34ab426bc6a28ed346c">SVF::LocationSet::getOffsetValueVec</a></div><div class="ttdeci">const OffsetValueVec &amp; getOffsetValueVec() const</div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8h_source.html#l00128">LocationSet.h:128</a></div></div>
604
+ </div><!-- fragment -->
605
+ </div>
606
+ </div>
607
+ <a id="ab6f37c073e4755c4b8bb3ed6365687f4"></a>
608
+ <h2 class="memtitle"><span class="permalink"><a href="#ab6f37c073e4755c4b8bb3ed6365687f4">&#9670;&nbsp;</a></span>isConstantOffset()</h2>
609
+
610
+ <div class="memitem">
611
+ <div class="memproto">
612
+ <table class="mlabels">
613
+ <tr>
614
+ <td class="mlabels-left">
615
+ <table class="memname">
616
+ <tr>
617
+ <td class="memname">bool SVF::GepStmt::isConstantOffset </td>
618
+ <td>(</td>
619
+ <td class="paramname"></td><td>)</td>
620
+ <td> const</td>
621
+ </tr>
622
+ </table>
623
+ </td>
624
+ <td class="mlabels-right">
625
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
626
+ </tr>
627
+ </table>
628
+ </div><div class="memdoc">
629
+
630
+ <p>Return TRUE if this is a constant location set. </p>
631
+
632
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00445">445</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
633
+ <div class="fragment"><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; {</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">getLocationSet</a>().<a class="code" href="classSVF_1_1LocationSet.html#a4a9185282308c50f86fdf66f7060373d">isConstantOffset</a>();</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; }</div><div class="ttc" id="classSVF_1_1LocationSet_html_a4a9185282308c50f86fdf66f7060373d"><div class="ttname"><a href="classSVF_1_1LocationSet.html#a4a9185282308c50f86fdf66f7060373d">SVF::LocationSet::isConstantOffset</a></div><div class="ttdeci">bool isConstantOffset() const</div><div class="ttdoc">Return TRUE if this is a constant location set. </div><div class="ttdef"><b>Definition:</b> <a href="LocationSet_8cpp_source.html#l00049">LocationSet.cpp:49</a></div></div>
634
+ <div class="ttc" id="classSVF_1_1GepStmt_html_abec33091e0dac0cdd5b95b6d7b0db3d8"><div class="ttname"><a href="classSVF_1_1GepStmt.html#abec33091e0dac0cdd5b95b6d7b0db3d8">SVF::GepStmt::getLocationSet</a></div><div class="ttdeci">const LocationSet &amp; getLocationSet() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00435">SVFStatements.h:435</a></div></div>
635
+ </div><!-- fragment -->
636
+ </div>
637
+ </div>
570
638
  <a id="a0ddf180a0f7ba64fc8655687910e3788"></a>
571
639
  <h2 class="memtitle"><span class="permalink"><a href="#a0ddf180a0f7ba64fc8655687910e3788">&#9670;&nbsp;</a></span>isVariantFieldGep()</h2>
572
640
 
@@ -592,8 +660,8 @@ Additional Inherited Members</h2></td></tr>
592
660
 
593
661
  <p>Gep statement with a variant field index (pointer arithmetic) for struct field access. </p>
594
662
 
595
- <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00451">451</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
596
- <div class="fragment"><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; {</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">variantField</a>;</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; } </div><div class="ttc" id="classSVF_1_1GepStmt_html_af8eefbd002ec36f36612b8e9ccdbc757"><div class="ttname"><a href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">SVF::GepStmt::variantField</a></div><div class="ttdeci">bool variantField</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access (e...</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00417">SVFStatements.h:417</a></div></div>
663
+ <p class="definition">Definition at line <a class="el" href="SVFStatements_8h_source.html#l00459">459</a> of file <a class="el" href="SVFStatements_8h_source.html">SVFStatements.h</a>.</p>
664
+ <div class="fragment"><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; {</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">variantField</a>;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; } </div><div class="ttc" id="classSVF_1_1GepStmt_html_af8eefbd002ec36f36612b8e9ccdbc757"><div class="ttname"><a href="classSVF_1_1GepStmt.html#af8eefbd002ec36f36612b8e9ccdbc757">SVF::GepStmt::variantField</a></div><div class="ttdeci">bool variantField</div><div class="ttdoc">Gep statement with a variant field index (pointer arithmetic) for struct field access (e...</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00417">SVFStatements.h:417</a></div></div>
597
665
  </div><!-- fragment -->
598
666
  </div>
599
667
  </div>