svf-tools 1.0.410 → 1.0.413

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 (208) hide show
  1. package/CMakeLists.txt +1 -1
  2. package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
  3. package/SVF-doxygen/html/html/AndersenHLCD_8cpp_source.html +1 -1
  4. package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +2 -2
  6. package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +1 -1
  7. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +3 -3
  8. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +3 -3
  9. package/SVF-doxygen/html/html/Andersen_8h_source.html +3 -3
  10. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
  11. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +3 -3
  12. package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
  14. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +7 -7
  15. package/SVF-doxygen/html/html/DDAStat_8h_source.html +5 -5
  16. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +2 -2
  17. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +3 -2
  18. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +2 -2
  19. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +7 -6
  20. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +3 -3
  21. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +1 -1
  22. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +1 -1
  23. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +1 -1
  24. package/SVF-doxygen/html/html/MHP_8cpp.html +2 -83
  25. package/SVF-doxygen/html/html/MHP_8cpp_source.html +42 -46
  26. package/SVF-doxygen/html/html/MHP_8h_source.html +26 -26
  27. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +2 -2
  28. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +1 -1
  29. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +2 -2
  30. package/SVF-doxygen/html/html/MTA_8cpp_source.html +1 -1
  31. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +3 -3
  32. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +10 -10
  33. package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +9 -9
  34. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +11 -11
  35. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +8 -8
  36. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +9 -9
  37. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +30 -31
  38. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
  39. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +33 -34
  40. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +9 -9
  41. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +8 -7
  42. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +3 -3
  43. package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
  44. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +1 -1
  45. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +1 -1
  46. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +3 -3
  47. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +1 -1
  48. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +2 -2
  49. package/SVF-doxygen/html/html/TCT_8cpp_source.html +14 -14
  50. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +1 -1
  51. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +3 -3
  52. package/SVF-doxygen/html/html/VFG_8cpp_source.html +1 -1
  53. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +6 -5
  54. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +214 -215
  55. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +15 -16
  56. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +180 -181
  57. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +1 -4
  58. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +226 -227
  59. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +0 -3
  60. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +232 -233
  61. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +2 -5
  62. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +222 -223
  63. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +3 -6
  64. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +222 -223
  65. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -4
  66. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +152 -154
  67. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +9 -12
  68. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +3 -3
  69. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +221 -222
  70. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +0 -3
  71. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +132 -133
  72. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +28 -33
  73. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +2 -4
  74. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +10 -10
  75. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +1 -1
  76. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +3 -3
  77. package/SVF-doxygen/html/html/classSVF_1_1DDAStat-members.html +4 -4
  78. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +34 -25
  79. package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +16 -16
  80. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +247 -248
  81. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +2 -5
  82. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +208 -209
  83. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +8 -11
  84. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +238 -239
  85. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +21 -24
  86. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +2 -2
  87. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +275 -276
  88. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +8 -10
  89. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +31 -31
  90. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +2 -2
  91. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +38 -38
  92. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode-members.html +13 -14
  93. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +19 -43
  94. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +2 -2
  95. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +1 -1
  96. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +74 -74
  97. package/SVF-doxygen/html/html/classSVF_1_1MHPValidator.html +7 -7
  98. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +1 -1
  99. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +1 -1
  100. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +4 -4
  101. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +5 -5
  102. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +2 -2
  103. package/SVF-doxygen/html/html/classSVF_1_1MemObj-members.html +1 -1
  104. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +8 -8
  105. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +3 -3
  106. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat-members.html +2 -2
  107. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +15 -14
  108. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +33 -33
  109. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +3 -3
  110. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis-members.html +94 -95
  111. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +73 -107
  112. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +1 -1
  113. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +4 -4
  114. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +11 -13
  115. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat-members.html +6 -6
  116. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +53 -52
  117. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +15 -30
  118. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +2 -2
  119. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +3 -3
  120. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +193 -194
  121. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +0 -3
  122. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +18 -18
  123. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +1 -1
  124. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +184 -185
  125. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -5
  126. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +3 -3
  127. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +1 -1
  128. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +287 -288
  129. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +8 -10
  130. package/SVF-doxygen/html/html/functions_0x7e.html +1 -1
  131. package/SVF-doxygen/html/html/functions_c.html +18 -21
  132. package/SVF-doxygen/html/html/functions_func_0x7e.html +1 -1
  133. package/SVF-doxygen/html/html/functions_func_c.html +12 -13
  134. package/SVF-doxygen/html/html/functions_func_p.html +9 -9
  135. package/SVF-doxygen/html/html/functions_l.html +3 -3
  136. package/SVF-doxygen/html/html/functions_m.html +4 -4
  137. package/SVF-doxygen/html/html/functions_o.html +4 -4
  138. package/SVF-doxygen/html/html/functions_p.html +12 -12
  139. package/SVF-doxygen/html/html/functions_r.html +5 -4
  140. package/SVF-doxygen/html/html/functions_s.html +3 -3
  141. package/SVF-doxygen/html/html/functions_t.html +5 -7
  142. package/SVF-doxygen/html/html/functions_v.html +6 -6
  143. package/SVF-doxygen/html/html/functions_vars_m.html +4 -4
  144. package/SVF-doxygen/html/html/functions_vars_r.html +1 -2
  145. package/SVF-doxygen/html/html/globals_func_g.html +0 -6
  146. package/SVF-doxygen/html/html/globals_g.html +2 -8
  147. package/SVF-doxygen/html/html/globals_s.html +4 -2
  148. package/SVF-doxygen/html/html/namespaceSVF.html +1 -1
  149. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +1 -2
  150. package/SVF-doxygen/html/html/search/all_10.js +7 -7
  151. package/SVF-doxygen/html/html/search/all_12.js +3 -3
  152. package/SVF-doxygen/html/html/search/all_13.js +7 -7
  153. package/SVF-doxygen/html/html/search/all_14.js +4 -4
  154. package/SVF-doxygen/html/html/search/all_16.js +3 -3
  155. package/SVF-doxygen/html/html/search/all_1b.js +1 -1
  156. package/SVF-doxygen/html/html/search/all_3.js +1 -1
  157. package/SVF-doxygen/html/html/search/all_7.js +0 -2
  158. package/SVF-doxygen/html/html/search/all_c.js +2 -2
  159. package/SVF-doxygen/html/html/search/all_d.js +4 -4
  160. package/SVF-doxygen/html/html/search/all_e.js +1 -1
  161. package/SVF-doxygen/html/html/search/all_f.js +3 -3
  162. package/SVF-doxygen/html/html/search/functions_10.js +1 -1
  163. package/SVF-doxygen/html/html/search/functions_16.js +1 -1
  164. package/SVF-doxygen/html/html/search/functions_2.js +1 -1
  165. package/SVF-doxygen/html/html/search/functions_6.js +0 -2
  166. package/SVF-doxygen/html/html/search/functions_e.js +6 -6
  167. package/SVF-doxygen/html/html/search/variables_12.js +1 -1
  168. package/SVF-doxygen/html/html/search/variables_14.js +3 -3
  169. package/SVF-doxygen/html/html/search/variables_d.js +4 -4
  170. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  171. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +14 -14
  172. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SVFGNodeLockSpan_01_4.html +3 -3
  173. package/SVF-doxygen/html/html/svf-ex_8cpp.html +4 -3
  174. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +2 -1
  175. package/include/DDA/DDAStat.h +4 -4
  176. package/include/Graphs/SVFGNode.h +2 -4
  177. package/include/Graphs/SVFGStat.h +8 -8
  178. package/include/Graphs/VFG.h +1 -1
  179. package/include/MTA/FSMPTA.h +1 -0
  180. package/include/MTA/MTAResultValidator.h +1 -1
  181. package/include/MemoryModel/AbstractPointsToDS.h +6 -0
  182. package/include/MemoryModel/PointerAnalysis.h +0 -5
  183. package/include/MemoryModel/SymbolTableInfo.h +2 -2
  184. package/include/Util/IRAnnotator.h +2 -2
  185. package/include/WPA/Andersen.h +1 -1
  186. package/include/WPA/AndersenSFR.h +1 -1
  187. package/lib/CUDD/CMakeLists.txt +1 -1
  188. package/lib/DDA/DDAStat.cpp +2 -2
  189. package/lib/Graphs/SVFGStat.cpp +4 -4
  190. package/lib/MSSA/SVFGBuilder.cpp +0 -1
  191. package/lib/MTA/FSMPTA.cpp +2 -3
  192. package/lib/MTA/LockResultValidator.cpp +1 -1
  193. package/lib/MTA/MHP.cpp +0 -36
  194. package/lib/MTA/MTAResultValidator.cpp +3 -3
  195. package/lib/MTA/TCT.cpp +0 -1
  196. package/lib/MemoryModel/PointerAnalysis.cpp +1 -1
  197. package/lib/MemoryModel/PointerAnalysisImpl.cpp +0 -1
  198. package/lib/MemoryModel/SVFIR.cpp +15 -15
  199. package/lib/MemoryModel/SymbolTableInfo.cpp +1 -1
  200. package/lib/SVF-FE/LLVMUtil.cpp +1 -1
  201. package/lib/SVF-FE/SVFIRBuilder.cpp +5 -5
  202. package/lib/Util/CoreBitVector.cpp +1 -1
  203. package/lib/Util/NodeIDAllocator.cpp +0 -1
  204. package/lib/WPA/AndersenSFR.cpp +2 -2
  205. package/lib/WPA/FlowSensitiveTBHC.cpp +1 -1
  206. package/lib/WPA/VersionedFlowSensitive.cpp +4 -4
  207. package/package.json +1 -1
  208. package/tools/Example/svf-ex.cpp +4 -3
@@ -231,9 +231,6 @@ Public Member Functions</h2></td></tr>
231
231
  <tr class="separator:a4dfb43679e9fa794ebad99b6584c32ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
232
232
  <tr class="memitem:ad9af9655a13f3faeaf265ba370d1f280"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ad9af9655a13f3faeaf265ba370d1f280">getRevPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId)=0</td></tr>
233
233
  <tr class="separator:ad9af9655a13f3faeaf265ba370d1f280"><td class="memSeparator" colspan="2">&#160;</td></tr>
234
- <tr class="memitem:a3f78f60e1947a6d6fbcd3a0ee11e262a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a3f78f60e1947a6d6fbcd3a0ee11e262a">clearPts</a> ()</td></tr>
235
- <tr class="memdesc:a3f78f60e1947a6d6fbcd3a0ee11e262a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear points-to data. <a href="#a3f78f60e1947a6d6fbcd3a0ee11e262a">More...</a><br /></td></tr>
236
- <tr class="separator:a3f78f60e1947a6d6fbcd3a0ee11e262a"><td class="memSeparator" colspan="2">&#160;</td></tr>
237
234
  <tr class="memitem:a84edebc59e29f2cc1b89a699b8641f30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a84edebc59e29f2cc1b89a699b8641f30">printIndCSTargets</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs, const <a class="el" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a> &amp;targets)</td></tr>
238
235
  <tr class="memdesc:a84edebc59e29f2cc1b89a699b8641f30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print targets of a function pointer. <a href="#a84edebc59e29f2cc1b89a699b8641f30">More...</a><br /></td></tr>
239
236
  <tr class="separator:a84edebc59e29f2cc1b89a699b8641f30"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -739,7 +736,7 @@ Private Member Functions</h2></td></tr>
739
736
  <p>Constructor </p>
740
737
 
741
738
  <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8cpp_source.html#l00074">74</a> of file <a class="el" href="PointerAnalysis_8cpp_source.html">PointerAnalysis.cpp</a>.</p>
742
- <div class="fragment"><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; :</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a>(ty),<a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">icfg</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;{</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a> = p;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">OnTheFlyIterBudgetForStat</a> = <a class="code" href="classSVF_1_1Options.html#abae23cb06d932f93900f627813b9f4a4">Options::StatBudget</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a> = <a class="code" href="classSVF_1_1Options.html#a498a1a05a08be1ffd845aefeb0672bcb">Options::PStat</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">ptaImplTy</a> = <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">BaseImpl</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">alias_validation</a> = (alias_check &amp;&amp; <a class="code" href="classSVF_1_1Options.html#a4da18281b973b9ffb5068dd53060524c">Options::EnableAliasCheck</a>);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;}</div><div class="ttc" id="classSVF_1_1Options_html_abae23cb06d932f93900f627813b9f4a4"><div class="ttname"><a href="classSVF_1_1Options.html#abae23cb06d932f93900f627813b9f4a4">SVF::Options::StatBudget</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; StatBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00132">Options.h:132</a></div></div>
739
+ <div class="fragment"><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; :</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a>(ty),<a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">icfg</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;{</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a> = p;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">OnTheFlyIterBudgetForStat</a> = <a class="code" href="classSVF_1_1Options.html#abae23cb06d932f93900f627813b9f4a4">Options::StatBudget</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a> = <a class="code" href="classSVF_1_1Options.html#a498a1a05a08be1ffd845aefeb0672bcb">Options::PStat</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">ptaImplTy</a> = <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">BaseImpl</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">alias_validation</a> = (alias_check &amp;&amp; <a class="code" href="classSVF_1_1Options.html#a4da18281b973b9ffb5068dd53060524c">Options::EnableAliasCheck</a>);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;}</div><div class="ttc" id="classSVF_1_1Options_html_abae23cb06d932f93900f627813b9f4a4"><div class="ttname"><a href="classSVF_1_1Options.html#abae23cb06d932f93900f627813b9f4a4">SVF::Options::StatBudget</a></div><div class="ttdeci">static const llvm::cl::opt&lt; unsigned &gt; StatBudget</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00132">Options.h:132</a></div></div>
743
740
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a962cc91e4d68b25ce201072c384d8fc2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">SVF::PointerAnalysis::icfg</a></div><div class="ttdeci">ICFG * icfg</div><div class="ttdoc">Interprocedural control-flow graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00161">PointerAnalysis.h:161</a></div></div>
744
741
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">SVF::PointerAnalysis::BaseImpl</a></div><div class="ttdoc">Represents PointerAnalaysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00100">PointerAnalysis.h:100</a></div></div>
745
742
  <div class="ttc" id="classSVF_1_1Options_html_a498a1a05a08be1ffd845aefeb0672bcb"><div class="ttname"><a href="classSVF_1_1Options.html#a498a1a05a08be1ffd845aefeb0672bcb">SVF::Options::PStat</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PStat</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00131">Options.h:131</a></div></div>
@@ -966,45 +963,14 @@ Private Member Functions</h2></td></tr>
966
963
  <p>CallGraph SCC related methods. </p>
967
964
  <p>CallGraph SCC detection </p>
968
965
 
969
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00410">410</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
970
- <div class="fragment"><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; {</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">CallGraphSCC</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a123b5006a6da7053e5e357140da3c5a3">find</a>();</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; }</div><div class="ttc" id="classSVF_1_1SCCDetection_html_a123b5006a6da7053e5e357140da3c5a3"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a123b5006a6da7053e5e357140da3c5a3">SVF::SCCDetection::find</a></div><div class="ttdeci">void find(void)</div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00308">SCC.h:308</a></div></div>
966
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00405">405</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
967
+ <div class="fragment"><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; {</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">CallGraphSCC</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a123b5006a6da7053e5e357140da3c5a3">find</a>();</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; }</div><div class="ttc" id="classSVF_1_1SCCDetection_html_a123b5006a6da7053e5e357140da3c5a3"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a123b5006a6da7053e5e357140da3c5a3">SVF::SCCDetection::find</a></div><div class="ttdeci">void find(void)</div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00308">SCC.h:308</a></div></div>
971
968
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad47b39252e02c68dfb466d4f42dc7ebe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">SVF::PointerAnalysis::ptaCallGraph</a></div><div class="ttdeci">PTACallGraph * ptaCallGraph</div><div class="ttdoc">Call graph used for pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00157">PointerAnalysis.h:157</a></div></div>
972
969
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae3b651799345d9d92b6d736dafb03f63"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">SVF::PointerAnalysis::callGraphSCC</a></div><div class="ttdeci">CallGraphSCC * callGraphSCC</div><div class="ttdoc">SCC for CallGraph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00159">PointerAnalysis.h:159</a></div></div>
973
970
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac4ad73782f42f90ad7ac9c66edb27c69"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">SVF::PointerAnalysis::CallGraphSCC</a></div><div class="ttdeci">SCCDetection&lt; PTACallGraph * &gt; CallGraphSCC</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00112">PointerAnalysis.h:112</a></div></div>
974
971
  </div><!-- fragment -->
975
972
  </div>
976
973
  </div>
977
- <a id="a3f78f60e1947a6d6fbcd3a0ee11e262a"></a>
978
- <h2 class="memtitle"><span class="permalink"><a href="#a3f78f60e1947a6d6fbcd3a0ee11e262a">&#9670;&nbsp;</a></span>clearPts()</h2>
979
-
980
- <div class="memitem">
981
- <div class="memproto">
982
- <table class="mlabels">
983
- <tr>
984
- <td class="mlabels-left">
985
- <table class="memname">
986
- <tr>
987
- <td class="memname">virtual void SVF::PointerAnalysis::clearPts </td>
988
- <td>(</td>
989
- <td class="paramname"></td><td>)</td>
990
- <td></td>
991
- </tr>
992
- </table>
993
- </td>
994
- <td class="mlabels-right">
995
- <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
996
- </tr>
997
- </table>
998
- </div><div class="memdoc">
999
-
1000
- <p>Clear points-to data. </p>
1001
-
1002
- <p>Reimplemented in <a class="el" href="classSVF_1_1CondPTAImpl.html#adfae199dfbe05c9c20052e0fc204e6de">SVF::CondPTAImpl&lt; Cond &gt;</a>, and <a class="el" href="classSVF_1_1CondPTAImpl.html#adfae199dfbe05c9c20052e0fc204e6de">SVF::CondPTAImpl&lt; ContextCond &gt;</a>.</p>
1003
-
1004
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00261">261</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1005
- <div class="fragment"><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div></div><!-- fragment -->
1006
- </div>
1007
- </div>
1008
974
  <a id="a0bb90b398ef85504bcd816ae57bee01d"></a>
1009
975
  <h2 class="memtitle"><span class="permalink"><a href="#a0bb90b398ef85504bcd816ae57bee01d">&#9670;&nbsp;</a></span>computeDDAPts()</h2>
1010
976
 
@@ -1076,7 +1042,7 @@ Private Member Functions</h2></td></tr>
1076
1042
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad47b39252e02c68dfb466d4f42dc7ebe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">SVF::PointerAnalysis::ptaCallGraph</a></div><div class="ttdeci">PTACallGraph * ptaCallGraph</div><div class="ttdoc">Call graph used for pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00157">PointerAnalysis.h:157</a></div></div>
1077
1043
  <div class="ttc" id="classSVF_1_1SVFFunction_html_a3757cd3ae587eaca488fa4cd8ad3967d"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#a3757cd3ae587eaca488fa4cd8ad3967d">SVF::SVFFunction::arg_size</a></div><div class="ttdeci">u32_t arg_size() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00251">BasicTypes.h:251</a></div></div>
1078
1044
  <div class="ttc" id="classSVF_1_1ICFG_html_adc66b547720b9271e6805edea0b9d01f"><div class="ttname"><a href="classSVF_1_1ICFG.html#adc66b547720b9271e6805edea0b9d01f">SVF::ICFG::getCallICFGNode</a></div><div class="ttdeci">CallICFGNode * getCallICFGNode(const Instruction *inst)</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8cpp_source.html#l00209">ICFG.cpp:209</a></div></div>
1079
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1ca30dfa42702071b65d363c76d25cbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">SVF::PointerAnalysis::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00388">PointerAnalysis.h:388</a></div></div>
1045
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1ca30dfa42702071b65d363c76d25cbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">SVF::PointerAnalysis::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00383">PointerAnalysis.h:383</a></div></div>
1080
1046
  <div class="ttc" id="classSVF_1_1CallICFGNode_html_a674753d5ca0fbe28674acb25291f2bcf"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const Instruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00381">ICFGNode.h:381</a></div></div>
1081
1047
  <div class="ttc" id="classSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00364">ICFGNode.h:364</a></div></div>
1082
1048
  <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00235">BasicTypes.h:235</a></div></div>
@@ -1114,8 +1080,8 @@ Private Member Functions</h2></td></tr>
1114
1080
 
1115
1081
  <p>Determine whether a points-to contains a black hole or constant node. </p>
1116
1082
 
1117
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00305">305</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1118
- <div class="fragment"><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; {</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">return</span> pts.test(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#a3ce34b9fcb651689bce44ab48fbcdff0">getBlackHoleNode</a>());</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; }</div><div class="ttc" id="classSVF_1_1IRGraph_html_a3ce34b9fcb651689bce44ab48fbcdff0"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a3ce34b9fcb651689bce44ab48fbcdff0">SVF::IRGraph::getBlackHoleNode</a></div><div class="ttdeci">NodeID getBlackHoleNode() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00144">IRGraph.h:144</a></div></div>
1083
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00300">300</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1084
+ <div class="fragment"><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; {</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">return</span> pts.test(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#a3ce34b9fcb651689bce44ab48fbcdff0">getBlackHoleNode</a>());</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div><div class="ttc" id="classSVF_1_1IRGraph_html_a3ce34b9fcb651689bce44ab48fbcdff0"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a3ce34b9fcb651689bce44ab48fbcdff0">SVF::IRGraph::getBlackHoleNode</a></div><div class="ttdeci">NodeID getBlackHoleNode() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00144">IRGraph.h:144</a></div></div>
1119
1085
  <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>
1120
1086
  </div><!-- fragment -->
1121
1087
  </div>
@@ -1144,8 +1110,8 @@ Private Member Functions</h2></td></tr>
1144
1110
  </table>
1145
1111
  </div><div class="memdoc">
1146
1112
 
1147
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00309">309</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1148
- <div class="fragment"><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">return</span> pts.test(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#ac5da3a0cbe040a45d719b6f6a23aed91">getConstantNode</a>());</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div><div class="ttc" id="classSVF_1_1IRGraph_html_ac5da3a0cbe040a45d719b6f6a23aed91"><div class="ttname"><a href="classSVF_1_1IRGraph.html#ac5da3a0cbe040a45d719b6f6a23aed91">SVF::IRGraph::getConstantNode</a></div><div class="ttdeci">NodeID getConstantNode() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00148">IRGraph.h:148</a></div></div>
1113
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00304">304</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1114
+ <div class="fragment"><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span> pts.test(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#ac5da3a0cbe040a45d719b6f6a23aed91">getConstantNode</a>());</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div><div class="ttc" id="classSVF_1_1IRGraph_html_ac5da3a0cbe040a45d719b6f6a23aed91"><div class="ttname"><a href="classSVF_1_1IRGraph.html#ac5da3a0cbe040a45d719b6f6a23aed91">SVF::IRGraph::getConstantNode</a></div><div class="ttdeci">NodeID getConstantNode() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00148">IRGraph.h:148</a></div></div>
1149
1115
  <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>
1150
1116
  </div><!-- fragment -->
1151
1117
  </div>
@@ -1208,8 +1174,8 @@ Private Member Functions</h2></td></tr>
1208
1174
 
1209
1175
  <p>Whether print statistics. </p>
1210
1176
 
1211
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00381">381</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1212
- <div class="fragment"><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; {</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a3550ea3f087ec557a6fe076bc443b05d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">SVF::PointerAnalysis::print_stat</a></div><div class="ttdeci">bool print_stat</div><div class="ttdoc">User input flags. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00139">PointerAnalysis.h:139</a></div></div>
1177
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00376">376</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1178
+ <div class="fragment"><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; {</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a3550ea3f087ec557a6fe076bc443b05d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">SVF::PointerAnalysis::print_stat</a></div><div class="ttdeci">bool print_stat</div><div class="ttdoc">User input flags. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00139">PointerAnalysis.h:139</a></div></div>
1213
1179
  </div><!-- fragment -->
1214
1180
  </div>
1215
1181
  </div>
@@ -1238,8 +1204,8 @@ Private Member Functions</h2></td></tr>
1238
1204
 
1239
1205
  <p>Reimplemented in <a class="el" href="classSVF_1_1BVDataPTAImpl.html#a97705b60d294b87ee075a69f04a35d22">SVF::BVDataPTAImpl</a>.</p>
1240
1206
 
1241
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00271">271</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1242
- <div class="fragment"><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;{}</div></div><!-- fragment -->
1207
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00266">266</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1208
+ <div class="fragment"><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;{}</div></div><!-- fragment -->
1243
1209
  </div>
1244
1210
  </div>
1245
1211
  <a id="a08399de593c073b6dd848a8d849dad27"></a>
@@ -1298,8 +1264,8 @@ Private Member Functions</h2></td></tr>
1298
1264
 
1299
1265
  <p>Reimplemented in <a class="el" href="classSVF_1_1CondPTAImpl.html#aa260a3275fbec7061295306a58763d24">SVF::CondPTAImpl&lt; Cond &gt;</a>, <a class="el" href="classSVF_1_1CondPTAImpl.html#aa260a3275fbec7061295306a58763d24">SVF::CondPTAImpl&lt; ContextCond &gt;</a>, and <a class="el" href="classSVF_1_1BVDataPTAImpl.html#ae20bbb7991f585deb2e6d0d8115b1b93">SVF::BVDataPTAImpl</a>.</p>
1300
1266
 
1301
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00272">272</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1302
- <div class="fragment"><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;{}</div></div><!-- fragment -->
1267
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00267">267</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1268
+ <div class="fragment"><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;{}</div></div><!-- fragment -->
1303
1269
  </div>
1304
1270
  </div>
1305
1271
  <a id="a1a6cee7e690ccb3e53cdc4c3e67b386d"></a>
@@ -1405,8 +1371,8 @@ Private Member Functions</h2></td></tr>
1405
1371
 
1406
1372
  <p>Reimplemented in <a class="el" href="classSVF_1_1CondPTAImpl.html#a80daa422e0dacf75aceb4fe5b4687c04">SVF::CondPTAImpl&lt; Cond &gt;</a>, <a class="el" href="classSVF_1_1CondPTAImpl.html#a80daa422e0dacf75aceb4fe5b4687c04">SVF::CondPTAImpl&lt; ContextCond &gt;</a>, <a class="el" href="classSVF_1_1BVDataPTAImpl.html#a8d6cea841b6ded0f80ef2b5784e9b752">SVF::BVDataPTAImpl</a>, and <a class="el" href="classSVF_1_1Andersen.html#a43858bd242c7f2c5f33c3c0f6445376a">SVF::Andersen</a>.</p>
1407
1373
 
1408
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00270">270</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1409
- <div class="fragment"><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;{}</div></div><!-- fragment -->
1374
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00265">265</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1375
+ <div class="fragment"><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;{}</div></div><!-- fragment -->
1410
1376
  </div>
1411
1377
  </div>
1412
1378
  <a id="a118dabc50024b5cd91095814ade47166"></a>
@@ -1451,8 +1417,8 @@ Private Member Functions</h2></td></tr>
1451
1417
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0454332c89e60729956bb7d69a1a24df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0454332c89e60729956bb7d69a1a24df">SVF::PointerAnalysis::validateTests</a></div><div class="ttdeci">virtual void validateTests()</div><div class="ttdoc">Alias check functions to verify correctness of pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00242">PointerAnalysis.cpp:242</a></div></div>
1452
1418
  <div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00106">SVFIR.h:106</a></div></div>
1453
1419
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
1454
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a627bdc95485fd65e8846fcaa5e89559f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a627bdc95485fd65e8846fcaa5e89559f">SVF::PointerAnalysis::dumpTopLevelPtsTo</a></div><div class="ttdeci">virtual void dumpTopLevelPtsTo()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00270">PointerAnalysis.h:270</a></div></div>
1455
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a861554c2fdeaa406131c2c920b4c7908"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a861554c2fdeaa406131c2c920b4c7908">SVF::PointerAnalysis::dumpAllPts</a></div><div class="ttdeci">virtual void dumpAllPts()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00271">PointerAnalysis.h:271</a></div></div>
1420
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a627bdc95485fd65e8846fcaa5e89559f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a627bdc95485fd65e8846fcaa5e89559f">SVF::PointerAnalysis::dumpTopLevelPtsTo</a></div><div class="ttdeci">virtual void dumpTopLevelPtsTo()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00265">PointerAnalysis.h:265</a></div></div>
1421
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a861554c2fdeaa406131c2c920b4c7908"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a861554c2fdeaa406131c2c920b4c7908">SVF::PointerAnalysis::dumpAllPts</a></div><div class="ttdeci">virtual void dumpAllPts()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00266">PointerAnalysis.h:266</a></div></div>
1456
1422
  <div class="ttc" id="classSVF_1_1Options_html_a61c9d525088cc044f8937a39bb96aa93"><div class="ttname"><a href="classSVF_1_1Options.html#a61c9d525088cc044f8937a39bb96aa93">SVF::Options::CallGraphDotGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; CallGraphDotGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00136">Options.h:136</a></div></div>
1457
1423
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aac1a133d478bd14c74309d9c4eaf0c8e"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">SVF::PointerAnalysis::alias_validation</a></div><div class="ttdeci">bool alias_validation</div><div class="ttdoc">Flag for validating points-to/alias results. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00141">PointerAnalysis.h:141</a></div></div>
1458
1424
  <div class="ttc" id="classSVF_1_1Options_html_a14ceeb5d7de81a0946389159986e4955"><div class="ttname"><a href="classSVF_1_1Options.html#a14ceeb5d7de81a0946389159986e4955">SVF::Options::FuncPointerPrint</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; FuncPointerPrint</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00128">Options.h:128</a></div></div>
@@ -1491,8 +1457,8 @@ Private Member Functions</h2></td></tr>
1491
1457
 
1492
1458
  <p>Reimplemented in <a class="el" href="classSVF_1_1FlowSensitiveTBHC.html#a56dc95bb4b6d48f82c87c6280237990a">SVF::FlowSensitiveTBHC</a>.</p>
1493
1459
 
1494
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00358">358</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1495
- <div class="fragment"><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; {</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a7276e82b4648ed0e1b3d1b8b37b24089">getAllFieldsObjVars</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a7276e82b4648ed0e1b3d1b8b37b24089"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a7276e82b4648ed0e1b3d1b8b37b24089">SVF::SVFIR::getAllFieldsObjVars</a></div><div class="ttdeci">NodeBS &amp; getAllFieldsObjVars(const MemObj *obj)</div><div class="ttdoc">Get all fields of an object. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00480">SVFIR.cpp:480</a></div></div>
1460
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00353">353</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1461
+ <div class="fragment"><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; {</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a7276e82b4648ed0e1b3d1b8b37b24089">getAllFieldsObjVars</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a7276e82b4648ed0e1b3d1b8b37b24089"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a7276e82b4648ed0e1b3d1b8b37b24089">SVF::SVFIR::getAllFieldsObjVars</a></div><div class="ttdeci">NodeBS &amp; getAllFieldsObjVars(const MemObj *obj)</div><div class="ttdoc">Get all fields of an object. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00480">SVFIR.cpp:480</a></div></div>
1496
1462
  <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>
1497
1463
  </div><!-- fragment -->
1498
1464
  </div>
@@ -1582,8 +1548,8 @@ Private Member Functions</h2></td></tr>
1582
1548
  </table>
1583
1549
  </div><div class="memdoc">
1584
1550
 
1585
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00346">346</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1586
- <div class="fragment"><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; {</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a77a6bb9335aa12d29825af1b5ea07e08">getBaseObjVar</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a77a6bb9335aa12d29825af1b5ea07e08"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a77a6bb9335aa12d29825af1b5ea07e08">SVF::SVFIR::getBaseObjVar</a></div><div class="ttdeci">NodeID getBaseObjVar(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00410">SVFIR.h:410</a></div></div>
1551
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00341">341</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1552
+ <div class="fragment"><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; {</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a77a6bb9335aa12d29825af1b5ea07e08">getBaseObjVar</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a77a6bb9335aa12d29825af1b5ea07e08"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a77a6bb9335aa12d29825af1b5ea07e08">SVF::SVFIR::getBaseObjVar</a></div><div class="ttdeci">NodeID getBaseObjVar(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00410">SVFIR.h:410</a></div></div>
1587
1553
  <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>
1588
1554
  </div><!-- fragment -->
1589
1555
  </div>
@@ -1644,8 +1610,8 @@ Private Member Functions</h2></td></tr>
1644
1610
 
1645
1611
  <p>Get SCC rep node of a <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> node. </p>
1646
1612
 
1647
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00418">418</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1648
- <div class="fragment"><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; {</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; }</div><div class="ttc" id="classSVF_1_1SCCDetection_html_a3a5fdc9330a657240f77199f5aee602d"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">SVF::SCCDetection::repNode</a></div><div class="ttdeci">NodeID repNode(NodeID n) const</div><div class="ttdoc">get the rep node if not found return itself </div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00139">SCC.h:139</a></div></div>
1613
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00413">413</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1614
+ <div class="fragment"><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; {</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; }</div><div class="ttc" id="classSVF_1_1SCCDetection_html_a3a5fdc9330a657240f77199f5aee602d"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">SVF::SCCDetection::repNode</a></div><div class="ttdeci">NodeID repNode(NodeID n) const</div><div class="ttdoc">get the rep node if not found return itself </div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00139">SCC.h:139</a></div></div>
1649
1615
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae3b651799345d9d92b6d736dafb03f63"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">SVF::PointerAnalysis::callGraphSCC</a></div><div class="ttdeci">CallGraphSCC * callGraphSCC</div><div class="ttdoc">SCC for CallGraph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00159">PointerAnalysis.h:159</a></div></div>
1650
1616
  </div><!-- fragment -->
1651
1617
  </div>
@@ -1675,8 +1641,8 @@ Private Member Functions</h2></td></tr>
1675
1641
 
1676
1642
  <p>get <a class="el" href="classSVF_1_1CHGraph.html">CHGraph</a> </p>
1677
1643
 
1678
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00444">444</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1679
- <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_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0c0fce2539bb9ec6c824f6584a0f6b33"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">SVF::PointerAnalysis::chgraph</a></div><div class="ttdeci">CommonCHGraph * chgraph</div><div class="ttdoc">CHGraph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00163">PointerAnalysis.h:163</a></div></div>
1644
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00439">439</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1645
+ <div class="fragment"><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; {</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0c0fce2539bb9ec6c824f6584a0f6b33"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">SVF::PointerAnalysis::chgraph</a></div><div class="ttdeci">CommonCHGraph * chgraph</div><div class="ttdoc">CHGraph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00163">PointerAnalysis.h:163</a></div></div>
1680
1646
  </div><!-- fragment -->
1681
1647
  </div>
1682
1648
  </div>
@@ -1704,8 +1670,8 @@ Private Member Functions</h2></td></tr>
1704
1670
  </table>
1705
1671
  </div><div class="memdoc">
1706
1672
 
1707
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00350">350</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1708
- <div class="fragment"><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; {</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2878e202045b7f2c817185e8bf95d354">getFIObjVar</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a2878e202045b7f2c817185e8bf95d354"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a2878e202045b7f2c817185e8bf95d354">SVF::SVFIR::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(const MemObj *obj) const</div><div class="ttdoc">Get a field-insensitive obj SVFIR node according to a mem obj. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00364">SVFIR.h:364</a></div></div>
1673
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00345">345</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1674
+ <div class="fragment"><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; {</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2878e202045b7f2c817185e8bf95d354">getFIObjVar</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a2878e202045b7f2c817185e8bf95d354"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a2878e202045b7f2c817185e8bf95d354">SVF::SVFIR::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(const MemObj *obj) const</div><div class="ttdoc">Get a field-insensitive obj SVFIR node according to a mem obj. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00364">SVFIR.h:364</a></div></div>
1709
1675
  <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>
1710
1676
  </div><!-- fragment -->
1711
1677
  </div>
@@ -1736,8 +1702,8 @@ Private Member Functions</h2></td></tr>
1736
1702
 
1737
1703
  <p>Return function pointer PAGNode at a callsite cs. </p>
1738
1704
 
1739
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00285">285</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1740
- <div class="fragment"><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; {</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a17c5d9fa7c0bd3cd03c06b5ff0906eb6">getFunPtr</a>(cs);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a17c5d9fa7c0bd3cd03c06b5ff0906eb6"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a17c5d9fa7c0bd3cd03c06b5ff0906eb6">SVF::SVFIR::getFunPtr</a></div><div class="ttdeci">NodeID getFunPtr(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00303">SVFIR.h:303</a></div></div>
1705
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00280">280</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1706
+ <div class="fragment"><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; {</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a17c5d9fa7c0bd3cd03c06b5ff0906eb6">getFunPtr</a>(cs);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a17c5d9fa7c0bd3cd03c06b5ff0906eb6"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a17c5d9fa7c0bd3cd03c06b5ff0906eb6">SVF::SVFIR::getFunPtr</a></div><div class="ttdeci">NodeID getFunPtr(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00303">SVFIR.h:303</a></div></div>
1741
1707
  <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>
1742
1708
  </div><!-- fragment -->
1743
1709
  </div>
@@ -1776,8 +1742,8 @@ Private Member Functions</h2></td></tr>
1776
1742
  </table>
1777
1743
  </div><div class="memdoc">
1778
1744
 
1779
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00354">354</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1780
- <div class="fragment"><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; {</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a20c0c65af266ac876cb722aee6e87101">getGepObjVar</a>(<span class="keywordtype">id</span>,ls);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; }</div><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>
1745
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00349">349</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1746
+ <div class="fragment"><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; {</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a20c0c65af266ac876cb722aee6e87101">getGepObjVar</a>(<span class="keywordtype">id</span>,ls);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; }</div><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>
1781
1747
  <div class="ttc" id="classSVF_1_1SVFIR_html_a20c0c65af266ac876cb722aee6e87101"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a20c0c65af266ac876cb722aee6e87101">SVF::SVFIR::getGepObjVar</a></div><div class="ttdeci">NodeID getGepObjVar(const MemObj *obj, const LocationSet &amp;ls)</div><div class="ttdoc">Get a field SVFIR Object node according to base mem obj and offset. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00427">SVFIR.cpp:427</a></div></div>
1782
1748
  </div><!-- fragment -->
1783
1749
  </div>
@@ -1868,8 +1834,8 @@ Private Member Functions</h2></td></tr>
1868
1834
 
1869
1835
  <p>Get callees from an indirect callsite. </p>
1870
1836
 
1871
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00388">388</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1872
- <div class="fragment"><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; {</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#ad49fa2a288945f6910deb11acdf6a42d">getIndCallMap</a>();</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; }</div><div class="ttc" id="classSVF_1_1PTACallGraph_html_ad49fa2a288945f6910deb11acdf6a42d"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#ad49fa2a288945f6910deb11acdf6a42d">SVF::PTACallGraph::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00280">PTACallGraph.h:280</a></div></div>
1837
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00383">383</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1838
+ <div class="fragment"><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; {</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#ad49fa2a288945f6910deb11acdf6a42d">getIndCallMap</a>();</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; }</div><div class="ttc" id="classSVF_1_1PTACallGraph_html_ad49fa2a288945f6910deb11acdf6a42d"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#ad49fa2a288945f6910deb11acdf6a42d">SVF::PTACallGraph::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00280">PTACallGraph.h:280</a></div></div>
1873
1839
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
1874
1840
  </div><!-- fragment -->
1875
1841
  </div>
@@ -1898,8 +1864,8 @@ Private Member Functions</h2></td></tr>
1898
1864
  </table>
1899
1865
  </div><div class="memdoc">
1900
1866
 
1901
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00396">396</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1902
- <div class="fragment"><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; {</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#ac106536778c829d6925d6ed2149aeb44">getIndCSCallees</a>(cs);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
1867
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00391">391</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1868
+ <div class="fragment"><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; {</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#ac106536778c829d6925d6ed2149aeb44">getIndCSCallees</a>(cs);</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
1903
1869
  <div class="ttc" id="classSVF_1_1PTACallGraph_html_ac106536778c829d6925d6ed2149aeb44"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#ac106536778c829d6925d6ed2149aeb44">SVF::PTACallGraph::getIndCSCallees</a></div><div class="ttdeci">const FunctionSet &amp; getIndCSCallees(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00288">PTACallGraph.h:288</a></div></div>
1904
1870
  </div><!-- fragment -->
1905
1871
  </div>
@@ -1929,8 +1895,8 @@ Private Member Functions</h2></td></tr>
1929
1895
 
1930
1896
  <p>Return all indirect callsites. </p>
1931
1897
 
1932
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00280">280</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1933
- <div class="fragment"><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; {</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2d2131128ceb3362b5dc89317cfd88a0">getIndirectCallsites</a>();</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><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>
1898
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00275">275</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
1899
+ <div class="fragment"><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; {</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2d2131128ceb3362b5dc89317cfd88a0">getIndirectCallsites</a>();</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; }</div><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>
1934
1900
  <div class="ttc" id="classSVF_1_1SVFIR_html_a2d2131128ceb3362b5dc89317cfd88a0"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a2d2131128ceb3362b5dc89317cfd88a0">SVF::SVFIR::getIndirectCallsites</a></div><div class="ttdeci">const CallSiteToFunPtrMap &amp; getIndirectCallsites() const</div><div class="ttdoc">Add/get indirect callsites. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00299">SVFIR.h:299</a></div></div>
1935
1901
  </div><!-- fragment -->
1936
1902
  </div>
@@ -2169,8 +2135,8 @@ Private Member Functions</h2></td></tr>
2169
2135
 
2170
2136
  <p>get TypeSystem </p>
2171
2137
 
2172
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00457">457</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2173
- <div class="fragment"><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; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a>;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a219baed92b811d5519b056ad393fceed"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">SVF::PointerAnalysis::typeSystem</a></div><div class="ttdeci">TypeSystem * typeSystem</div><div class="ttdoc">TypeSystem. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00165">PointerAnalysis.h:165</a></div></div>
2138
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00452">452</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2139
+ <div class="fragment"><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; {</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a>;</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a219baed92b811d5519b056ad393fceed"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">SVF::PointerAnalysis::typeSystem</a></div><div class="ttdeci">TypeSystem * typeSystem</div><div class="ttdoc">TypeSystem. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00165">PointerAnalysis.h:165</a></div></div>
2174
2140
  </div><!-- fragment -->
2175
2141
  </div>
2176
2142
  </div>
@@ -2286,8 +2252,8 @@ Private Member Functions</h2></td></tr>
2286
2252
  </table>
2287
2253
  </div><div class="memdoc">
2288
2254
 
2289
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00392">392</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2290
- <div class="fragment"><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; {</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a71a63c53a093ea8e450fb53fd60c9424">hasIndCSCallees</a>(cs);</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
2255
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00387">387</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2256
+ <div class="fragment"><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a71a63c53a093ea8e450fb53fd60c9424">hasIndCSCallees</a>(cs);</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7c9b7e5fe37ae31ba84d167945ca57df"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">SVF::PointerAnalysis::getPTACallGraph</a></div><div class="ttdeci">PTACallGraph * getPTACallGraph() const</div><div class="ttdoc">Return call graph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00178">PointerAnalysis.h:178</a></div></div>
2291
2257
  <div class="ttc" id="classSVF_1_1PTACallGraph_html_a71a63c53a093ea8e450fb53fd60c9424"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a71a63c53a093ea8e450fb53fd60c9424">SVF::PTACallGraph::hasIndCSCallees</a></div><div class="ttdeci">bool hasIndCSCallees(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00284">PTACallGraph.h:284</a></div></div>
2292
2258
  </div><!-- fragment -->
2293
2259
  </div>
@@ -2326,7 +2292,7 @@ Private Member Functions</h2></td></tr>
2326
2292
  <div class="ttc" id="classSVF_1_1PTACallGraph_html_a841be22581a7896d8924564e7199f62b"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a841be22581a7896d8924564e7199f62b">SVF::PTACallGraph::dump</a></div><div class="ttdeci">void dump(const std::string &amp;filename)</div><div class="ttdoc">Dump the graph. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8cpp_source.html#l00314">PTACallGraph.cpp:314</a></div></div>
2327
2293
  <div class="ttc" id="classSVF_1_1Options_html_a153d42a480ef1763ad59fd7258ac3ac5"><div class="ttname"><a href="classSVF_1_1Options.html#a153d42a480ef1763ad59fd7258ac3ac5">SVF::Options::EnableThreadCallGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; EnableThreadCallGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00141">Options.h:141</a></div></div>
2328
2294
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad47b39252e02c68dfb466d4f42dc7ebe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">SVF::PointerAnalysis::ptaCallGraph</a></div><div class="ttdeci">PTACallGraph * ptaCallGraph</div><div class="ttdoc">Call graph used for pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00157">PointerAnalysis.h:157</a></div></div>
2329
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aafa5df4aa576a144476e547b1da35795"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">SVF::PointerAnalysis::callGraphSCCDetection</a></div><div class="ttdeci">void callGraphSCCDetection()</div><div class="ttdoc">CallGraph SCC related methods. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00410">PointerAnalysis.h:410</a></div></div>
2295
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aafa5df4aa576a144476e547b1da35795"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">SVF::PointerAnalysis::callGraphSCCDetection</a></div><div class="ttdeci">void callGraphSCCDetection()</div><div class="ttdoc">CallGraph SCC related methods. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00405">PointerAnalysis.h:405</a></div></div>
2330
2296
  <div class="ttc" id="classSVF_1_1DCHGraph_html"><div class="ttname"><a href="classSVF_1_1DCHGraph.html">SVF::DCHGraph</a></div><div class="ttdoc">Dwarf based CHG. </div><div class="ttdef"><b>Definition:</b> <a href="DCHG_8h_source.html#l00208">DCHG.h:208</a></div></div>
2331
2297
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a7e8b3f6843e5ea75fd189162d2cd60a5"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">SVF::PointerAnalysis::svfMod</a></div><div class="ttdeci">SVFModule * svfMod</div><div class="ttdoc">Module. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00149">PointerAnalysis.h:149</a></div></div>
2332
2298
  <div class="ttc" id="classSVF_1_1CHGraph_html"><div class="ttname"><a href="classSVF_1_1CHGraph.html">SVF::CHGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00208">CHG.h:208</a></div></div>
@@ -2383,10 +2349,10 @@ Private Member Functions</h2></td></tr>
2383
2349
 
2384
2350
  <p>Return TRUE if this edge is inside a CallGraph SCC, i.e., src node and dst node are in the same SCC on the <a class="el" href="classSVF_1_1SVFG.html">SVFG</a>. </p>
2385
2351
 
2386
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00423">423</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2387
- <div class="fragment"><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; {</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keyword">const</span> PTACallGraphNode* src = <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(fun1);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keyword">const</span> PTACallGraphNode* dst = <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(fun2);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(src-&gt;getId()) == <a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(dst-&gt;getId()));</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; }</div><div class="ttc" id="classSVF_1_1PTACallGraph_html_aaab54c670518d9d6790707f76ea76aa1"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">SVF::PTACallGraph::getCallGraphNode</a></div><div class="ttdeci">PTACallGraphNode * getCallGraphNode(NodeID id) const</div><div class="ttdoc">Get call graph node. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00315">PTACallGraph.h:315</a></div></div>
2352
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00418">418</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2353
+ <div class="fragment"><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; {</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keyword">const</span> PTACallGraphNode* src = <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(fun1);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keyword">const</span> PTACallGraphNode* dst = <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(fun2);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(src-&gt;getId()) == <a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(dst-&gt;getId()));</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; }</div><div class="ttc" id="classSVF_1_1PTACallGraph_html_aaab54c670518d9d6790707f76ea76aa1"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">SVF::PTACallGraph::getCallGraphNode</a></div><div class="ttdeci">PTACallGraphNode * getCallGraphNode(NodeID id) const</div><div class="ttdoc">Get call graph node. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00315">PTACallGraph.h:315</a></div></div>
2388
2354
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad47b39252e02c68dfb466d4f42dc7ebe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">SVF::PointerAnalysis::ptaCallGraph</a></div><div class="ttdeci">PTACallGraph * ptaCallGraph</div><div class="ttdoc">Call graph used for pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00157">PointerAnalysis.h:157</a></div></div>
2389
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae8190ce12fb0c6360953f4b05047fbe8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">SVF::PointerAnalysis::getCallGraphSCCRepNode</a></div><div class="ttdeci">NodeID getCallGraphSCCRepNode(NodeID id) const</div><div class="ttdoc">Get SCC rep node of a SVFG node. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00418">PointerAnalysis.h:418</a></div></div>
2355
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae8190ce12fb0c6360953f4b05047fbe8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">SVF::PointerAnalysis::getCallGraphSCCRepNode</a></div><div class="ttdeci">NodeID getCallGraphSCCRepNode(NodeID id) const</div><div class="ttdoc">Get SCC rep node of a SVFG node. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00413">PointerAnalysis.h:413</a></div></div>
2390
2356
  </div><!-- fragment -->
2391
2357
  </div>
2392
2358
  </div>
@@ -2414,8 +2380,8 @@ Private Member Functions</h2></td></tr>
2414
2380
  </table>
2415
2381
  </div><div class="memdoc">
2416
2382
 
2417
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00332">332</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2418
- <div class="fragment"><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; {</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keyword">const</span> MemObj* mem = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</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="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">return</span> mem-&gt;isArray();</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</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>
2383
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00327">327</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2384
+ <div class="fragment"><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; {</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keyword">const</span> MemObj* mem = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</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="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> mem-&gt;isArray();</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</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>
2419
2385
  <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>
2420
2386
  <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#l00344">SVFIR.h:344</a></div></div>
2421
2387
  </div><!-- fragment -->
@@ -2445,8 +2411,8 @@ Private Member Functions</h2></td></tr>
2445
2411
  </table>
2446
2412
  </div><div class="memdoc">
2447
2413
 
2448
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00313">313</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2449
- <div class="fragment"><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; {</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#ad9895f2d075eb402390e3b01ed68e001">isBlkObjOrConstantObj</a>(ptd);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_ad9895f2d075eb402390e3b01ed68e001"><div class="ttname"><a href="classSVF_1_1SVFIR.html#ad9895f2d075eb402390e3b01ed68e001">SVF::SVFIR::isBlkObjOrConstantObj</a></div><div class="ttdeci">bool isBlkObjOrConstantObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00387">SVFIR.h:387</a></div></div>
2414
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00308">308</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2415
+ <div class="fragment"><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; {</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#ad9895f2d075eb402390e3b01ed68e001">isBlkObjOrConstantObj</a>(ptd);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_ad9895f2d075eb402390e3b01ed68e001"><div class="ttname"><a href="classSVF_1_1SVFIR.html#ad9895f2d075eb402390e3b01ed68e001">SVF::SVFIR::isBlkObjOrConstantObj</a></div><div class="ttdeci">bool isBlkObjOrConstantObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00387">SVFIR.h:387</a></div></div>
2450
2416
  <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>
2451
2417
  </div><!-- fragment -->
2452
2418
  </div>
@@ -2475,8 +2441,8 @@ Private Member Functions</h2></td></tr>
2475
2441
  </table>
2476
2442
  </div><div class="memdoc">
2477
2443
 
2478
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00367">367</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2479
- <div class="fragment"><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; {</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keyword">const</span> MemObj* mem = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">getBaseObj</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordflow">return</span> mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">isFieldInsensitive</a>();</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_af76a55c3b8255a81a566bdce35ffc749"><div class="ttname"><a href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">SVF::SVFIR::getBaseObj</a></div><div class="ttdeci">const MemObj * getBaseObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00414">SVFIR.h:414</a></div></div>
2444
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00362">362</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2445
+ <div class="fragment"><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keyword">const</span> MemObj* mem = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">getBaseObj</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">return</span> mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">isFieldInsensitive</a>();</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_af76a55c3b8255a81a566bdce35ffc749"><div class="ttname"><a href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">SVF::SVFIR::getBaseObj</a></div><div class="ttdeci">const MemObj * getBaseObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00414">SVFIR.h:414</a></div></div>
2480
2446
  <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#l00673">SymbolTableInfo.cpp:673</a></div></div>
2481
2447
  <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>
2482
2448
  </div><!-- fragment -->
@@ -2507,8 +2473,8 @@ Private Member Functions</h2></td></tr>
2507
2473
  </div><div class="memdoc">
2508
2474
  <p>For field-sensitivity </p>
2509
2475
 
2510
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00342">342</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2511
- <div class="fragment"><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; {</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">return</span> (SVFUtil::isa&lt;FIObjVar&gt;(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(<span class="keywordtype">id</span>)));</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; }</div><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>
2476
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00337">337</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2477
+ <div class="fragment"><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; {</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">return</span> (SVFUtil::isa&lt;FIObjVar&gt;(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(<span class="keywordtype">id</span>)));</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; }</div><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>
2512
2478
  <div class="ttc" id="classSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00387">GenericGraph.h:387</a></div></div>
2513
2479
  </div><!-- fragment -->
2514
2480
  </div>
@@ -2539,8 +2505,8 @@ Private Member Functions</h2></td></tr>
2539
2505
 
2540
2506
  <p>Whether this object is heap or array. </p>
2541
2507
 
2542
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00325">325</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2543
- <div class="fragment"><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; {</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keyword">const</span> MemObj* mem = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</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="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> mem-&gt;isHeap();</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</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>
2508
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00320">320</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2509
+ <div class="fragment"><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; {</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keyword">const</span> MemObj* mem = <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a2dd4d5f704906270af13e7a07f900eb1">getObject</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</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="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">return</span> mem-&gt;isHeap();</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</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>
2544
2510
  <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>
2545
2511
  <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#l00344">SVFIR.h:344</a></div></div>
2546
2512
  </div><!-- fragment -->
@@ -2570,8 +2536,8 @@ Private Member Functions</h2></td></tr>
2570
2536
  </table>
2571
2537
  </div><div class="memdoc">
2572
2538
 
2573
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00429">429</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2574
- <div class="fragment"><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; {</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a5d699af73b1e7ad4e3a5f6d26b8b6d15">isInCycle</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(fun)-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; }</div><div class="ttc" id="classSVF_1_1PTACallGraph_html_aaab54c670518d9d6790707f76ea76aa1"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">SVF::PTACallGraph::getCallGraphNode</a></div><div class="ttdeci">PTACallGraphNode * getCallGraphNode(NodeID id) const</div><div class="ttdoc">Get call graph node. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00315">PTACallGraph.h:315</a></div></div>
2539
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00424">424</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2540
+ <div class="fragment"><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; {</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a5d699af73b1e7ad4e3a5f6d26b8b6d15">isInCycle</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">getCallGraphNode</a>(fun)-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; }</div><div class="ttc" id="classSVF_1_1PTACallGraph_html_aaab54c670518d9d6790707f76ea76aa1"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#aaab54c670518d9d6790707f76ea76aa1">SVF::PTACallGraph::getCallGraphNode</a></div><div class="ttdeci">PTACallGraphNode * getCallGraphNode(NodeID id) const</div><div class="ttdoc">Get call graph node. </div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00315">PTACallGraph.h:315</a></div></div>
2575
2541
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad47b39252e02c68dfb466d4f42dc7ebe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">SVF::PointerAnalysis::ptaCallGraph</a></div><div class="ttdeci">PTACallGraph * ptaCallGraph</div><div class="ttdoc">Call graph used for pointer analysis. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00157">PointerAnalysis.h:157</a></div></div>
2576
2542
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ae3b651799345d9d92b6d736dafb03f63"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">SVF::PointerAnalysis::callGraphSCC</a></div><div class="ttdeci">CallGraphSCC * callGraphSCC</div><div class="ttdoc">SCC for CallGraph. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00159">PointerAnalysis.h:159</a></div></div>
2577
2543
  <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00165">GenericGraph.h:165</a></div></div>
@@ -2639,8 +2605,8 @@ Private Member Functions</h2></td></tr>
2639
2605
  </table>
2640
2606
  </div><div class="memdoc">
2641
2607
 
2642
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00317">317</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2643
- <div class="fragment"><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; {</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a980e54129ece0757d7f0373f37428507">isNonPointerObj</a>(ptd);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; }</div><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>
2608
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00312">312</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2609
+ <div class="fragment"><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; {</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a980e54129ece0757d7f0373f37428507">isNonPointerObj</a>(ptd);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; }</div><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>
2644
2610
  <div class="ttc" id="classSVF_1_1SVFIR_html_a980e54129ece0757d7f0373f37428507"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a980e54129ece0757d7f0373f37428507">SVF::SVFIR::isNonPointerObj</a></div><div class="ttdeci">bool isNonPointerObj(NodeID id) const</div><div class="ttdoc">Whether an object can point to any other object or any of its fields is a pointer type...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00694">SVFIR.cpp:694</a></div></div>
2645
2611
  </div><!-- fragment -->
2646
2612
  </div>
@@ -2718,7 +2684,7 @@ Private Member Functions</h2></td></tr>
2718
2684
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00390">SVFUtil.cpp:390</a></div></div>
2719
2685
  <div class="ttc" id="classSVF_1_1SVFValue_html_a2409c01221b9a6632655cee43d1b35e4"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2409c01221b9a6632655cee43d1b35e4">SVF::SVFValue::getName</a></div><div class="ttdeci">const std::string getName() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00249">SVFBasicTypes.h:249</a></div></div>
2720
2686
  <div class="ttc" id="classSVF_1_1CallICFGNode_html_a674753d5ca0fbe28674acb25291f2bcf"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const Instruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00381">ICFGNode.h:381</a></div></div>
2721
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_adbceaf90526e44192c2fa4aac5468f5f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f">SVF::PointerAnalysis::getFunPtr</a></div><div class="ttdeci">NodeID getFunPtr(const CallICFGNode *cs) const</div><div class="ttdoc">Return function pointer PAGNode at a callsite cs. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00285">PointerAnalysis.h:285</a></div></div>
2687
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_adbceaf90526e44192c2fa4aac5468f5f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f">SVF::PointerAnalysis::getFunPtr</a></div><div class="ttdeci">NodeID getFunPtr(const CallICFGNode *cs) const</div><div class="ttdoc">Return function pointer PAGNode at a callsite cs. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00280">PointerAnalysis.h:280</a></div></div>
2722
2688
  </div><!-- fragment -->
2723
2689
  </div>
2724
2690
  </div>
@@ -2739,14 +2705,14 @@ Private Member Functions</h2></td></tr>
2739
2705
  <p>Print all indirect callsites </p>
2740
2706
 
2741
2707
  <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8cpp_source.html#l00371">371</a> of file <a class="el" href="PointerAnalysis_8cpp_source.html">PointerAnalysis.cpp</a>.</p>
2742
- <div class="fragment"><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;{</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;==================Function Pointer Targets==================\n&quot;</span>;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; callEdges = <a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>();</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; CallEdgeMap::const_iterator it = callEdges.begin();</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; CallEdgeMap::const_iterator eit = callEdges.end();</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">for</span> (; it != eit; ++it)</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; {</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs = it-&gt;first;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a>&amp; targets = it-&gt;second;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a>(cs, targets);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; }</div><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="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a>&amp; indCS = <a class="code" href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">getIndirectCallsites</a>();</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; CallSiteToFunPtrMap::const_iterator csIt = indCS.begin();</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; CallSiteToFunPtrMap::const_iterator csEit = indCS.end();</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">for</span> (; csIt != csEit; ++csIt)</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs = csIt-&gt;first;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095">hasIndCSCallees</a>(cs) == <span class="keyword">false</span>)</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; {</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;\nNodeID: &quot;</span> &lt;&lt; csIt-&gt;second;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;\nCallSite: &quot;</span>;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVFUtil::value2String</a>(cs-&gt;<a class="code" href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">getCallSite</a>());</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;\tLocation: &quot;</span> &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a28c0ede7e4765d2a686fc8ae0f5641a4">SVFUtil::getSourceLoc</a>(cs-&gt;<a class="code" href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">getCallSite</a>());</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n\t!!!has no targets!!!\n&quot;</span>;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; }</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;}</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a9d3e7753643166465b0d647a75bc145a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">SVF::PointerAnalysis::getIndirectCallsites</a></div><div class="ttdeci">const CallSiteToFunPtrMap &amp; getIndirectCallsites() const</div><div class="ttdoc">Return all indirect callsites. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00280">PointerAnalysis.h:280</a></div></div>
2708
+ <div class="fragment"><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;{</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;==================Function Pointer Targets==================\n&quot;</span>;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; callEdges = <a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>();</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; CallEdgeMap::const_iterator it = callEdges.begin();</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; CallEdgeMap::const_iterator eit = callEdges.end();</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">for</span> (; it != eit; ++it)</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; {</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs = it-&gt;first;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a>&amp; targets = it-&gt;second;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a>(cs, targets);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; }</div><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="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a>&amp; indCS = <a class="code" href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">getIndirectCallsites</a>();</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; CallSiteToFunPtrMap::const_iterator csIt = indCS.begin();</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; CallSiteToFunPtrMap::const_iterator csEit = indCS.end();</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">for</span> (; csIt != csEit; ++csIt)</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs = csIt-&gt;first;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095">hasIndCSCallees</a>(cs) == <span class="keyword">false</span>)</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; {</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;\nNodeID: &quot;</span> &lt;&lt; csIt-&gt;second;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;\nCallSite: &quot;</span>;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVFUtil::value2String</a>(cs-&gt;<a class="code" href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">getCallSite</a>());</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;\tLocation: &quot;</span> &lt;&lt; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a28c0ede7e4765d2a686fc8ae0f5641a4">SVFUtil::getSourceLoc</a>(cs-&gt;<a class="code" href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">getCallSite</a>());</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n\t!!!has no targets!!!\n&quot;</span>;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; }</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;}</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a9d3e7753643166465b0d647a75bc145a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">SVF::PointerAnalysis::getIndirectCallsites</a></div><div class="ttdeci">const CallSiteToFunPtrMap &amp; getIndirectCallsites() const</div><div class="ttdoc">Return all indirect callsites. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00275">PointerAnalysis.h:275</a></div></div>
2743
2709
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a062f1f2d6d47694caa9ac64a9e68c7b3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">SVF::PointerAnalysis::printIndCSTargets</a></div><div class="ttdeci">void printIndCSTargets()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00371">PointerAnalysis.cpp:371</a></div></div>
2744
2710
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a28c0ede7e4765d2a686fc8ae0f5641a4"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a28c0ede7e4765d2a686fc8ae0f5641a4">SVF::SVFUtil::getSourceLoc</a></div><div class="ttdeci">std::string getSourceLoc(const Value *val)</div><div class="ttdoc">Return source code including line number and file name from debug information. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00269">SVFUtil.cpp:269</a></div></div>
2745
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_abdacd060691add054839aa183babe095"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095">SVF::PointerAnalysis::hasIndCSCallees</a></div><div class="ttdeci">bool hasIndCSCallees(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00392">PointerAnalysis.h:392</a></div></div>
2711
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_abdacd060691add054839aa183babe095"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095">SVF::PointerAnalysis::hasIndCSCallees</a></div><div class="ttdeci">bool hasIndCSCallees(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00387">PointerAnalysis.h:387</a></div></div>
2746
2712
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a35bd5f0fb2c146199e9f1aa6a19b4062"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">SVF::PointerAnalysis::CallEdgeMap</a></div><div class="ttdeci">OrderedMap&lt; const CallICFGNode *, FunctionSet &gt; CallEdgeMap</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00111">PointerAnalysis.h:111</a></div></div>
2747
2713
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac1422cd8b449fdb4a1f7c539364e4c41"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">SVF::PointerAnalysis::FunctionSet</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00110">PointerAnalysis.h:110</a></div></div>
2748
2714
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &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>
2749
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1ca30dfa42702071b65d363c76d25cbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">SVF::PointerAnalysis::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00388">PointerAnalysis.h:388</a></div></div>
2715
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1ca30dfa42702071b65d363c76d25cbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">SVF::PointerAnalysis::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00383">PointerAnalysis.h:383</a></div></div>
2750
2716
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a7486fd8e5350879ed1cbd835c0d4e191"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a7486fd8e5350879ed1cbd835c0d4e191">SVF::SVFUtil::value2String</a></div><div class="ttdeci">const std::string value2String(const Value *value)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00390">SVFUtil.cpp:390</a></div></div>
2751
2717
  <div class="ttc" id="classSVF_1_1CallICFGNode_html_a674753d5ca0fbe28674acb25291f2bcf"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a674753d5ca0fbe28674acb25291f2bcf">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const Instruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00381">ICFGNode.h:381</a></div></div>
2752
2718
  <div class="ttc" id="classSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00364">ICFGNode.h:364</a></div></div>
@@ -2779,8 +2745,8 @@ Private Member Functions</h2></td></tr>
2779
2745
 
2780
2746
  <p>Whether print statistics. </p>
2781
2747
 
2782
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00375">375</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2783
- <div class="fragment"><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; {</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a>;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a3550ea3f087ec557a6fe076bc443b05d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">SVF::PointerAnalysis::print_stat</a></div><div class="ttdeci">bool print_stat</div><div class="ttdoc">User input flags. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00139">PointerAnalysis.h:139</a></div></div>
2748
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00370">370</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2749
+ <div class="fragment"><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; {</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a>;</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; }</div><div class="ttc" id="classSVF_1_1PointerAnalysis_html_a3550ea3f087ec557a6fe076bc443b05d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">SVF::PointerAnalysis::print_stat</a></div><div class="ttdeci">bool print_stat</div><div class="ttdoc">User input flags. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00139">PointerAnalysis.h:139</a></div></div>
2784
2750
  </div><!-- fragment -->
2785
2751
  </div>
2786
2752
  </div>
@@ -2811,8 +2777,8 @@ Private Member Functions</h2></td></tr>
2811
2777
 
2812
2778
  <p>Reimplemented in <a class="el" href="classSVF_1_1Andersen.html#ad92dbecc91170b235180e59ba307acda">SVF::Andersen</a>, <a class="el" href="classSVF_1_1ContextDDA.html#afb0ab7fc43e6f0331072419e39ae0606">SVF::ContextDDA</a>, <a class="el" href="classSVF_1_1FlowDDA.html#ab3edece1bfb076bc01d60829615f2fa9">SVF::FlowDDA</a>, <a class="el" href="classSVF_1_1FlowSensitive.html#a4f1a0d533381660055210be1e2d7d72a">SVF::FlowSensitive</a>, <a class="el" href="classSVF_1_1VersionedFlowSensitive.html#a6e4964389f96667bd69354fd4a742720">SVF::VersionedFlowSensitive</a>, and <a class="el" href="classSVF_1_1FlowSensitiveTBHC.html#a1eb2f49fd20527b174c2acb8b7d64a41">SVF::FlowSensitiveTBHC</a>.</p>
2813
2779
 
2814
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00438">438</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2815
- <div class="fragment"><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; {</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;Pointer Analysis&quot;</span>;</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; }</div></div><!-- fragment -->
2780
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00433">433</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2781
+ <div class="fragment"><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; {</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;Pointer Analysis&quot;</span>;</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; }</div></div><!-- fragment -->
2816
2782
  </div>
2817
2783
  </div>
2818
2784
  <a id="a73fb8e595473e0c7df1dd0de4968ad13"></a>
@@ -2965,7 +2931,7 @@ Private Member Functions</h2></td></tr>
2965
2931
  <div class="ttc" id="classSVF_1_1ObjVar_html"><div class="ttname"><a href="classSVF_1_1ObjVar.html">SVF::ObjVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00314">SVFVariables.h:314</a></div></div>
2966
2932
  <div class="ttc" id="classSVF_1_1PointsTo_html_aa53962e561399bf493d1f2b9137356f6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00127">PointsTo.h:127</a></div></div>
2967
2933
  <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00074">BasicTypes.h:74</a></div></div>
2968
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1ca30dfa42702071b65d363c76d25cbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">SVF::PointerAnalysis::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00388">PointerAnalysis.h:388</a></div></div>
2934
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a1ca30dfa42702071b65d363c76d25cbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">SVF::PointerAnalysis::getIndCallMap</a></div><div class="ttdeci">CallEdgeMap &amp; getIndCallMap()</div><div class="ttdoc">Get callees from an indirect callsite. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00383">PointerAnalysis.h:383</a></div></div>
2969
2935
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad2c8654a6672472f9bf17681aa9b60bb"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb">SVF::PointerAnalysis::getNumOfResolvedIndCallEdge</a></div><div class="ttdeci">u32_t getNumOfResolvedIndCallEdge() const</div><div class="ttdoc">Return number of resolved indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00173">PointerAnalysis.h:173</a></div></div>
2970
2936
  <div class="ttc" id="classSVF_1_1CallICFGNode_html_a18f4077d42b23c3fed35efc793b6102e"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a18f4077d42b23c3fed35efc793b6102e">SVF::CallICFGNode::getCaller</a></div><div class="ttdeci">const SVFFunction * getCaller() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00400">ICFGNode.h:400</a></div></div>
2971
2937
  <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#l00428">SymbolTableInfo.h:428</a></div></div>
@@ -3001,8 +2967,8 @@ Private Member Functions</h2></td></tr>
3001
2967
  </table>
3002
2968
  </div><div class="memdoc">
3003
2969
 
3004
- <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00362">362</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
3005
- <div class="fragment"><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; MemObj* mem = <span class="keyword">const_cast&lt;</span>MemObj*<span class="keyword">&gt;</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">getBaseObj</a>(<span class="keywordtype">id</span>));</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; mem-&gt;setFieldInsensitive();</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_af76a55c3b8255a81a566bdce35ffc749"><div class="ttname"><a href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">SVF::SVFIR::getBaseObj</a></div><div class="ttdeci">const MemObj * getBaseObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00414">SVFIR.h:414</a></div></div>
2970
+ <p class="definition">Definition at line <a class="el" href="PointerAnalysis_8h_source.html#l00357">357</a> of file <a class="el" href="PointerAnalysis_8h_source.html">PointerAnalysis.h</a>.</p>
2971
+ <div class="fragment"><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; {</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; MemObj* mem = <span class="keyword">const_cast&lt;</span>MemObj*<span class="keyword">&gt;</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">getBaseObj</a>(<span class="keywordtype">id</span>));</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; mem-&gt;setFieldInsensitive();</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_af76a55c3b8255a81a566bdce35ffc749"><div class="ttname"><a href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">SVF::SVFIR::getBaseObj</a></div><div class="ttdeci">const MemObj * getBaseObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00414">SVFIR.h:414</a></div></div>
3006
2972
  <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>
3007
2973
  </div><!-- fragment -->
3008
2974
  </div>
@@ -3052,7 +3018,7 @@ Private Member Functions</h2></td></tr>
3052
3018
  <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>
3053
3019
  <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943aa03eb20fd81629154d6c346763ea64d6">SVF::PartialAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00196">SVFBasicTypes.h:196</a></div></div>
3054
3020
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a5d4bb92f5df30417f414397f8e58cf01"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a5d4bb92f5df30417f414397f8e58cf01">SVF::SVFUtil::errMsg</a></div><div class="ttdeci">std::string errMsg(std::string msg)</div><div class="ttdoc">Print error message by converting a string into red string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00078">SVFUtil.cpp:78</a></div></div>
3055
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aed4e5066f6ddef83afaf60adbcc11de0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">SVF::PointerAnalysis::PTAName</a></div><div class="ttdeci">virtual const std::string PTAName() const</div><div class="ttdoc">Return PTA name. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00438">PointerAnalysis.h:438</a></div></div>
3021
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aed4e5066f6ddef83afaf60adbcc11de0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">SVF::PointerAnalysis::PTAName</a></div><div class="ttdeci">virtual const std::string PTAName() const</div><div class="ttdoc">Return PTA name. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00433">PointerAnalysis.h:433</a></div></div>
3056
3022
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a32c6f12ce8bc0554dbb6aafa36f9a235"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235">SVF::PointerAnalysis::aliasTestFailMayAlias</a></div><div class="ttdeci">static const std::string aliasTestFailMayAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00125">PointerAnalysis.h:125</a></div></div>
3057
3023
  <div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00076">BasicTypes.h:76</a></div></div>
3058
3024
  <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">SVF::NoAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00197">SVFBasicTypes.h:197</a></div></div>
@@ -3110,7 +3076,7 @@ Private Member Functions</h2></td></tr>
3110
3076
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_acbb517523fd30708ed1a93f306cd3545"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#acbb517523fd30708ed1a93f306cd3545">SVF::PointerAnalysis::aliasTestPartialAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestPartialAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00122">PointerAnalysis.h:122</a></div></div>
3111
3077
  <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>
3112
3078
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a5d4bb92f5df30417f414397f8e58cf01"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a5d4bb92f5df30417f414397f8e58cf01">SVF::SVFUtil::errMsg</a></div><div class="ttdeci">std::string errMsg(std::string msg)</div><div class="ttdoc">Print error message by converting a string into red string output. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00078">SVFUtil.cpp:78</a></div></div>
3113
- <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aed4e5066f6ddef83afaf60adbcc11de0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">SVF::PointerAnalysis::PTAName</a></div><div class="ttdeci">virtual const std::string PTAName() const</div><div class="ttdoc">Return PTA name. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00438">PointerAnalysis.h:438</a></div></div>
3079
+ <div class="ttc" id="classSVF_1_1PointerAnalysis_html_aed4e5066f6ddef83afaf60adbcc11de0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">SVF::PointerAnalysis::PTAName</a></div><div class="ttdeci">virtual const std::string PTAName() const</div><div class="ttdoc">Return PTA name. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00433">PointerAnalysis.h:433</a></div></div>
3114
3080
  <div class="ttc" id="namespaceSVF_html_a90b263fd2f541eca78135078114cabda"><div class="ttname"><a href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">SVF::Value</a></div><div class="ttdeci">llvm::Value Value</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00076">BasicTypes.h:76</a></div></div>
3115
3081
  <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943afdd83ddff93d38902f07775cd36df239">SVF::NoAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00197">SVFBasicTypes.h:197</a></div></div>
3116
3082
  <div class="ttc" id="namespaceSVF_html_a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943ab58a0391f037031a51016ebfe2a752b2">SVF::MustAlias</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00194">SVFBasicTypes.h:194</a></div></div>