svf-tools 1.0.855 → 1.0.856

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 (381) hide show
  1. package/SVF-doxygen/html/AndersenPWC_8h_source.html +4 -4
  2. package/SVF-doxygen/html/AndersenSCD_8cpp_source.html +2 -2
  3. package/SVF-doxygen/html/AndersenStat_8cpp_source.html +154 -163
  4. package/SVF-doxygen/html/Andersen_8cpp_source.html +2 -2
  5. package/SVF-doxygen/html/Andersen_8h_source.html +13 -13
  6. package/SVF-doxygen/html/CFLAlias_8cpp_source.html +2 -2
  7. package/SVF-doxygen/html/CFLAlias_8h_source.html +4 -4
  8. package/SVF-doxygen/html/CFLBase_8cpp_source.html +1 -1
  9. package/SVF-doxygen/html/CFLBase_8h_source.html +1 -1
  10. package/SVF-doxygen/html/CFLSVFGBuilder_8cpp_source.html +2 -2
  11. package/SVF-doxygen/html/CFLStat_8cpp_source.html +2 -2
  12. package/SVF-doxygen/html/CFLVF_8h_source.html +2 -2
  13. package/SVF-doxygen/html/ContextDDA_8cpp_source.html +14 -14
  14. package/SVF-doxygen/html/ContextDDA_8h_source.html +6 -6
  15. package/SVF-doxygen/html/DDAClient_8cpp_source.html +5 -5
  16. package/SVF-doxygen/html/DDAClient_8h_source.html +1 -1
  17. package/SVF-doxygen/html/DDAPass_8cpp_source.html +7 -7
  18. package/SVF-doxygen/html/DDAPass_8h_source.html +1 -1
  19. package/SVF-doxygen/html/DDAStat_8cpp_source.html +10 -10
  20. package/SVF-doxygen/html/DDAStat_8h_source.html +1 -1
  21. package/SVF-doxygen/html/DDAVFSolver_8h_source.html +1 -1
  22. package/SVF-doxygen/html/FSMPTA_8cpp_source.html +2 -2
  23. package/SVF-doxygen/html/FSMPTA_8h_source.html +5 -5
  24. package/SVF-doxygen/html/FlowDDA_8h_source.html +11 -11
  25. package/SVF-doxygen/html/FlowSensitiveStat_8cpp_source.html +236 -238
  26. package/SVF-doxygen/html/FlowSensitive_8cpp_source.html +3 -3
  27. package/SVF-doxygen/html/FlowSensitive_8h_source.html +7 -7
  28. package/SVF-doxygen/html/ICFGStat_8h_source.html +1 -1
  29. package/SVF-doxygen/html/LLVMModule_8cpp_source.html +2 -2
  30. package/SVF-doxygen/html/MTAAnnotator_8cpp_source.html +2 -2
  31. package/SVF-doxygen/html/MTAAnnotator_8h_source.html +1 -1
  32. package/SVF-doxygen/html/MTAStat_8cpp_source.html +3 -3
  33. package/SVF-doxygen/html/MTA_8cpp_source.html +3 -3
  34. package/SVF-doxygen/html/MemRegion_8cpp_source.html +3 -3
  35. package/SVF-doxygen/html/MemSSA_8cpp_source.html +1 -1
  36. package/SVF-doxygen/html/Options_8cpp_source.html +10 -10
  37. package/SVF-doxygen/html/PCG_8h_source.html +4 -4
  38. package/SVF-doxygen/html/PTAStat_8cpp_source.html +99 -87
  39. package/SVF-doxygen/html/PTAStat_8h_source.html +2 -2
  40. package/SVF-doxygen/html/PointerAnalysisImpl_8cpp_source.html +30 -30
  41. package/SVF-doxygen/html/PointerAnalysisImpl_8h_source.html +15 -15
  42. package/SVF-doxygen/html/PointerAnalysis_8cpp_source.html +42 -42
  43. package/SVF-doxygen/html/PointerAnalysis_8h_source.html +400 -409
  44. package/SVF-doxygen/html/SVFGBuilder_8h_source.html +3 -3
  45. package/SVF-doxygen/html/SVFGStat_8cpp_source.html +16 -19
  46. package/SVF-doxygen/html/SVFGStat_8h_source.html +1 -1
  47. package/SVF-doxygen/html/SVFG_8h_source.html +1 -1
  48. package/SVF-doxygen/html/SVFStat_8cpp_source.html +196 -186
  49. package/SVF-doxygen/html/SVFStat_8h_source.html +44 -41
  50. package/SVF-doxygen/html/SaberSVFGBuilder_8cpp_source.html +5 -5
  51. package/SVF-doxygen/html/SrcSnkDDA_8cpp_source.html +1 -1
  52. package/SVF-doxygen/html/Steensgaard_8cpp_source.html +2 -2
  53. package/SVF-doxygen/html/Steensgaard_8h_source.html +4 -4
  54. package/SVF-doxygen/html/TCT_8h_source.html +5 -5
  55. package/SVF-doxygen/html/ThreadCallGraph_8cpp_source.html +3 -3
  56. package/SVF-doxygen/html/ThreadCallGraph_8h_source.html +1 -1
  57. package/SVF-doxygen/html/TypeAnalysis_8cpp_source.html +3 -3
  58. package/SVF-doxygen/html/TypeAnalysis_8h_source.html +6 -6
  59. package/SVF-doxygen/html/VFG_8cpp_source.html +3 -3
  60. package/SVF-doxygen/html/VFG_8h_source.html +1 -1
  61. package/SVF-doxygen/html/VersionedFlowSensitiveStat_8cpp_source.html +77 -79
  62. package/SVF-doxygen/html/VersionedFlowSensitive_8cpp_source.html +6 -6
  63. package/SVF-doxygen/html/VersionedFlowSensitive_8h_source.html +4 -4
  64. package/SVF-doxygen/html/WPAPass_8cpp_source.html +12 -12
  65. package/SVF-doxygen/html/WPAPass_8h_source.html +1 -1
  66. package/SVF-doxygen/html/WPAStat_8h_source.html +9 -9
  67. package/SVF-doxygen/html/classSVF_1_1Andersen-members.html +121 -123
  68. package/SVF-doxygen/html/classSVF_1_1Andersen.html +11 -17
  69. package/SVF-doxygen/html/classSVF_1_1AndersenBase-members.html +100 -102
  70. package/SVF-doxygen/html/classSVF_1_1AndersenBase.html +11 -17
  71. package/SVF-doxygen/html/classSVF_1_1AndersenSCD-members.html +124 -126
  72. package/SVF-doxygen/html/classSVF_1_1AndersenSCD.html +2 -8
  73. package/SVF-doxygen/html/classSVF_1_1AndersenSFR-members.html +129 -131
  74. package/SVF-doxygen/html/classSVF_1_1AndersenSFR.html +1 -7
  75. package/SVF-doxygen/html/classSVF_1_1AndersenStat-members.html +21 -20
  76. package/SVF-doxygen/html/classSVF_1_1AndersenStat.html +155 -161
  77. package/SVF-doxygen/html/classSVF_1_1AndersenWaveDiff-members.html +122 -124
  78. package/SVF-doxygen/html/classSVF_1_1AndersenWaveDiff.html +2 -8
  79. package/SVF-doxygen/html/classSVF_1_1BVDataPTAImpl-members.html +58 -60
  80. package/SVF-doxygen/html/classSVF_1_1BVDataPTAImpl.html +26 -32
  81. package/SVF-doxygen/html/classSVF_1_1CFLAlias-members.html +78 -80
  82. package/SVF-doxygen/html/classSVF_1_1CFLAlias.html +4 -10
  83. package/SVF-doxygen/html/classSVF_1_1CFLBase-members.html +75 -77
  84. package/SVF-doxygen/html/classSVF_1_1CFLBase.html +1 -7
  85. package/SVF-doxygen/html/classSVF_1_1CFLSVFGBuilder.html +2 -2
  86. package/SVF-doxygen/html/classSVF_1_1CFLStat-members.html +19 -18
  87. package/SVF-doxygen/html/classSVF_1_1CFLStat.html +5 -2
  88. package/SVF-doxygen/html/classSVF_1_1CFLVF-members.html +77 -79
  89. package/SVF-doxygen/html/classSVF_1_1CFLVF.html +2 -8
  90. package/SVF-doxygen/html/classSVF_1_1CondPTAImpl-members.html +50 -52
  91. package/SVF-doxygen/html/classSVF_1_1CondPTAImpl.html +9 -15
  92. package/SVF-doxygen/html/classSVF_1_1ContextDDA-members.html +97 -99
  93. package/SVF-doxygen/html/classSVF_1_1ContextDDA.html +18 -24
  94. package/SVF-doxygen/html/classSVF_1_1DDAClient.html +3 -3
  95. package/SVF-doxygen/html/classSVF_1_1DDAPass.html +6 -6
  96. package/SVF-doxygen/html/classSVF_1_1DDAStat-members.html +18 -17
  97. package/SVF-doxygen/html/classSVF_1_1DDAStat.html +12 -9
  98. package/SVF-doxygen/html/classSVF_1_1DDAVFSolver.html +1 -1
  99. package/SVF-doxygen/html/classSVF_1_1FSMPTA-members.html +140 -142
  100. package/SVF-doxygen/html/classSVF_1_1FSMPTA.html +2 -8
  101. package/SVF-doxygen/html/classSVF_1_1FlowDDA-members.html +102 -104
  102. package/SVF-doxygen/html/classSVF_1_1FlowDDA.html +15 -21
  103. package/SVF-doxygen/html/classSVF_1_1FlowSensitive-members.html +133 -135
  104. package/SVF-doxygen/html/classSVF_1_1FlowSensitive.html +18 -24
  105. package/SVF-doxygen/html/classSVF_1_1FlowSensitiveStat-members.html +24 -23
  106. package/SVF-doxygen/html/classSVF_1_1FlowSensitiveStat.html +241 -240
  107. package/SVF-doxygen/html/classSVF_1_1FunptrDDAClient.html +2 -2
  108. package/SVF-doxygen/html/classSVF_1_1ICFGStat-members.html +19 -18
  109. package/SVF-doxygen/html/classSVF_1_1ICFGStat.html +4 -1
  110. package/SVF-doxygen/html/classSVF_1_1LLVMModuleSet.html +2 -2
  111. package/SVF-doxygen/html/classSVF_1_1MRGenerator.html +3 -3
  112. package/SVF-doxygen/html/classSVF_1_1MTA.html +3 -3
  113. package/SVF-doxygen/html/classSVF_1_1MTAAnnotator.html +2 -2
  114. package/SVF-doxygen/html/classSVF_1_1MTASVFGBuilder.html +1 -1
  115. package/SVF-doxygen/html/classSVF_1_1MTAStat-members.html +20 -19
  116. package/SVF-doxygen/html/classSVF_1_1MTAStat.html +6 -3
  117. package/SVF-doxygen/html/classSVF_1_1MemSSA.html +5 -5
  118. package/SVF-doxygen/html/classSVF_1_1MemSSAStat-members.html +24 -23
  119. package/SVF-doxygen/html/classSVF_1_1MemSSAStat.html +7 -4
  120. package/SVF-doxygen/html/classSVF_1_1PCG.html +3 -3
  121. package/SVF-doxygen/html/classSVF_1_1POCRAlias-members.html +78 -80
  122. package/SVF-doxygen/html/classSVF_1_1POCRAlias.html +0 -6
  123. package/SVF-doxygen/html/classSVF_1_1POCRHybrid-members.html +78 -80
  124. package/SVF-doxygen/html/classSVF_1_1POCRHybrid.html +0 -6
  125. package/SVF-doxygen/html/classSVF_1_1PTAStat-members.html +19 -18
  126. package/SVF-doxygen/html/classSVF_1_1PTAStat.html +100 -85
  127. package/SVF-doxygen/html/classSVF_1_1PointerAnalysis-members.html +34 -36
  128. package/SVF-doxygen/html/classSVF_1_1PointerAnalysis.html +291 -356
  129. package/SVF-doxygen/html/classSVF_1_1SVFGStat-members.html +41 -40
  130. package/SVF-doxygen/html/classSVF_1_1SVFGStat.html +18 -18
  131. package/SVF-doxygen/html/classSVF_1_1SVFIRBuilder.html +1 -1
  132. package/SVF-doxygen/html/classSVF_1_1SVFStat-members.html +13 -12
  133. package/SVF-doxygen/html/classSVF_1_1SVFStat.html +208 -168
  134. package/SVF-doxygen/html/classSVF_1_1SaberSVFGBuilder.html +5 -5
  135. package/SVF-doxygen/html/classSVF_1_1SrcSnkDDA.html +1 -1
  136. package/SVF-doxygen/html/classSVF_1_1Steensgaard-members.html +109 -111
  137. package/SVF-doxygen/html/classSVF_1_1Steensgaard.html +4 -10
  138. package/SVF-doxygen/html/classSVF_1_1TCT.html +4 -4
  139. package/SVF-doxygen/html/classSVF_1_1ThreadCallGraph.html +2 -2
  140. package/SVF-doxygen/html/classSVF_1_1TypeAnalysis-members.html +103 -105
  141. package/SVF-doxygen/html/classSVF_1_1TypeAnalysis.html +9 -15
  142. package/SVF-doxygen/html/classSVF_1_1VFG.html +2 -2
  143. package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitive-members.html +158 -160
  144. package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitive.html +6 -12
  145. package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitiveStat-members.html +24 -23
  146. package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitiveStat.html +84 -83
  147. package/SVF-doxygen/html/classSVF_1_1WPAPass.html +12 -12
  148. package/SVF-doxygen/html/functions_func_g.html +10 -13
  149. package/SVF-doxygen/html/functions_func_n.html +1 -1
  150. package/SVF-doxygen/html/functions_func_p.html +1 -1
  151. package/SVF-doxygen/html/functions_g.html +4 -7
  152. package/SVF-doxygen/html/functions_l.html +5 -5
  153. package/SVF-doxygen/html/functions_n.html +6 -6
  154. package/SVF-doxygen/html/functions_o.html +4 -4
  155. package/SVF-doxygen/html/functions_p.html +19 -12
  156. package/SVF-doxygen/html/functions_r.html +1 -3
  157. package/SVF-doxygen/html/functions_s.html +10 -12
  158. package/SVF-doxygen/html/functions_t.html +9 -12
  159. package/SVF-doxygen/html/functions_v.html +7 -9
  160. package/SVF-doxygen/html/functions_vars_p.html +3 -0
  161. package/SVF-doxygen/html/functions_vars_t.html +0 -3
  162. package/SVF-doxygen/html/functions_w.html +7 -9
  163. package/SVF-doxygen/html/search/all_10.js +209 -208
  164. package/SVF-doxygen/html/search/all_11.js +1 -1
  165. package/SVF-doxygen/html/search/all_12.js +7 -7
  166. package/SVF-doxygen/html/search/all_13.js +6 -7
  167. package/SVF-doxygen/html/search/all_14.js +67 -67
  168. package/SVF-doxygen/html/search/all_15.js +168 -168
  169. package/SVF-doxygen/html/search/all_16.js +63 -63
  170. package/SVF-doxygen/html/search/all_17.js +1 -1
  171. package/SVF-doxygen/html/search/all_18.js +1 -1
  172. package/SVF-doxygen/html/search/all_19.js +11 -11
  173. package/SVF-doxygen/html/search/all_1a.js +175 -175
  174. package/SVF-doxygen/html/search/all_7.js +99 -100
  175. package/SVF-doxygen/html/search/all_8.js +196 -196
  176. package/SVF-doxygen/html/search/all_9.js +605 -605
  177. package/SVF-doxygen/html/search/all_a.js +46 -46
  178. package/SVF-doxygen/html/search/all_b.js +26 -26
  179. package/SVF-doxygen/html/search/all_c.js +115 -115
  180. package/SVF-doxygen/html/search/all_d.js +197 -197
  181. package/SVF-doxygen/html/search/all_e.js +207 -207
  182. package/SVF-doxygen/html/search/all_f.js +116 -116
  183. package/SVF-doxygen/html/search/classes_0.js +26 -26
  184. package/SVF-doxygen/html/search/classes_1.js +9 -9
  185. package/SVF-doxygen/html/search/classes_10.js +74 -74
  186. package/SVF-doxygen/html/search/classes_11.js +15 -15
  187. package/SVF-doxygen/html/search/classes_12.js +2 -2
  188. package/SVF-doxygen/html/search/classes_13.js +10 -10
  189. package/SVF-doxygen/html/search/classes_14.js +14 -14
  190. package/SVF-doxygen/html/search/classes_15.js +1 -1
  191. package/SVF-doxygen/html/search/classes_2.js +81 -81
  192. package/SVF-doxygen/html/search/classes_3.js +37 -37
  193. package/SVF-doxygen/html/search/classes_4.js +9 -9
  194. package/SVF-doxygen/html/search/classes_5.js +28 -28
  195. package/SVF-doxygen/html/search/classes_6.js +104 -104
  196. package/SVF-doxygen/html/search/classes_7.js +34 -34
  197. package/SVF-doxygen/html/search/classes_8.js +57 -57
  198. package/SVF-doxygen/html/search/classes_9.js +1 -1
  199. package/SVF-doxygen/html/search/classes_a.js +12 -12
  200. package/SVF-doxygen/html/search/classes_b.js +29 -29
  201. package/SVF-doxygen/html/search/classes_c.js +6 -6
  202. package/SVF-doxygen/html/search/classes_d.js +18 -18
  203. package/SVF-doxygen/html/search/classes_e.js +36 -36
  204. package/SVF-doxygen/html/search/classes_f.js +25 -25
  205. package/SVF-doxygen/html/search/defines_0.js +3 -3
  206. package/SVF-doxygen/html/search/defines_1.js +2 -2
  207. package/SVF-doxygen/html/search/defines_2.js +30 -30
  208. package/SVF-doxygen/html/search/defines_3.js +20 -20
  209. package/SVF-doxygen/html/search/defines_4.js +2 -2
  210. package/SVF-doxygen/html/search/defines_5.js +4 -4
  211. package/SVF-doxygen/html/search/defines_6.js +2 -2
  212. package/SVF-doxygen/html/search/defines_7.js +5 -5
  213. package/SVF-doxygen/html/search/defines_8.js +11 -11
  214. package/SVF-doxygen/html/search/defines_9.js +9 -9
  215. package/SVF-doxygen/html/search/defines_a.js +2 -2
  216. package/SVF-doxygen/html/search/defines_b.js +1 -1
  217. package/SVF-doxygen/html/search/defines_c.js +3 -3
  218. package/SVF-doxygen/html/search/defines_d.js +2 -2
  219. package/SVF-doxygen/html/search/defines_e.js +7 -7
  220. package/SVF-doxygen/html/search/defines_f.js +3 -3
  221. package/SVF-doxygen/html/search/enums_0.js +3 -3
  222. package/SVF-doxygen/html/search/enums_1.js +2 -2
  223. package/SVF-doxygen/html/search/enums_10.js +1 -1
  224. package/SVF-doxygen/html/search/enums_11.js +1 -1
  225. package/SVF-doxygen/html/search/enums_2.js +8 -8
  226. package/SVF-doxygen/html/search/enums_3.js +1 -1
  227. package/SVF-doxygen/html/search/enums_4.js +3 -3
  228. package/SVF-doxygen/html/search/enums_5.js +1 -1
  229. package/SVF-doxygen/html/search/enums_6.js +2 -2
  230. package/SVF-doxygen/html/search/enums_7.js +2 -2
  231. package/SVF-doxygen/html/search/enums_8.js +4 -4
  232. package/SVF-doxygen/html/search/enums_9.js +1 -1
  233. package/SVF-doxygen/html/search/enums_a.js +1 -1
  234. package/SVF-doxygen/html/search/enums_b.js +7 -7
  235. package/SVF-doxygen/html/search/enums_c.js +1 -1
  236. package/SVF-doxygen/html/search/enums_d.js +4 -4
  237. package/SVF-doxygen/html/search/enums_e.js +2 -2
  238. package/SVF-doxygen/html/search/enums_f.js +4 -4
  239. package/SVF-doxygen/html/search/enumvalues_0.js +14 -14
  240. package/SVF-doxygen/html/search/enumvalues_1.js +14 -14
  241. package/SVF-doxygen/html/search/enumvalues_10.js +35 -35
  242. package/SVF-doxygen/html/search/enumvalues_11.js +3 -3
  243. package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
  244. package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
  245. package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
  246. package/SVF-doxygen/html/search/enumvalues_15.js +3 -3
  247. package/SVF-doxygen/html/search/enumvalues_2.js +36 -36
  248. package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
  249. package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
  250. package/SVF-doxygen/html/search/enumvalues_5.js +47 -47
  251. package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
  252. package/SVF-doxygen/html/search/enumvalues_7.js +8 -8
  253. package/SVF-doxygen/html/search/enumvalues_8.js +23 -23
  254. package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
  255. package/SVF-doxygen/html/search/enumvalues_a.js +15 -15
  256. package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
  257. package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
  258. package/SVF-doxygen/html/search/enumvalues_d.js +18 -18
  259. package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
  260. package/SVF-doxygen/html/search/enumvalues_f.js +45 -45
  261. package/SVF-doxygen/html/search/files_0.js +14 -14
  262. package/SVF-doxygen/html/search/files_1.js +7 -7
  263. package/SVF-doxygen/html/search/files_10.js +8 -8
  264. package/SVF-doxygen/html/search/files_11.js +8 -8
  265. package/SVF-doxygen/html/search/files_12.js +2 -2
  266. package/SVF-doxygen/html/search/files_2.js +57 -57
  267. package/SVF-doxygen/html/search/files_3.js +14 -14
  268. package/SVF-doxygen/html/search/files_4.js +5 -5
  269. package/SVF-doxygen/html/search/files_5.js +13 -13
  270. package/SVF-doxygen/html/search/files_6.js +9 -9
  271. package/SVF-doxygen/html/search/files_7.js +14 -14
  272. package/SVF-doxygen/html/search/files_8.js +13 -13
  273. package/SVF-doxygen/html/search/files_9.js +18 -18
  274. package/SVF-doxygen/html/search/files_a.js +3 -3
  275. package/SVF-doxygen/html/search/files_b.js +2 -2
  276. package/SVF-doxygen/html/search/files_c.js +20 -20
  277. package/SVF-doxygen/html/search/files_d.js +4 -4
  278. package/SVF-doxygen/html/search/files_e.js +62 -62
  279. package/SVF-doxygen/html/search/files_f.js +8 -8
  280. package/SVF-doxygen/html/search/functions_0.js +13 -13
  281. package/SVF-doxygen/html/search/functions_1.js +364 -364
  282. package/SVF-doxygen/html/search/functions_10.js +140 -140
  283. package/SVF-doxygen/html/search/functions_11.js +140 -140
  284. package/SVF-doxygen/html/search/functions_12.js +289 -289
  285. package/SVF-doxygen/html/search/functions_13.js +72 -72
  286. package/SVF-doxygen/html/search/functions_14.js +39 -39
  287. package/SVF-doxygen/html/search/functions_15.js +71 -71
  288. package/SVF-doxygen/html/search/functions_16.js +32 -32
  289. package/SVF-doxygen/html/search/functions_17.js +3 -3
  290. package/SVF-doxygen/html/search/functions_18.js +175 -175
  291. package/SVF-doxygen/html/search/functions_2.js +91 -91
  292. package/SVF-doxygen/html/search/functions_3.js +262 -262
  293. package/SVF-doxygen/html/search/functions_4.js +78 -78
  294. package/SVF-doxygen/html/search/functions_5.js +53 -53
  295. package/SVF-doxygen/html/search/functions_6.js +60 -60
  296. package/SVF-doxygen/html/search/functions_7.js +856 -857
  297. package/SVF-doxygen/html/search/functions_8.js +148 -148
  298. package/SVF-doxygen/html/search/functions_9.js +421 -421
  299. package/SVF-doxygen/html/search/functions_a.js +30 -30
  300. package/SVF-doxygen/html/search/functions_b.js +2 -2
  301. package/SVF-doxygen/html/search/functions_c.js +25 -25
  302. package/SVF-doxygen/html/search/functions_d.js +79 -79
  303. package/SVF-doxygen/html/search/functions_e.js +35 -35
  304. package/SVF-doxygen/html/search/functions_f.js +56 -56
  305. package/SVF-doxygen/html/search/namespaces_0.js +1 -1
  306. package/SVF-doxygen/html/search/namespaces_1.js +7 -7
  307. package/SVF-doxygen/html/search/related_0.js +2 -2
  308. package/SVF-doxygen/html/search/related_1.js +2 -2
  309. package/SVF-doxygen/html/search/related_2.js +3 -3
  310. package/SVF-doxygen/html/search/related_3.js +2 -2
  311. package/SVF-doxygen/html/search/related_4.js +2 -2
  312. package/SVF-doxygen/html/search/related_5.js +1 -1
  313. package/SVF-doxygen/html/search/related_6.js +2 -2
  314. package/SVF-doxygen/html/search/related_7.js +4 -4
  315. package/SVF-doxygen/html/search/related_8.js +2 -2
  316. package/SVF-doxygen/html/search/related_9.js +4 -4
  317. package/SVF-doxygen/html/search/related_a.js +19 -19
  318. package/SVF-doxygen/html/search/related_b.js +4 -4
  319. package/SVF-doxygen/html/search/related_c.js +2 -2
  320. package/SVF-doxygen/html/search/related_d.js +12 -12
  321. package/SVF-doxygen/html/search/related_e.js +2 -2
  322. package/SVF-doxygen/html/search/related_f.js +2 -2
  323. package/SVF-doxygen/html/search/typedefs_0.js +19 -19
  324. package/SVF-doxygen/html/search/typedefs_1.js +26 -26
  325. package/SVF-doxygen/html/search/typedefs_10.js +62 -62
  326. package/SVF-doxygen/html/search/typedefs_11.js +13 -13
  327. package/SVF-doxygen/html/search/typedefs_12.js +11 -11
  328. package/SVF-doxygen/html/search/typedefs_13.js +33 -33
  329. package/SVF-doxygen/html/search/typedefs_14.js +8 -8
  330. package/SVF-doxygen/html/search/typedefs_2.js +129 -129
  331. package/SVF-doxygen/html/search/typedefs_3.js +39 -39
  332. package/SVF-doxygen/html/search/typedefs_4.js +17 -17
  333. package/SVF-doxygen/html/search/typedefs_5.js +41 -41
  334. package/SVF-doxygen/html/search/typedefs_6.js +56 -56
  335. package/SVF-doxygen/html/search/typedefs_7.js +44 -44
  336. package/SVF-doxygen/html/search/typedefs_8.js +1 -1
  337. package/SVF-doxygen/html/search/typedefs_9.js +6 -6
  338. package/SVF-doxygen/html/search/typedefs_a.js +29 -29
  339. package/SVF-doxygen/html/search/typedefs_b.js +29 -29
  340. package/SVF-doxygen/html/search/typedefs_c.js +41 -41
  341. package/SVF-doxygen/html/search/typedefs_d.js +14 -14
  342. package/SVF-doxygen/html/search/typedefs_e.js +52 -52
  343. package/SVF-doxygen/html/search/typedefs_f.js +14 -14
  344. package/SVF-doxygen/html/search/variables_0.js +151 -151
  345. package/SVF-doxygen/html/search/variables_1.js +76 -76
  346. package/SVF-doxygen/html/search/variables_10.js +99 -98
  347. package/SVF-doxygen/html/search/variables_11.js +45 -45
  348. package/SVF-doxygen/html/search/variables_12.js +91 -91
  349. package/SVF-doxygen/html/search/variables_13.js +73 -74
  350. package/SVF-doxygen/html/search/variables_14.js +14 -14
  351. package/SVF-doxygen/html/search/variables_15.js +49 -49
  352. package/SVF-doxygen/html/search/variables_16.js +9 -9
  353. package/SVF-doxygen/html/search/variables_17.js +1 -1
  354. package/SVF-doxygen/html/search/variables_18.js +2 -2
  355. package/SVF-doxygen/html/search/variables_2.js +38 -38
  356. package/SVF-doxygen/html/search/variables_3.js +142 -142
  357. package/SVF-doxygen/html/search/variables_4.js +50 -50
  358. package/SVF-doxygen/html/search/variables_5.js +37 -37
  359. package/SVF-doxygen/html/search/variables_6.js +66 -66
  360. package/SVF-doxygen/html/search/variables_7.js +34 -34
  361. package/SVF-doxygen/html/search/variables_8.js +7 -7
  362. package/SVF-doxygen/html/search/variables_9.js +78 -78
  363. package/SVF-doxygen/html/search/variables_a.js +4 -4
  364. package/SVF-doxygen/html/search/variables_b.js +10 -10
  365. package/SVF-doxygen/html/search/variables_c.js +45 -45
  366. package/SVF-doxygen/html/search/variables_d.js +55 -55
  367. package/SVF-doxygen/html/search/variables_e.js +123 -123
  368. package/SVF-doxygen/html/search/variables_f.js +30 -30
  369. package/SVF-doxygen/html/svf-ex_8cpp.html +2 -2
  370. package/SVF-doxygen/html/svf-ex_8cpp_source.html +3 -3
  371. package/package.json +1 -1
  372. package/svf/include/MemoryModel/PointerAnalysis.h +0 -9
  373. package/svf/include/Util/SVFStat.h +3 -0
  374. package/svf/lib/DDA/DDAStat.cpp +2 -2
  375. package/svf/lib/Graphs/SVFGStat.cpp +2 -4
  376. package/svf/lib/MemoryModel/PointerAnalysis.cpp +1 -1
  377. package/svf/lib/Util/PTAStat.cpp +14 -4
  378. package/svf/lib/Util/SVFStat.cpp +13 -3
  379. package/svf/lib/WPA/AndersenStat.cpp +3 -8
  380. package/svf/lib/WPA/FlowSensitiveStat.cpp +1 -2
  381. package/svf/lib/WPA/VersionedFlowSensitiveStat.cpp +1 -2
@@ -119,515 +119,506 @@ $(function() {
119
119
  <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; </div>
120
120
  <div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">class </span>CommonCHGraph;</div>
121
121
  <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
122
- <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">class </span>TypeSystem;</div>
123
- <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">class </span>SVFModule;</div>
124
- <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">class </span>ICFG;</div>
125
- <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keyword">class </span>PTAStat;</div>
126
- <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">/*</span></div>
127
- <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> * Pointer Analysis Base Class</span></div>
128
- <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> */</span></div>
129
- <div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html"> 58</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a></div>
130
- <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;{</div>
131
- <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; </div>
132
- <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword">public</span>:</div>
133
- <div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85"> 63</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a></div>
134
- <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; {</div>
135
- <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// Whole program analysis</span></div>
136
- <div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49"> 66</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49">Andersen_BASE</a>, </div>
137
- <div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6"> 67</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6">Andersen_WPA</a>, </div>
138
- <div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1"> 68</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1">AndersenSCD_WPA</a>, </div>
139
- <div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b"> 69</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b">AndersenSFR_WPA</a>, </div>
140
- <div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2"> 70</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">AndersenWaveDiff_WPA</a>, </div>
141
- <div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a"> 71</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a">Steensgaard_WPA</a>, </div>
142
- <div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09"> 72</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09">CSCallString_WPA</a>, </div>
143
- <div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27"> 73</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27">CSSummary_WPA</a>, </div>
144
- <div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322"> 74</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322">FSDATAFLOW_WPA</a>, </div>
145
- <div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78"> 75</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78">FSSPARSE_WPA</a>, </div>
146
- <div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9"> 76</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9">VFS_WPA</a>, </div>
147
- <div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82"> 77</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82">FSCS_WPA</a>, </div>
148
- <div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb"> 78</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb">CFLFICI_WPA</a>, </div>
149
- <div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc"> 79</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc">CFLFSCI_WPA</a>, </div>
150
- <div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d"> 80</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d">CFLFSCS_WPA</a>, </div>
151
- <div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3"> 81</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3">TypeCPP_WPA</a>, </div>
152
- <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
153
- <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">// Demand driven analysis</span></div>
154
- <div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61"> 84</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61">FieldS_DDA</a>, </div>
155
- <div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18"> 85</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">FlowS_DDA</a>, </div>
156
- <div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58"> 86</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58">PathS_DDA</a>, </div>
157
- <div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8"> 87</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">Cxt_DDA</a>, </div>
122
+ <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">class </span>SVFModule;</div>
123
+ <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">class </span>ICFG;</div>
124
+ <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">class </span>PTAStat;</div>
125
+ <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/*</span></div>
126
+ <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> * Pointer Analysis Base Class</span></div>
127
+ <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> */</span></div>
128
+ <div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html"> 57</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a></div>
129
+ <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;{</div>
130
+ <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; </div>
131
+ <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">public</span>:</div>
132
+ <div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85"> 62</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a></div>
133
+ <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; {</div>
134
+ <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="comment">// Whole program analysis</span></div>
135
+ <div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49"> 65</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49">Andersen_BASE</a>, </div>
136
+ <div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6"> 66</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6">Andersen_WPA</a>, </div>
137
+ <div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1"> 67</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1">AndersenSCD_WPA</a>, </div>
138
+ <div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b"> 68</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b">AndersenSFR_WPA</a>, </div>
139
+ <div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2"> 69</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">AndersenWaveDiff_WPA</a>, </div>
140
+ <div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a"> 70</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a">Steensgaard_WPA</a>, </div>
141
+ <div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09"> 71</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09">CSCallString_WPA</a>, </div>
142
+ <div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27"> 72</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27">CSSummary_WPA</a>, </div>
143
+ <div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322"> 73</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322">FSDATAFLOW_WPA</a>, </div>
144
+ <div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78"> 74</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78">FSSPARSE_WPA</a>, </div>
145
+ <div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9"> 75</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9">VFS_WPA</a>, </div>
146
+ <div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82"> 76</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82">FSCS_WPA</a>, </div>
147
+ <div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb"> 77</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb">CFLFICI_WPA</a>, </div>
148
+ <div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc"> 78</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc">CFLFSCI_WPA</a>, </div>
149
+ <div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d"> 79</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d">CFLFSCS_WPA</a>, </div>
150
+ <div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3"> 80</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3">TypeCPP_WPA</a>, </div>
151
+ <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; </div>
152
+ <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="comment">// Demand driven analysis</span></div>
153
+ <div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61"> 83</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61">FieldS_DDA</a>, </div>
154
+ <div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18"> 84</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">FlowS_DDA</a>, </div>
155
+ <div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58"> 85</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58">PathS_DDA</a>, </div>
156
+ <div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8"> 86</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">Cxt_DDA</a>, </div>
157
+ <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
158
158
  <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; </div>
159
- <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; </div>
160
- <div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790"> 90</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">Default_PTA</a> </div>
161
- <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; };</div>
162
- <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
163
- <div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d"> 94</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a></div>
164
- <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div>
165
- <div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a"> 96</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">BaseImpl</a>, </div>
166
- <div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8"> 97</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8">BVDataImpl</a>, </div>
167
- <div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292"> 98</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292">CondImpl</a>, </div>
168
- <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; };</div>
169
- <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; </div>
170
- <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; </div>
171
- <div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a5583b5fc0db461a0138b1f2f1c9a89a0"> 103</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const CallICFGNode*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a5583b5fc0db461a0138b1f2f1c9a89a0">CallSiteSet</a>;</div>
172
- <div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585"> 104</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1SVFIR.html#a51bf00bfd1d32ea8a4a280cf99725d7d">SVFIR::CallSiteToFunPtrMap</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a>;</div>
173
- <div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41"> 105</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFFunction*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a>;</div>
174
- <div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062"> 106</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#aedf0d6718ca176e0b9e17ab4b30729c6">OrderedMap&lt;const CallICFGNode*, FunctionSet&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>;</div>
175
- <div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69"> 107</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1SCCDetection.html">SCCDetection&lt;PTACallGraph*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">CallGraphSCC</a>;</div>
176
- <div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a57fabf1408ada10028282deef0b23ec6"> 108</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFGlobalValue*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a57fabf1408ada10028282deef0b23ec6">VTableSet</a>;</div>
177
- <div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478"> 109</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFFunction*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478">VFunSet</a>;</div>
178
- <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; </div>
179
- <div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64"> 112</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64">aliasTestMayAlias</a>;</div>
180
- <div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654"> 113</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654">aliasTestMayAliasMangled</a>;</div>
181
- <div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570"> 114</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570">aliasTestNoAlias</a>;</div>
182
- <div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0e68883e2ee328315af29e59bb2008cd"> 115</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0e68883e2ee328315af29e59bb2008cd">aliasTestNoAliasMangled</a>;</div>
183
- <div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5"> 116</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">aliasTestPartialAlias</a>;</div>
184
- <div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#acbb517523fd30708ed1a93f306cd3545"> 117</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#acbb517523fd30708ed1a93f306cd3545">aliasTestPartialAliasMangled</a>;</div>
185
- <div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0"> 118</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0">aliasTestMustAlias</a>;</div>
186
- <div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7"> 119</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7">aliasTestMustAliasMangled</a>;</div>
187
- <div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235"> 120</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235">aliasTestFailMayAlias</a>;</div>
188
- <div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db"> 121</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db">aliasTestFailMayAliasMangled</a>;</div>
189
- <div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42"> 122</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42">aliasTestFailNoAlias</a>;</div>
190
- <div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22"> 123</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22">aliasTestFailNoAliasMangled</a>;</div>
191
- <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; </div>
192
- <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword">private</span>:</div>
193
- <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a03dadb5429e2b84f88713a83153979a8">destroy</a>();</div>
194
- <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
195
- <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keyword">protected</span>:</div>
196
- <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; </div>
197
- <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; </div>
198
- <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a>;</div>
199
- <div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e"> 136</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">alias_validation</a>;</div>
200
- <div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac"> 138</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">OnTheFlyIterBudgetForStat</a>;</div>
201
- <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
202
- <div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3"> 142</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>;</div>
203
- <div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5"> 144</a></span>&#160; <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a>;</div>
204
- <div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4"> 146</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a>;</div>
205
- <div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36"> 148</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">ptaImplTy</a>;</div>
206
- <div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f"> 150</a></span>&#160; <a class="code" href="classSVF_1_1PTAStat.html">PTAStat</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>;</div>
207
- <div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe"> 152</a></span>&#160; <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>;</div>
208
- <div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63"> 154</a></span>&#160; <a class="code" href="classSVF_1_1SCCDetection.html">CallGraphSCC</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>;</div>
209
- <div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2"> 156</a></span>&#160; <a class="code" href="classSVF_1_1ICFG.html">ICFG</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">icfg</a>;</div>
210
- <div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33"> 158</a></span>&#160; <a class="code" href="classSVF_1_1CommonCHGraph.html">CommonCHGraph</a> *<a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>;</div>
211
- <div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed"> 160</a></span>&#160; TypeSystem *<a class="code" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a>;</div>
212
- <div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; </div>
213
- <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="keyword">public</span>:</div>
214
- <div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e"> 164</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1ICFG.html">ICFG</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e">getICFG</a>()<span class="keyword"> const</span></div>
215
- <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="keyword"> </span>{</div>
216
- <div class="line"><a name="l00166"></a><span class="lineno"> 166</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#abda052b73e869ed6d7c139ad1528da11">getICFG</a>();</div>
217
- <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; }</div>
218
- <div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb"> 169</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb">getNumOfResolvedIndCallEdge</a>()<span class="keyword"> const</span></div>
219
- <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="keyword"> </span>{</div>
220
- <div class="line"><a name="l00171"></a><span class="lineno"> 171</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#a12c899013f8a9ddd895bfb5027a84d4c">getNumOfResolvedIndCallEdge</a>();</div>
221
- <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
222
- <div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df"> 174</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()<span class="keyword"> const</span></div>
223
- <div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="keyword"> </span>{</div>
224
- <div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>;</div>
225
- <div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div>
226
- <div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248"> 179</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1SCCDetection.html">CallGraphSCC</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248">getCallGraphSCC</a>()<span class="keyword"> const</span></div>
227
- <div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="keyword"> </span>{</div>
228
- <div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>;</div>
229
- <div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; }</div>
159
+ <div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790"> 89</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">Default_PTA</a> </div>
160
+ <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; };</div>
161
+ <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; </div>
162
+ <div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d"> 93</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a></div>
163
+ <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; {</div>
164
+ <div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a"> 95</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">BaseImpl</a>, </div>
165
+ <div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8"> 96</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8">BVDataImpl</a>, </div>
166
+ <div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292"> 97</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292">CondImpl</a>, </div>
167
+ <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; };</div>
168
+ <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
169
+ <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
170
+ <div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a5583b5fc0db461a0138b1f2f1c9a89a0"> 102</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const CallICFGNode*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a5583b5fc0db461a0138b1f2f1c9a89a0">CallSiteSet</a>;</div>
171
+ <div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585"> 103</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1SVFIR.html#a51bf00bfd1d32ea8a4a280cf99725d7d">SVFIR::CallSiteToFunPtrMap</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a>;</div>
172
+ <div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41"> 104</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFFunction*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a>;</div>
173
+ <div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062"> 105</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#aedf0d6718ca176e0b9e17ab4b30729c6">OrderedMap&lt;const CallICFGNode*, FunctionSet&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>;</div>
174
+ <div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69"> 106</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1SCCDetection.html">SCCDetection&lt;PTACallGraph*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">CallGraphSCC</a>;</div>
175
+ <div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a57fabf1408ada10028282deef0b23ec6"> 107</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFGlobalValue*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a57fabf1408ada10028282deef0b23ec6">VTableSet</a>;</div>
176
+ <div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478"> 108</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFFunction*&gt;</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478">VFunSet</a>;</div>
177
+ <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
178
+ <div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64"> 111</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64">aliasTestMayAlias</a>;</div>
179
+ <div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654"> 112</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654">aliasTestMayAliasMangled</a>;</div>
180
+ <div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570"> 113</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570">aliasTestNoAlias</a>;</div>
181
+ <div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0e68883e2ee328315af29e59bb2008cd"> 114</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0e68883e2ee328315af29e59bb2008cd">aliasTestNoAliasMangled</a>;</div>
182
+ <div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5"> 115</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">aliasTestPartialAlias</a>;</div>
183
+ <div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#acbb517523fd30708ed1a93f306cd3545"> 116</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#acbb517523fd30708ed1a93f306cd3545">aliasTestPartialAliasMangled</a>;</div>
184
+ <div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0"> 117</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0">aliasTestMustAlias</a>;</div>
185
+ <div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7"> 118</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7">aliasTestMustAliasMangled</a>;</div>
186
+ <div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235"> 119</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235">aliasTestFailMayAlias</a>;</div>
187
+ <div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db"> 120</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db">aliasTestFailMayAliasMangled</a>;</div>
188
+ <div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42"> 121</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42">aliasTestFailNoAlias</a>;</div>
189
+ <div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22"> 122</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22">aliasTestFailNoAliasMangled</a>;</div>
190
+ <div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
191
+ <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="keyword">private</span>:</div>
192
+ <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a03dadb5429e2b84f88713a83153979a8">destroy</a>();</div>
193
+ <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; </div>
194
+ <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="keyword">protected</span>:</div>
195
+ <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; </div>
196
+ <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; </div>
197
+ <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a>;</div>
198
+ <div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e"> 135</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">alias_validation</a>;</div>
199
+ <div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac"> 137</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">OnTheFlyIterBudgetForStat</a>;</div>
200
+ <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
201
+ <div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3"> 141</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>;</div>
202
+ <div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5"> 143</a></span>&#160; <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a>;</div>
203
+ <div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4"> 145</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a>;</div>
204
+ <div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36"> 147</a></span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">ptaImplTy</a>;</div>
205
+ <div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f"> 149</a></span>&#160; <a class="code" href="classSVF_1_1PTAStat.html">PTAStat</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>;</div>
206
+ <div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe"> 151</a></span>&#160; <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>;</div>
207
+ <div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63"> 153</a></span>&#160; <a class="code" href="classSVF_1_1SCCDetection.html">CallGraphSCC</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>;</div>
208
+ <div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2"> 155</a></span>&#160; <a class="code" href="classSVF_1_1ICFG.html">ICFG</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">icfg</a>;</div>
209
+ <div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33"> 157</a></span>&#160; <a class="code" href="classSVF_1_1CommonCHGraph.html">CommonCHGraph</a> *<a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>;</div>
210
+ <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; </div>
211
+ <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="keyword">public</span>:</div>
212
+ <div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e"> 161</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1ICFG.html">ICFG</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e">getICFG</a>()<span class="keyword"> const</span></div>
213
+ <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="keyword"> </span>{</div>
214
+ <div class="line"><a name="l00163"></a><span class="lineno"> 163</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#abda052b73e869ed6d7c139ad1528da11">getICFG</a>();</div>
215
+ <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; }</div>
216
+ <div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb"> 166</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb">getNumOfResolvedIndCallEdge</a>()<span class="keyword"> const</span></div>
217
+ <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="keyword"> </span>{</div>
218
+ <div class="line"><a name="l00168"></a><span class="lineno"> 168</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#a12c899013f8a9ddd895bfb5027a84d4c">getNumOfResolvedIndCallEdge</a>();</div>
219
+ <div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div>
220
+ <div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df"> 171</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()<span class="keyword"> const</span></div>
221
+ <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="keyword"> </span>{</div>
222
+ <div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a>;</div>
223
+ <div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; }</div>
224
+ <div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248"> 176</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1SCCDetection.html">CallGraphSCC</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248">getCallGraphSCC</a>()<span class="keyword"> const</span></div>
225
+ <div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="keyword"> </span>{</div>
226
+ <div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>;</div>
227
+ <div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div>
228
+ <div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; </div>
229
+ <div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">PointerAnalysis</a>(<a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>, <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> ty = <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">Default_PTA</a>, <span class="keywordtype">bool</span> alias_check = <span class="keyword">true</span>);</div>
230
230
  <div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; </div>
231
- <div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">PointerAnalysis</a>(<a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>, <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> ty = <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">Default_PTA</a>, <span class="keywordtype">bool</span> alias_check = <span class="keyword">true</span>);</div>
232
- <div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; </div>
233
- <div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3"> 188</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3">getAnalysisTy</a>()<span class="keyword"> const</span></div>
234
- <div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="keyword"> </span>{</div>
235
- <div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a>;</div>
236
- <div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div>
237
- <div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; </div>
238
- <div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e"> 194</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e">getImplTy</a>()<span class="keyword"> const</span></div>
239
- <div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="keyword"> </span>{</div>
240
- <div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">ptaImplTy</a>;</div>
241
- <div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; }</div>
242
- <div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; </div>
243
- <div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b"> 201</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()<span class="keyword"> const</span></div>
244
- <div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="keyword"> </span>{</div>
245
- <div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>;</div>
246
- <div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; }</div>
247
- <div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; </div>
248
- <div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad"> 208</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PTAStat.html">PTAStat</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad">getStat</a>()<span class="keyword"> const</span></div>
249
- <div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="keyword"> </span>{</div>
250
- <div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>;</div>
251
- <div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; }</div>
252
- <div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433"> 213</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a>()<span class="keyword"> const</span></div>
253
- <div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="keyword"> </span>{</div>
254
- <div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a>;</div>
255
- <div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; }</div>
256
- <div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc"> 218</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">OrderedNodeSet</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc">getAllValidPtrs</a>()</div>
257
- <div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; {</div>
258
- <div class="line"><a name="l00220"></a><span class="lineno"> 220</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#a7990c72dd6d645d713f19ed973841484">getAllValidPtrs</a>();</div>
259
- <div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div>
231
+ <div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3"> 185</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3">getAnalysisTy</a>()<span class="keyword"> const</span></div>
232
+ <div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="keyword"> </span>{</div>
233
+ <div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a>;</div>
234
+ <div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
235
+ <div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; </div>
236
+ <div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e"> 191</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e">getImplTy</a>()<span class="keyword"> const</span></div>
237
+ <div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="keyword"> </span>{</div>
238
+ <div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">ptaImplTy</a>;</div>
239
+ <div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; }</div>
240
+ <div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; </div>
241
+ <div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b"> 198</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()<span class="keyword"> const</span></div>
242
+ <div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="keyword"> </span>{</div>
243
+ <div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>;</div>
244
+ <div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; }</div>
245
+ <div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; </div>
246
+ <div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad"> 205</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PTAStat.html">PTAStat</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad">getStat</a>()<span class="keyword"> const</span></div>
247
+ <div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="keyword"> </span>{</div>
248
+ <div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>;</div>
249
+ <div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div>
250
+ <div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433"> 210</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* <a class="code" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a>()<span class="keyword"> const</span></div>
251
+ <div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="keyword"> </span>{</div>
252
+ <div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a>;</div>
253
+ <div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; }</div>
254
+ <div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc"> 215</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">OrderedNodeSet</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc">getAllValidPtrs</a>()</div>
255
+ <div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; {</div>
256
+ <div class="line"><a name="l00217"></a><span class="lineno"> 217</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#a7990c72dd6d645d713f19ed973841484">getAllValidPtrs</a>();</div>
257
+ <div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; }</div>
258
+ <div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; </div>
259
+ <div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a4aeca84393c5586eea7a480737daf17c">~PointerAnalysis</a>();</div>
260
260
  <div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; </div>
261
- <div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a4aeca84393c5586eea7a480737daf17c">~PointerAnalysis</a>();</div>
261
+ <div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">initialize</a>();</div>
262
262
  <div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; </div>
263
- <div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">initialize</a>();</div>
263
+ <div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a118dabc50024b5cd91095814ade47166">finalize</a>();</div>
264
264
  <div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; </div>
265
- <div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a118dabc50024b5cd91095814ade47166">finalize</a>();</div>
265
+ <div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae1e217dc18be0ce70bee5ad930cb54c6">analyze</a>() = 0;</div>
266
266
  <div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; </div>
267
- <div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae1e217dc18be0ce70bee5ad930cb54c6">analyze</a>() = 0;</div>
267
+ <div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d"> 233</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">computeDDAPts</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>) {}</div>
268
268
  <div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; </div>
269
- <div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d"> 236</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">computeDDAPts</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>) {}</div>
270
- <div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; </div>
271
- <div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keyword">virtual</span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae1323233941cdc9b99332e4b954a2217">alias</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* V1,</div>
272
- <div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* V2) = 0;</div>
269
+ <div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keyword">virtual</span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae1323233941cdc9b99332e4b954a2217">alias</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* V1,</div>
270
+ <div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* V2) = 0;</div>
271
+ <div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; </div>
272
+ <div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keyword">virtual</span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae1323233941cdc9b99332e4b954a2217">alias</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node1, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node2) = 0;</div>
273
273
  <div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; </div>
274
- <div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keyword">virtual</span> <a class="code" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae1323233941cdc9b99332e4b954a2217">alias</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node1, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node2) = 0;</div>
274
+ <div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a4dfb43679e9fa794ebad99b6584c32ec">getPts</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptr) = 0;</div>
275
275
  <div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; </div>
276
- <div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a4dfb43679e9fa794ebad99b6584c32ec">getPts</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptr) = 0;</div>
277
- <div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; </div>
278
- <div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#ad9af9655a13f3faeaf265ba370d1f280">getRevPts</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId) = 0;</div>
276
+ <div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#ad9af9655a13f3faeaf265ba370d1f280">getRevPts</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId) = 0;</div>
277
+ <div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; </div>
278
+ <div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a>&amp; targets);</div>
279
279
  <div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; </div>
280
- <div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a>&amp; targets);</div>
281
- <div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; </div>
282
- <div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="comment">// Debug purpose</span></div>
283
- <div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a627bdc95485fd65e8846fcaa5e89559f"> 257</a></span>&#160;<span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a627bdc95485fd65e8846fcaa5e89559f">dumpTopLevelPtsTo</a>() {}</div>
284
- <div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a861554c2fdeaa406131c2c920b4c7908"> 258</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a861554c2fdeaa406131c2c920b4c7908">dumpAllPts</a>() {}</div>
285
- <div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad409cbf61271743394b9e5868f3fd197"> 259</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad409cbf61271743394b9e5868f3fd197">dumpCPts</a>() {}</div>
286
- <div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">dumpPts</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptr, <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts);</div>
287
- <div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a>();</div>
288
- <div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a08399de593c073b6dd848a8d849dad27">dumpAllTypes</a>();</div>
289
- <div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; </div>
290
- <div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="keyword">protected</span>:</div>
291
- <div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a"> 267</a></span>&#160; <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">getIndirectCallsites</a>()<span class="keyword"> const</span></div>
292
- <div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="keyword"> </span>{</div>
293
- <div class="line"><a name="l00269"></a><span class="lineno"> 269</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>
294
- <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; }</div>
295
- <div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f"> 272</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f">getFunPtr</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs)<span class="keyword"> const</span></div>
296
- <div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="keyword"> </span>{</div>
297
- <div class="line"><a name="l00274"></a><span class="lineno"> 274</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>
298
- <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div>
299
- <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; </div>
300
- <div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0454332c89e60729956bb7d69a1a24df">validateTests</a>();</div>
301
- <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7accf4e4db4001716e53d98ce5217ac8">validateSuccessTests</a>(<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> fun);</div>
302
- <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ab982e6bbd99a2f9a0a3abbebeeb00dcc">validateExpectedFailureTests</a>(<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> fun);</div>
280
+ <div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="comment">// Debug purpose</span></div>
281
+ <div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a627bdc95485fd65e8846fcaa5e89559f"> 254</a></span>&#160;<span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a627bdc95485fd65e8846fcaa5e89559f">dumpTopLevelPtsTo</a>() {}</div>
282
+ <div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a861554c2fdeaa406131c2c920b4c7908"> 255</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a861554c2fdeaa406131c2c920b4c7908">dumpAllPts</a>() {}</div>
283
+ <div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ad409cbf61271743394b9e5868f3fd197"> 256</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad409cbf61271743394b9e5868f3fd197">dumpCPts</a>() {}</div>
284
+ <div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">dumpPts</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptr, <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts);</div>
285
+ <div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a>();</div>
286
+ <div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a08399de593c073b6dd848a8d849dad27">dumpAllTypes</a>();</div>
287
+ <div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; </div>
288
+ <div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="keyword">protected</span>:</div>
289
+ <div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a"> 264</a></span>&#160; <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">getIndirectCallsites</a>()<span class="keyword"> const</span></div>
290
+ <div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="keyword"> </span>{</div>
291
+ <div class="line"><a name="l00266"></a><span class="lineno"> 266</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>
292
+ <div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div>
293
+ <div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f"> 269</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f">getFunPtr</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs)<span class="keyword"> const</span></div>
294
+ <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="keyword"> </span>{</div>
295
+ <div class="line"><a name="l00271"></a><span class="lineno"> 271</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>
296
+ <div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; }</div>
297
+ <div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; </div>
298
+ <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0454332c89e60729956bb7d69a1a24df">validateTests</a>();</div>
299
+ <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a7accf4e4db4001716e53d98ce5217ac8">validateSuccessTests</a>(<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> fun);</div>
300
+ <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ab982e6bbd99a2f9a0a3abbebeeb00dcc">validateExpectedFailureTests</a>(<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> fun);</div>
301
+ <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; </div>
302
+ <div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">resetObjFieldSensitive</a>();</div>
303
303
  <div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; </div>
304
- <div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">resetObjFieldSensitive</a>();</div>
305
- <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; </div>
306
- <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="keyword">public</span>:</div>
307
- <div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ab83b827ea42d3a61aad20b1a1485d866">dumpStat</a>();</div>
308
- <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; </div>
309
- <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; </div>
310
- <div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063"> 292</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">containBlackHoleNode</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts)</div>
311
- <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; {</div>
312
- <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">return</span> pts.<a class="code" href="classSVF_1_1PointsTo.html#af61271fefa574c39f405fdfee59a8b3f">test</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#a3ce34b9fcb651689bce44ab48fbcdff0">getBlackHoleNode</a>());</div>
313
- <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; }</div>
314
- <div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd"> 296</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd">containConstantNode</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts)</div>
315
- <div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; {</div>
316
- <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">return</span> pts.<a class="code" href="classSVF_1_1PointsTo.html#af61271fefa574c39f405fdfee59a8b3f">test</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#ac5da3a0cbe040a45d719b6f6a23aed91">getConstantNode</a>());</div>
317
- <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div>
318
- <div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b"> 300</a></span>&#160; <span class="keyword">virtual</span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b">isBlkObjOrConstantObj</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptd)<span class="keyword"> const</span></div>
319
- <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="keyword"> </span>{</div>
320
- <div class="line"><a name="l00302"></a><span class="lineno"> 302</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>
321
- <div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }</div>
322
- <div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; </div>
323
- <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; </div>
324
- <div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361"> 308</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">isHeapMemObj</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
325
- <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;<span class="keyword"> </span>{</div>
326
- <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* 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>
327
- <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; assert(mem &amp;&amp; <span class="stringliteral">&quot;memory object is null??&quot;</span>);</div>
328
- <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">return</span> mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">isHeap</a>();</div>
329
- <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; }</div>
330
- <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; </div>
331
- <div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73"> 315</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">isArrayMemObj</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
332
- <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="keyword"> </span>{</div>
333
- <div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* 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>
334
- <div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; assert(mem &amp;&amp; <span class="stringliteral">&quot;memory object is null??&quot;</span>);</div>
335
- <div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span> mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#aeba6eeed4843a1a90cf1d4b7deb197af">isArray</a>();</div>
336
- <div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; }</div>
337
- <div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; </div>
338
- <div class="line"><a name="l00325"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#af90d2ccb01402c5ca9d7a059f345c816"> 325</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#af90d2ccb01402c5ca9d7a059f345c816">isFIObjNode</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
339
- <div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="keyword"> </span>{</div>
340
- <div class="line"><a name="l00327"></a><span class="lineno"> 327</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>
341
- <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</div>
342
- <div class="line"><a name="l00329"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c"> 329</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c">getBaseObjVar</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)</div>
343
- <div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; {</div>
344
- <div class="line"><a name="l00331"></a><span class="lineno"> 331</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>
345
- <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; }</div>
346
- <div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac"> 333</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">getFIObjVar</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)</div>
347
- <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; {</div>
348
- <div class="line"><a name="l00335"></a><span class="lineno"> 335</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>
349
- <div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; }</div>
350
- <div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aac6ccf3dc313e3c6761bb57316829da8"> 337</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aac6ccf3dc313e3c6761bb57316829da8">getGepObjVar</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>, <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">APOffset</a>&amp; ap)</div>
351
- <div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; {</div>
352
- <div class="line"><a name="l00339"></a><span class="lineno"> 339</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#ae18425df0631aefca7dd4b799f6f524a">getGepObjVar</a>(<span class="keywordtype">id</span>, ap);</div>
353
- <div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; }</div>
354
- <div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde"> 341</a></span>&#160; <span class="keyword">virtual</span> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde">getAllFieldsObjVars</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)</div>
355
- <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; {</div>
356
- <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#a7276e82b4648ed0e1b3d1b8b37b24089">getAllFieldsObjVars</a>(<span class="keywordtype">id</span>);</div>
357
- <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; }</div>
358
- <div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b"> 345</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">setObjFieldInsensitive</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)</div>
359
- <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; {</div>
360
- <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* mem = <span class="keyword">const_cast&lt;</span><a class="code" href="classSVF_1_1MemObj.html">MemObj</a>*<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>
361
- <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#ab9637ea9acd1f8ae4933b4ab2b997e5c">setFieldInsensitive</a>();</div>
362
- <div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</div>
363
- <div class="line"><a name="l00350"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe"> 350</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">isFieldInsensitive</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
364
- <div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;<span class="keyword"> </span>{</div>
365
- <div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* 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>
366
- <div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">return</span> mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">isFieldInsensitive</a>();</div>
367
- <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; }</div>
368
- <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; </div>
369
- <div class="line"><a name="l00358"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183"> 358</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">printStat</a>()</div>
370
- <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; {</div>
371
- <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#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a>;</div>
372
- <div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; }</div>
373
- <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; </div>
374
- <div class="line"><a name="l00364"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#af44b14fed89918847c0228c1100c56d2"> 364</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#af44b14fed89918847c0228c1100c56d2">disablePrintStat</a>()</div>
375
- <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; {</div>
376
- <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a> = <span class="keyword">false</span>;</div>
377
- <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; }</div>
378
- <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; </div>
379
- <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; </div>
380
- <div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe"> 371</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>()</div>
381
- <div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; {</div>
382
- <div class="line"><a name="l00373"></a><span class="lineno"> 373</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>
383
- <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; }</div>
384
- <div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095"> 375</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095">hasIndCSCallees</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs)<span class="keyword"> const</span></div>
385
- <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;<span class="keyword"> </span>{</div>
386
- <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#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>()-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a71a63c53a093ea8e450fb53fd60c9424">hasIndCSCallees</a>(cs);</div>
387
- <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div>
388
- <div class="line"><a name="l00379"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae0efd57376195eacded85d58abee5b46"> 379</a></span>&#160; <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#ae0efd57376195eacded85d58abee5b46">getIndCSCallees</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs)<span class="keyword"> const</span></div>
389
- <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;<span class="keyword"> </span>{</div>
390
- <div class="line"><a name="l00381"></a><span class="lineno"> 381</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>
391
- <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; }</div>
304
+ <div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="keyword">public</span>:</div>
305
+ <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ab83b827ea42d3a61aad20b1a1485d866">dumpStat</a>();</div>
306
+ <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; </div>
307
+ <div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; </div>
308
+ <div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063"> 289</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">containBlackHoleNode</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts)</div>
309
+ <div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; {</div>
310
+ <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> pts.<a class="code" href="classSVF_1_1PointsTo.html#af61271fefa574c39f405fdfee59a8b3f">test</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#a3ce34b9fcb651689bce44ab48fbcdff0">getBlackHoleNode</a>());</div>
311
+ <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div>
312
+ <div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd"> 293</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd">containConstantNode</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts)</div>
313
+ <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; {</div>
314
+ <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> pts.<a class="code" href="classSVF_1_1PointsTo.html#af61271fefa574c39f405fdfee59a8b3f">test</a>(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-&gt;<a class="code" href="classSVF_1_1IRGraph.html#ac5da3a0cbe040a45d719b6f6a23aed91">getConstantNode</a>());</div>
315
+ <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</div>
316
+ <div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b"> 297</a></span>&#160; <span class="keyword">virtual</span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b">isBlkObjOrConstantObj</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptd)<span class="keyword"> const</span></div>
317
+ <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="keyword"> </span>{</div>
318
+ <div class="line"><a name="l00299"></a><span class="lineno"> 299</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>
319
+ <div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div>
320
+ <div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; </div>
321
+ <div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; </div>
322
+ <div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361"> 305</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">isHeapMemObj</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
323
+ <div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;<span class="keyword"> </span>{</div>
324
+ <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* 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>
325
+ <div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; assert(mem &amp;&amp; <span class="stringliteral">&quot;memory object is null??&quot;</span>);</div>
326
+ <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">return</span> mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">isHeap</a>();</div>
327
+ <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; }</div>
328
+ <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; </div>
329
+ <div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73"> 312</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">isArrayMemObj</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
330
+ <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="keyword"> </span>{</div>
331
+ <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* 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>
332
+ <div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; assert(mem &amp;&amp; <span class="stringliteral">&quot;memory object is null??&quot;</span>);</div>
333
+ <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">return</span> mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#aeba6eeed4843a1a90cf1d4b7deb197af">isArray</a>();</div>
334
+ <div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div>
335
+ <div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; </div>
336
+ <div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#af90d2ccb01402c5ca9d7a059f345c816"> 322</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#af90d2ccb01402c5ca9d7a059f345c816">isFIObjNode</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
337
+ <div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="keyword"> </span>{</div>
338
+ <div class="line"><a name="l00324"></a><span class="lineno"> 324</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>
339
+ <div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; }</div>
340
+ <div class="line"><a name="l00326"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c"> 326</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c">getBaseObjVar</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)</div>
341
+ <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; {</div>
342
+ <div class="line"><a name="l00328"></a><span class="lineno"> 328</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>
343
+ <div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; }</div>
344
+ <div class="line"><a name="l00330"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac"> 330</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">getFIObjVar</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)</div>
345
+ <div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; {</div>
346
+ <div class="line"><a name="l00332"></a><span class="lineno"> 332</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>
347
+ <div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; }</div>
348
+ <div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aac6ccf3dc313e3c6761bb57316829da8"> 334</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aac6ccf3dc313e3c6761bb57316829da8">getGepObjVar</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>, <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">APOffset</a>&amp; ap)</div>
349
+ <div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; {</div>
350
+ <div class="line"><a name="l00336"></a><span class="lineno"> 336</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#ae18425df0631aefca7dd4b799f6f524a">getGepObjVar</a>(<span class="keywordtype">id</span>, ap);</div>
351
+ <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; }</div>
352
+ <div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde"> 338</a></span>&#160; <span class="keyword">virtual</span> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde">getAllFieldsObjVars</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)</div>
353
+ <div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; {</div>
354
+ <div class="line"><a name="l00340"></a><span class="lineno"> 340</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>
355
+ <div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</div>
356
+ <div class="line"><a name="l00342"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b"> 342</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">setObjFieldInsensitive</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)</div>
357
+ <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; {</div>
358
+ <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* mem = <span class="keyword">const_cast&lt;</span><a class="code" href="classSVF_1_1MemObj.html">MemObj</a>*<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>
359
+ <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#ab9637ea9acd1f8ae4933b4ab2b997e5c">setFieldInsensitive</a>();</div>
360
+ <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; }</div>
361
+ <div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe"> 347</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">isFieldInsensitive</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
362
+ <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;<span class="keyword"> </span>{</div>
363
+ <div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* 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>
364
+ <div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">return</span> mem-&gt;<a class="code" href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">isFieldInsensitive</a>();</div>
365
+ <div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; }</div>
366
+ <div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; </div>
367
+ <div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183"> 355</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">printStat</a>()</div>
368
+ <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; {</div>
369
+ <div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a>;</div>
370
+ <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; }</div>
371
+ <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; </div>
372
+ <div class="line"><a name="l00361"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#af44b14fed89918847c0228c1100c56d2"> 361</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#af44b14fed89918847c0228c1100c56d2">disablePrintStat</a>()</div>
373
+ <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; {</div>
374
+ <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a> = <span class="keyword">false</span>;</div>
375
+ <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; }</div>
376
+ <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; </div>
377
+ <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; </div>
378
+ <div class="line"><a name="l00368"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe"> 368</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>()</div>
379
+ <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; {</div>
380
+ <div class="line"><a name="l00370"></a><span class="lineno"> 370</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>
381
+ <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; }</div>
382
+ <div class="line"><a name="l00372"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095"> 372</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095">hasIndCSCallees</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs)<span class="keyword"> const</span></div>
383
+ <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;<span class="keyword"> </span>{</div>
384
+ <div class="line"><a name="l00374"></a><span class="lineno"> 374</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>
385
+ <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; }</div>
386
+ <div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae0efd57376195eacded85d58abee5b46"> 376</a></span>&#160; <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a>&amp; <a class="code" href="classSVF_1_1PointerAnalysis.html#ae0efd57376195eacded85d58abee5b46">getIndCSCallees</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs)<span class="keyword"> const</span></div>
387
+ <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;<span class="keyword"> </span>{</div>
388
+ <div class="line"><a name="l00378"></a><span class="lineno"> 378</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>
389
+ <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; }</div>
390
+ <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; </div>
391
+ <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a8d128246f86f28fdf4981d91169ab440">resolveIndCalls</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; target, <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; newEdges);</div>
392
392
  <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; </div>
393
- <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a8d128246f86f28fdf4981d91169ab440">resolveIndCalls</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; target, <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; newEdges);</div>
394
- <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; </div>
395
- <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; </div>
396
- <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">callGraphSCCDetection</a>()</div>
397
- <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; {</div>
398
- <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>==<span class="keyword">nullptr</span>)</div>
399
- <div class="line"><a name="l00394"></a><span class="lineno"> 394</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>
400
- <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; </div>
401
- <div class="line"><a name="l00396"></a><span class="lineno"> 396</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>
402
- <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }</div>
403
- <div class="line"><a name="l00399"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8"> 399</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
404
- <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;<span class="keyword"> </span>{</div>
405
- <div class="line"><a name="l00401"></a><span class="lineno"> 401</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>
406
- <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; }</div>
407
- <div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67"> 404</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67">inSameCallGraphSCC</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun1,<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun2)</div>
408
- <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; {</div>
409
- <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PTACallGraphNode.html">PTACallGraphNode</a>* 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>
410
- <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PTACallGraphNode.html">PTACallGraphNode</a>* 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>
411
- <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(src-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>()) == <a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(dst-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>()));</div>
412
- <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; }</div>
413
- <div class="line"><a name="l00410"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aa725a0c9426e8615cbc078c88561f66a"> 410</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#aa725a0c9426e8615cbc078c88561f66a">isInRecursion</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun)<span class="keyword"> const</span></div>
414
- <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;<span class="keyword"> </span>{</div>
415
- <div class="line"><a name="l00412"></a><span class="lineno"> 412</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>
416
- <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; }</div>
417
- <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">isLocalVarInRecursiveFun</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>) <span class="keyword">const</span>;</div>
418
- <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; </div>
419
- <div class="line"><a name="l00419"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0"> 419</a></span>&#160; <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">PTAName</a>()<span class="keyword"> const</span></div>
420
- <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;<span class="keyword"> </span>{</div>
421
- <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;Pointer Analysis&quot;</span>;</div>
422
- <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; }</div>
423
- <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; </div>
424
- <div class="line"><a name="l00425"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5"> 425</a></span>&#160; <a class="code" href="classSVF_1_1CommonCHGraph.html">CommonCHGraph</a> *<a class="code" href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5">getCHGraph</a>()<span class="keyword"> const</span></div>
425
- <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;<span class="keyword"> </span>{</div>
426
- <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#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>;</div>
427
- <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; }</div>
428
- <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; </div>
429
- <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">getVFnsFromCHA</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> &amp;vfns);</div>
430
- <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a011b8401f5ed5fdb6cd507053465a7a2">getVFnsFromPts</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;target, <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> &amp;vfns);</div>
431
- <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a6a5dec067fa2a1babc83f36daa8afcc3">connectVCallToVFns</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> &amp;vfns, <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; newEdges);</div>
432
- <div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac04b64a5884710508b304f93da88c7ba">resolveCPPIndCalls</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs,</div>
433
- <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; target,</div>
434
- <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; newEdges);</div>
393
+ <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; </div>
394
+ <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">callGraphSCCDetection</a>()</div>
395
+ <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; {</div>
396
+ <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#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>==<span class="keyword">nullptr</span>)</div>
397
+ <div class="line"><a name="l00391"></a><span class="lineno"> 391</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>
398
+ <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; </div>
399
+ <div class="line"><a name="l00393"></a><span class="lineno"> 393</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>
400
+ <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; }</div>
401
+ <div class="line"><a name="l00396"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8"> 396</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>)<span class="keyword"> const</span></div>
402
+ <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;<span class="keyword"> </span>{</div>
403
+ <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#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a>-&gt;<a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(<span class="keywordtype">id</span>);</div>
404
+ <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; }</div>
405
+ <div class="line"><a name="l00401"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67"> 401</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67">inSameCallGraphSCC</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun1,<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun2)</div>
406
+ <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; {</div>
407
+ <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PTACallGraphNode.html">PTACallGraphNode</a>* 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>
408
+ <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PTACallGraphNode.html">PTACallGraphNode</a>* 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>
409
+ <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(src-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>()) == <a class="code" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(dst-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>()));</div>
410
+ <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; }</div>
411
+ <div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aa725a0c9426e8615cbc078c88561f66a"> 407</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#aa725a0c9426e8615cbc078c88561f66a">isInRecursion</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun)<span class="keyword"> const</span></div>
412
+ <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;<span class="keyword"> </span>{</div>
413
+ <div class="line"><a name="l00409"></a><span class="lineno"> 409</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>
414
+ <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; }</div>
415
+ <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">isLocalVarInRecursiveFun</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>) <span class="keyword">const</span>;</div>
416
+ <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; </div>
417
+ <div class="line"><a name="l00416"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0"> 416</a></span>&#160; <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">PTAName</a>()<span class="keyword"> const</span></div>
418
+ <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;<span class="keyword"> </span>{</div>
419
+ <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;Pointer Analysis&quot;</span>;</div>
420
+ <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; }</div>
421
+ <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; </div>
422
+ <div class="line"><a name="l00422"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5"> 422</a></span>&#160; <a class="code" href="classSVF_1_1CommonCHGraph.html">CommonCHGraph</a> *<a class="code" href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5">getCHGraph</a>()<span class="keyword"> const</span></div>
423
+ <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;<span class="keyword"> </span>{</div>
424
+ <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a>;</div>
425
+ <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; }</div>
426
+ <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; </div>
427
+ <div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">getVFnsFromCHA</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> &amp;vfns);</div>
428
+ <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a011b8401f5ed5fdb6cd507053465a7a2">getVFnsFromPts</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;target, <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> &amp;vfns);</div>
429
+ <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a6a5dec067fa2a1babc83f36daa8afcc3">connectVCallToVFns</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs, <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> &amp;vfns, <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; newEdges);</div>
430
+ <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac04b64a5884710508b304f93da88c7ba">resolveCPPIndCalls</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cs,</div>
431
+ <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; target,</div>
432
+ <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a>&amp; newEdges);</div>
433
+ <div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;};</div>
434
+ <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; </div>
435
+ <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;} <span class="comment">// End namespace SVF</span></div>
435
436
  <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; </div>
436
- <div class="line"><a name="l00438"></a><span class="lineno"><a class="line" href="classSVF_1_1PointerAnalysis.html#ae615dd279fbf681e3c15e7209e3adfbe"> 438</a></span>&#160; <span class="keyword">const</span> TypeSystem *<a class="code" href="classSVF_1_1PointerAnalysis.html#ae615dd279fbf681e3c15e7209e3adfbe">getTypeSystem</a>()<span class="keyword"> const</span></div>
437
- <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;<span class="keyword"> </span>{</div>
438
- <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a>;</div>
439
- <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; }</div>
440
- <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;};</div>
441
- <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; </div>
442
- <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;} <span class="comment">// End namespace SVF</span></div>
443
- <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; </div>
444
- <div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* POINTERANALYSIS_H_ */</span><span class="preprocessor"></span></div>
437
+ <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* POINTERANALYSIS_H_ */</span><span class="preprocessor"></span></div>
445
438
  </div><!-- fragment --></div><!-- contents -->
446
439
  <div class="ttc" id="anamespaceSVF_html_a5c4820681ef340339ddded756eb82ae1"><div class="ttname"><a href="namespaceSVF.html#a5c4820681ef340339ddded756eb82ae1">SVF::APOffset</a></div><div class="ttdeci">s64_t APOffset</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00061">SVFType.h:61</a></div></div>
447
440
  <div class="ttc" id="aclassSVF_1_1PointsTo_html_af61271fefa574c39f405fdfee59a8b3f"><div class="ttname"><a href="classSVF_1_1PointsTo.html#af61271fefa574c39f405fdfee59a8b3f">SVF::PointsTo::test</a></div><div class="ttdeci">bool test(u32_t n) const</div><div class="ttdoc">Returns true if n is in this set.</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00131">PointsTo.cpp:131</a></div></div>
448
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_af44b14fed89918847c0228c1100c56d2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#af44b14fed89918847c0228c1100c56d2">SVF::PointerAnalysis::disablePrintStat</a></div><div class="ttdeci">void disablePrintStat()</div><div class="ttdoc">Whether print statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00364">PointerAnalysis.h:364</a></div></div>
449
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">SVF::PointerAnalysis::PTAImplTy</a></div><div class="ttdeci">PTAImplTy</div><div class="ttdoc">Implementation type: BVDataPTAImpl or CondPTAImpl.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00094">PointerAnalysis.h:94</a></div></div>
450
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5ec3d9bf1fc81346c9df29638daedc0f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">SVF::PointerAnalysis::stat</a></div><div class="ttdeci">PTAStat * stat</div><div class="ttdoc">Statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00150">PointerAnalysis.h:150</a></div></div>
441
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_af44b14fed89918847c0228c1100c56d2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#af44b14fed89918847c0228c1100c56d2">SVF::PointerAnalysis::disablePrintStat</a></div><div class="ttdeci">void disablePrintStat()</div><div class="ttdoc">Whether print statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00361">PointerAnalysis.h:361</a></div></div>
442
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">SVF::PointerAnalysis::PTAImplTy</a></div><div class="ttdeci">PTAImplTy</div><div class="ttdoc">Implementation type: BVDataPTAImpl or CondPTAImpl.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00093">PointerAnalysis.h:93</a></div></div>
443
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5ec3d9bf1fc81346c9df29638daedc0f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">SVF::PointerAnalysis::stat</a></div><div class="ttdeci">PTAStat * stat</div><div class="ttdoc">Statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00149">PointerAnalysis.h:149</a></div></div>
451
444
  <div class="ttc" id="aclassSVF_1_1CommonCHGraph_html"><div class="ttname"><a href="classSVF_1_1CommonCHGraph.html">SVF::CommonCHGraph</a></div><div class="ttdoc">Common base for class hierarchy graph. Only implements what PointerAnalysis needs.</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00050">CHG.h:50</a></div></div>
452
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aac6ccf3dc313e3c6761bb57316829da8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aac6ccf3dc313e3c6761bb57316829da8">SVF::PointerAnalysis::getGepObjVar</a></div><div class="ttdeci">NodeID getGepObjVar(NodeID id, const APOffset &amp;ap)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00337">PointerAnalysis.h:337</a></div></div>
445
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aac6ccf3dc313e3c6761bb57316829da8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aac6ccf3dc313e3c6761bb57316829da8">SVF::PointerAnalysis::getGepObjVar</a></div><div class="ttdeci">NodeID getGepObjVar(NodeID id, const APOffset &amp;ap)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00334">PointerAnalysis.h:334</a></div></div>
453
446
  <div class="ttc" id="anamespaceSVF_html_a3c2bd95727ec0d9c55c631b6617026c8"><div class="ttname"><a href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">SVF::OrderedNodeSet</a></div><div class="ttdeci">OrderedSet&lt; NodeID &gt; OrderedNodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00113">SVFType.h:113</a></div></div>
454
447
  <div class="ttc" id="aclassSVF_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#l00435">SymbolTableInfo.cpp:435</a></div></div>
455
448
  <div class="ttc" id="aclassSVF_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#l00337">SVFIR.h:337</a></div></div>
456
- <div class="ttc" id="aclassSVF_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#l00169">PointerAnalysis.h:169</a></div></div>
449
+ <div class="ttc" id="aclassSVF_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#l00166">PointerAnalysis.h:166</a></div></div>
457
450
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a431ec4f85eb0f029e5740b92fd9ceb32"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">SVF::PointerAnalysis::initialize</a></div><div class="ttdeci">virtual void initialize()</div><div class="ttdoc">Initialization of a pointer analysis, including building symbol table and SVFIR etc.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00106">PointerAnalysis.cpp:106</a></div></div>
458
451
  <div class="ttc" id="anamespaceSVF_html_aedf0d6718ca176e0b9e17ab4b30729c6"><div class="ttname"><a href="namespaceSVF.html#aedf0d6718ca176e0b9e17ab4b30729c6">SVF::OrderedMap</a></div><div class="ttdeci">std::map&lt; Key, Value, Compare, Allocator &gt; OrderedMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00110">SVFType.h:110</a></div></div>
459
- <div class="ttc" id="aclassSVF_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#l00117">PointerAnalysis.h:117</a></div></div>
460
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">SVF::PointerAnalysis::BaseImpl</a></div><div class="ttdeci">@ BaseImpl</div><div class="ttdoc">Represents PointerAnalaysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00096">PointerAnalysis.h:96</a></div></div>
461
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9">SVF::PointerAnalysis::VFS_WPA</a></div><div class="ttdeci">@ VFS_WPA</div><div class="ttdoc">Versioned sparse flow-sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00076">PointerAnalysis.h:76</a></div></div>
452
+ <div class="ttc" id="aclassSVF_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#l00116">PointerAnalysis.h:116</a></div></div>
453
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">SVF::PointerAnalysis::BaseImpl</a></div><div class="ttdeci">@ BaseImpl</div><div class="ttdoc">Represents PointerAnalaysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00095">PointerAnalysis.h:95</a></div></div>
454
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9">SVF::PointerAnalysis::VFS_WPA</a></div><div class="ttdeci">@ VFS_WPA</div><div class="ttdoc">Versioned sparse flow-sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00075">PointerAnalysis.h:75</a></div></div>
462
455
  <div class="ttc" id="anamespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00097">SVFType.h:97</a></div></div>
463
456
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae1e217dc18be0ce70bee5ad930cb54c6"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae1e217dc18be0ce70bee5ad930cb54c6">SVF::PointerAnalysis::analyze</a></div><div class="ttdeci">virtual void analyze()=0</div><div class="ttdoc">Start Analysis here (main part of pointer analysis). It needs to be implemented in child class.</div></div>
464
457
  <div class="ttc" id="aclassSVF_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>
465
458
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a1a6cee7e690ccb3e53cdc4c3e67b386d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">SVF::PointerAnalysis::dumpPts</a></div><div class="ttdeci">virtual void dumpPts(NodeID ptr, const PointsTo &amp;pts)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00257">PointerAnalysis.cpp:257</a></div></div>
466
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5dddd53b4ca9d7cc23d88ed9f3de9fde"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde">SVF::PointerAnalysis::getAllFieldsObjVars</a></div><div class="ttdeci">virtual const NodeBS &amp; getAllFieldsObjVars(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00341">PointerAnalysis.h:341</a></div></div>
459
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5dddd53b4ca9d7cc23d88ed9f3de9fde"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde">SVF::PointerAnalysis::getAllFieldsObjVars</a></div><div class="ttdeci">virtual const NodeBS &amp; getAllFieldsObjVars(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00338">PointerAnalysis.h:338</a></div></div>
467
460
  <div class="ttc" id="aclassSVF_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#l00350">PointerAnalysis.cpp:350</a></div></div>
468
461
  <div class="ttc" id="anamespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00065">BasicTypes.h:65</a></div></div>
469
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78">SVF::PointerAnalysis::FSSPARSE_WPA</a></div><div class="ttdeci">@ FSSPARSE_WPA</div><div class="ttdoc">Sparse flow sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00075">PointerAnalysis.h:75</a></div></div>
470
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0f71e4cd0948b294c7d33a690bde7dbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">SVF::PointerAnalysis::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00350">PointerAnalysis.h:350</a></div></div>
471
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0ebf1138011aa526d92470c1931313ad"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad">SVF::PointerAnalysis::getStat</a></div><div class="ttdeci">PTAStat * getStat() const</div><div class="ttdoc">Get PTA stat.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00208">PointerAnalysis.h:208</a></div></div>
462
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78">SVF::PointerAnalysis::FSSPARSE_WPA</a></div><div class="ttdeci">@ FSSPARSE_WPA</div><div class="ttdoc">Sparse flow sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00074">PointerAnalysis.h:74</a></div></div>
463
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0f71e4cd0948b294c7d33a690bde7dbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">SVF::PointerAnalysis::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00347">PointerAnalysis.h:347</a></div></div>
464
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0ebf1138011aa526d92470c1931313ad"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad">SVF::PointerAnalysis::getStat</a></div><div class="ttdeci">PTAStat * getStat() const</div><div class="ttdoc">Get PTA stat.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00205">PointerAnalysis.h:205</a></div></div>
472
465
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a73fb8e595473e0c7df1dd0de4968ad13"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">SVF::PointerAnalysis::resetObjFieldSensitive</a></div><div class="ttdeci">void resetObjFieldSensitive()</div><div class="ttdoc">Reset all object node as field-sensitive.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00154">PointerAnalysis.cpp:154</a></div></div>
473
- <div class="ttc" id="aclassSVF_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#l00267">PointerAnalysis.h:267</a></div></div>
466
+ <div class="ttc" id="aclassSVF_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#l00264">PointerAnalysis.h:264</a></div></div>
474
467
  <div class="ttc" id="aclassSVF_1_1PTAStat_html"><div class="ttname"><a href="classSVF_1_1PTAStat.html">SVF::PTAStat</a></div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00048">PTAStat.h:48</a></div></div>
475
- <div class="ttc" id="aclassSVF_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#l00174">PointerAnalysis.h:174</a></div></div>
476
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">SVF::PointerAnalysis::FlowS_DDA</a></div><div class="ttdeci">@ FlowS_DDA</div><div class="ttdoc">Flow sensitive DDA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00085">PointerAnalysis.h:85</a></div></div>
477
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ade879ee99cae01632d567d3736dcad9e"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e">SVF::PointerAnalysis::getICFG</a></div><div class="ttdeci">ICFG * getICFG() const</div><div class="ttdoc">Get ICFG.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00164">PointerAnalysis.h:164</a></div></div>
468
+ <div class="ttc" id="aclassSVF_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#l00171">PointerAnalysis.h:171</a></div></div>
469
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">SVF::PointerAnalysis::FlowS_DDA</a></div><div class="ttdeci">@ FlowS_DDA</div><div class="ttdoc">Flow sensitive DDA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00084">PointerAnalysis.h:84</a></div></div>
470
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ade879ee99cae01632d567d3736dcad9e"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e">SVF::PointerAnalysis::getICFG</a></div><div class="ttdeci">ICFG * getICFG() const</div><div class="ttdoc">Get ICFG.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00161">PointerAnalysis.h:161</a></div></div>
478
471
  <div class="ttc" id="aclassSVF_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>
479
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00058">PointerAnalysis.h:58</a></div></div>
480
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a83b0a51d88fa7aadff6e9267765d07a5"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">SVF::PointerAnalysis::aliasTestPartialAlias</a></div><div class="ttdeci">static const std::string aliasTestPartialAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00116">PointerAnalysis.h:116</a></div></div>
481
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d">SVF::PointerAnalysis::CFLFSCS_WPA</a></div><div class="ttdeci">@ CFLFSCS_WPA</div><div class="ttdoc">Flow-, context-, CFL-reachability-based analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00080">PointerAnalysis.h:80</a></div></div>
482
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a68b05bc02c5473c1e0d39ac4f4454bac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">SVF::PointerAnalysis::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00333">PointerAnalysis.h:333</a></div></div>
472
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00057">PointerAnalysis.h:57</a></div></div>
473
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a83b0a51d88fa7aadff6e9267765d07a5"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">SVF::PointerAnalysis::aliasTestPartialAlias</a></div><div class="ttdeci">static const std::string aliasTestPartialAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00115">PointerAnalysis.h:115</a></div></div>
474
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d">SVF::PointerAnalysis::CFLFSCS_WPA</a></div><div class="ttdeci">@ CFLFSCS_WPA</div><div class="ttdoc">Flow-, context-, CFL-reachability-based analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00079">PointerAnalysis.h:79</a></div></div>
475
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a68b05bc02c5473c1e0d39ac4f4454bac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">SVF::PointerAnalysis::getFIObjVar</a></div><div class="ttdeci">NodeID getFIObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00330">PointerAnalysis.h:330</a></div></div>
483
476
  <div class="ttc" id="anamespaceSVF_html_ad2b487757f1e1a1d81073120fc1d49c7"><div class="ttname"><a href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">SVF::VFunSet</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; VFunSet</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00047">CHG.h:47</a></div></div>
484
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1">SVF::PointerAnalysis::AndersenSCD_WPA</a></div><div class="ttdeci">@ AndersenSCD_WPA</div><div class="ttdoc">Selective cycle detection andersen-style WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00068">PointerAnalysis.h:68</a></div></div>
485
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac23f71c1307cda9cba44acc40059f0a3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3">SVF::PointerAnalysis::getAnalysisTy</a></div><div class="ttdeci">PTATY getAnalysisTy() const</div><div class="ttdoc">Type of pointer analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00188">PointerAnalysis.h:188</a></div></div>
477
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1">SVF::PointerAnalysis::AndersenSCD_WPA</a></div><div class="ttdeci">@ AndersenSCD_WPA</div><div class="ttdoc">Selective cycle detection andersen-style WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00067">PointerAnalysis.h:67</a></div></div>
478
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac23f71c1307cda9cba44acc40059f0a3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3">SVF::PointerAnalysis::getAnalysisTy</a></div><div class="ttdeci">PTATY getAnalysisTy() const</div><div class="ttdoc">Type of pointer analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00185">PointerAnalysis.h:185</a></div></div>
486
479
  <div class="ttc" id="aclassSVF_1_1SVFIR_html_a7990c72dd6d645d713f19ed973841484"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a7990c72dd6d645d713f19ed973841484">SVF::SVFIR::getAllValidPtrs</a></div><div class="ttdeci">OrderedNodeSet &amp; getAllValidPtrs()</div><div class="ttdoc">Return valid pointers.</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00138">SVFIR.h:138</a></div></div>
487
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61">SVF::PointerAnalysis::FieldS_DDA</a></div><div class="ttdeci">@ FieldS_DDA</div><div class="ttdoc">Field sensitive DDA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00084">PointerAnalysis.h:84</a></div></div>
488
- <div class="ttc" id="aclassSVF_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#l00158">PointerAnalysis.h:158</a></div></div>
489
- <div class="ttc" id="aclassSVF_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#l00134">PointerAnalysis.h:134</a></div></div>
490
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae615dd279fbf681e3c15e7209e3adfbe"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae615dd279fbf681e3c15e7209e3adfbe">SVF::PointerAnalysis::getTypeSystem</a></div><div class="ttdeci">const TypeSystem * getTypeSystem() const</div><div class="ttdoc">get TypeSystem</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00438">PointerAnalysis.h:438</a></div></div>
491
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82">SVF::PointerAnalysis::FSCS_WPA</a></div><div class="ttdeci">@ FSCS_WPA</div><div class="ttdoc">Flow-, context- sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00077">PointerAnalysis.h:77</a></div></div>
480
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61">SVF::PointerAnalysis::FieldS_DDA</a></div><div class="ttdeci">@ FieldS_DDA</div><div class="ttdoc">Field sensitive DDA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00083">PointerAnalysis.h:83</a></div></div>
481
+ <div class="ttc" id="aclassSVF_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#l00157">PointerAnalysis.h:157</a></div></div>
482
+ <div class="ttc" id="aclassSVF_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#l00133">PointerAnalysis.h:133</a></div></div>
483
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82">SVF::PointerAnalysis::FSCS_WPA</a></div><div class="ttdeci">@ FSCS_WPA</div><div class="ttdoc">Flow-, context- sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00076">PointerAnalysis.h:76</a></div></div>
492
484
  <div class="ttc" id="aclassSVF_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>
493
485
  <div class="ttc" id="aclassSVF_1_1SparseBitVector_html"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html">SVF::SparseBitVector</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00459">SparseBitVector.h:459</a></div></div>
494
486
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a118dabc50024b5cd91095814ade47166"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a118dabc50024b5cd91095814ade47166">SVF::PointerAnalysis::finalize</a></div><div class="ttdeci">virtual void finalize()</div><div class="ttdoc">Finalization of a pointer analysis, including checking alias correctness.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00180">PointerAnalysis.cpp:180</a></div></div>
495
487
  <div class="ttc" id="aSCC_8h_html"><div class="ttname"><a href="SCC_8h.html">SCC.h</a></div></div>
496
- <div class="ttc" id="aclassSVF_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#l00391">PointerAnalysis.h:391</a></div></div>
497
- <div class="ttc" id="aclassSVF_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#l00257">PointerAnalysis.h:257</a></div></div>
498
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a18347e41bc66b16e3f42c7c52811ad42"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42">SVF::PointerAnalysis::aliasTestFailNoAlias</a></div><div class="ttdeci">static const std::string aliasTestFailNoAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00122">PointerAnalysis.h:122</a></div></div>
499
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292">SVF::PointerAnalysis::CondImpl</a></div><div class="ttdeci">@ CondImpl</div><div class="ttdoc">Represents CondPTAImpl.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00098">PointerAnalysis.h:98</a></div></div>
488
+ <div class="ttc" id="aclassSVF_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#l00388">PointerAnalysis.h:388</a></div></div>
489
+ <div class="ttc" id="aclassSVF_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#l00254">PointerAnalysis.h:254</a></div></div>
490
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a18347e41bc66b16e3f42c7c52811ad42"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42">SVF::PointerAnalysis::aliasTestFailNoAlias</a></div><div class="ttdeci">static const std::string aliasTestFailNoAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00121">PointerAnalysis.h:121</a></div></div>
491
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292">SVF::PointerAnalysis::CondImpl</a></div><div class="ttdeci">@ CondImpl</div><div class="ttdoc">Represents CondPTAImpl.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00097">PointerAnalysis.h:97</a></div></div>
500
492
  <div class="ttc" id="aMutablePointsToDS_8h_html"><div class="ttname"><a href="MutablePointsToDS_8h.html">MutablePointsToDS.h</a></div></div>
501
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac353221cc7aced590dcf3550a24b1570"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570">SVF::PointerAnalysis::aliasTestNoAlias</a></div><div class="ttdeci">static const std::string aliasTestNoAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00114">PointerAnalysis.h:114</a></div></div>
493
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac353221cc7aced590dcf3550a24b1570"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570">SVF::PointerAnalysis::aliasTestNoAlias</a></div><div class="ttdeci">static const std::string aliasTestNoAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00113">PointerAnalysis.h:113</a></div></div>
502
494
  <div class="ttc" id="aclassSVF_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#l00180">GenericGraph.h:180</a></div></div>
503
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a60b111647e000cc983aa52513f90afbc"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc">SVF::PointerAnalysis::getAllValidPtrs</a></div><div class="ttdeci">OrderedNodeSet &amp; getAllValidPtrs()</div><div class="ttdoc">Get all Valid Pointers for resolution.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00218">PointerAnalysis.h:218</a></div></div>
495
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a60b111647e000cc983aa52513f90afbc"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc">SVF::PointerAnalysis::getAllValidPtrs</a></div><div class="ttdeci">OrderedNodeSet &amp; getAllValidPtrs()</div><div class="ttdoc">Get all Valid Pointers for resolution.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00215">PointerAnalysis.h:215</a></div></div>
504
496
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a6a5dec067fa2a1babc83f36daa8afcc3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a6a5dec067fa2a1babc83f36daa8afcc3">SVF::PointerAnalysis::connectVCallToVFns</a></div><div class="ttdeci">void connectVCallToVFns(const CallICFGNode *cs, const VFunSet &amp;vfns, CallEdgeMap &amp;newEdges)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00466">PointerAnalysis.cpp:466</a></div></div>
505
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a7648a0358e2c0798db1c547ec7aa7c64"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64">SVF::PointerAnalysis::aliasTestMayAlias</a></div><div class="ttdeci">static const std::string aliasTestMayAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00112">PointerAnalysis.h:112</a></div></div>
506
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8">SVF::PointerAnalysis::BVDataImpl</a></div><div class="ttdeci">@ BVDataImpl</div><div class="ttdoc">Represents BVDataPTAImpl.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00097">PointerAnalysis.h:97</a></div></div>
507
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a89dfeedf8e3e91603a1e9c73e3608a73"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">SVF::PointerAnalysis::isArrayMemObj</a></div><div class="ttdeci">bool isArrayMemObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00315">PointerAnalysis.h:315</a></div></div>
497
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a7648a0358e2c0798db1c547ec7aa7c64"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64">SVF::PointerAnalysis::aliasTestMayAlias</a></div><div class="ttdeci">static const std::string aliasTestMayAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00111">PointerAnalysis.h:111</a></div></div>
498
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8">SVF::PointerAnalysis::BVDataImpl</a></div><div class="ttdeci">@ BVDataImpl</div><div class="ttdoc">Represents BVDataPTAImpl.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00096">PointerAnalysis.h:96</a></div></div>
499
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a89dfeedf8e3e91603a1e9c73e3608a73"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">SVF::PointerAnalysis::isArrayMemObj</a></div><div class="ttdeci">bool isArrayMemObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00312">PointerAnalysis.h:312</a></div></div>
508
500
  <div class="ttc" id="aclassSVF_1_1MemObj_html_a898c5bb3956402578266a6fb142e02b1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">SVF::MemObj::isHeap</a></div><div class="ttdeci">bool isHeap() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00466">SymbolTableInfo.cpp:466</a></div></div>
509
501
  <div class="ttc" id="aclassSVF_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#l00443">SVFIR.h:443</a></div></div>
510
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0e68883e2ee328315af29e59bb2008cd"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0e68883e2ee328315af29e59bb2008cd">SVF::PointerAnalysis::aliasTestNoAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestNoAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00115">PointerAnalysis.h:115</a></div></div>
502
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0e68883e2ee328315af29e59bb2008cd"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0e68883e2ee328315af29e59bb2008cd">SVF::PointerAnalysis::aliasTestNoAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestNoAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00114">PointerAnalysis.h:114</a></div></div>
511
503
  <div class="ttc" id="aclassSVF_1_1SVFValue_html"><div class="ttname"><a href="classSVF_1_1SVFValue.html">SVF::SVFValue</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00177">SVFValue.h:177</a></div></div>
512
504
  <div class="ttc" id="aclassSVF_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>
513
505
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
514
- <div class="ttc" id="aclassSVF_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#l00144">PointerAnalysis.h:144</a></div></div>
506
+ <div class="ttc" id="aclassSVF_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#l00143">PointerAnalysis.h:143</a></div></div>
515
507
  <div class="ttc" id="aclassSVF_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>
516
508
  <div class="ttc" id="aclassSVF_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#l00385">ICFGNode.h:385</a></div></div>
517
- <div class="ttc" id="aclassSVF_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#l00154">PointerAnalysis.h:154</a></div></div>
518
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0f821cfe4fb9c9c8816e7a1b1bc0c5e"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e">SVF::PointerAnalysis::getImplTy</a></div><div class="ttdeci">PTAImplTy getImplTy() const</div><div class="ttdoc">Return implementation type of the pointer analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00194">PointerAnalysis.h:194</a></div></div>
519
- <div class="ttc" id="aclassSVF_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#l00399">PointerAnalysis.h:399</a></div></div>
509
+ <div class="ttc" id="aclassSVF_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#l00153">PointerAnalysis.h:153</a></div></div>
510
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac0f821cfe4fb9c9c8816e7a1b1bc0c5e"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e">SVF::PointerAnalysis::getImplTy</a></div><div class="ttdeci">PTAImplTy getImplTy() const</div><div class="ttdoc">Return implementation type of the pointer analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00191">PointerAnalysis.h:191</a></div></div>
511
+ <div class="ttc" id="aclassSVF_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#l00396">PointerAnalysis.h:396</a></div></div>
520
512
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a14e2a209cb594f91a24ef09b12f82f3f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">SVF::PointerAnalysis::PointerAnalysis</a></div><div class="ttdeci">PointerAnalysis(SVFIR *pag, PTATY ty=Default_PTA, bool alias_check=true)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00070">PointerAnalysis.cpp:70</a></div></div>
521
513
  <div class="ttc" id="aSVFIR_8h_html"><div class="ttname"><a href="SVFIR_8h.html">SVFIR.h</a></div></div>
522
514
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a4dfb43679e9fa794ebad99b6584c32ec"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4dfb43679e9fa794ebad99b6584c32ec">SVF::PointerAnalysis::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID ptr)=0</div><div class="ttdoc">Get points-to targets of a pointer. It needs to be implemented in child class.</div></div>
523
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae0efd57376195eacded85d58abee5b46"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae0efd57376195eacded85d58abee5b46">SVF::PointerAnalysis::getIndCSCallees</a></div><div class="ttdeci">const FunctionSet &amp; getIndCSCallees(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00379">PointerAnalysis.h:379</a></div></div>
524
- <div class="ttc" id="aclassSVF_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#l00106">PointerAnalysis.h:106</a></div></div>
515
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae0efd57376195eacded85d58abee5b46"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae0efd57376195eacded85d58abee5b46">SVF::PointerAnalysis::getIndCSCallees</a></div><div class="ttdeci">const FunctionSet &amp; getIndCSCallees(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00376">PointerAnalysis.h:376</a></div></div>
516
+ <div class="ttc" id="aclassSVF_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#l00105">PointerAnalysis.h:105</a></div></div>
525
517
  <div class="ttc" id="aclassSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00297">SVFValue.h:297</a></div></div>
526
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">SVF::PointerAnalysis::Cxt_DDA</a></div><div class="ttdeci">@ Cxt_DDA</div><div class="ttdoc">context sensitive DDA</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00087">PointerAnalysis.h:87</a></div></div>
527
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0bddf297a2d8cd59ce9a232f0229f248"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248">SVF::PointerAnalysis::getCallGraphSCC</a></div><div class="ttdeci">CallGraphSCC * getCallGraphSCC() const</div><div class="ttdoc">Return call graph SCC.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00179">PointerAnalysis.h:179</a></div></div>
518
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">SVF::PointerAnalysis::Cxt_DDA</a></div><div class="ttdeci">@ Cxt_DDA</div><div class="ttdoc">context sensitive DDA</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00086">PointerAnalysis.h:86</a></div></div>
519
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0bddf297a2d8cd59ce9a232f0229f248"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248">SVF::PointerAnalysis::getCallGraphSCC</a></div><div class="ttdeci">CallGraphSCC * getCallGraphSCC() const</div><div class="ttdoc">Return call graph SCC.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00176">PointerAnalysis.h:176</a></div></div>
528
520
  <div class="ttc" id="aConditionalPT_8h_html"><div class="ttname"><a href="ConditionalPT_8h.html">ConditionalPT.h</a></div></div>
529
521
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ab83b827ea42d3a61aad20b1a1485d866"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ab83b827ea42d3a61aad20b1a1485d866">SVF::PointerAnalysis::dumpStat</a></div><div class="ttdeci">void dumpStat()</div><div class="ttdoc">Dump the statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00167">PointerAnalysis.cpp:167</a></div></div>
530
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58">SVF::PointerAnalysis::PathS_DDA</a></div><div class="ttdeci">@ PathS_DDA</div><div class="ttdoc">Guarded value-flow DDA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00086">PointerAnalysis.h:86</a></div></div>
531
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">SVF::PointerAnalysis::Default_PTA</a></div><div class="ttdeci">@ Default_PTA</div><div class="ttdoc">default pta without any analysis</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00090">PointerAnalysis.h:90</a></div></div>
532
- <div class="ttc" id="aclassSVF_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#l00272">PointerAnalysis.h:272</a></div></div>
522
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58">SVF::PointerAnalysis::PathS_DDA</a></div><div class="ttdeci">@ PathS_DDA</div><div class="ttdoc">Guarded value-flow DDA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00085">PointerAnalysis.h:85</a></div></div>
523
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">SVF::PointerAnalysis::Default_PTA</a></div><div class="ttdeci">@ Default_PTA</div><div class="ttdoc">default pta without any analysis</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00089">PointerAnalysis.h:89</a></div></div>
524
+ <div class="ttc" id="aclassSVF_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#l00269">PointerAnalysis.h:269</a></div></div>
533
525
  <div class="ttc" id="aclassSVF_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#l00166">IRGraph.h:166</a></div></div>
534
526
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a03dadb5429e2b84f88713a83153979a8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a03dadb5429e2b84f88713a83153979a8">SVF::PointerAnalysis::destroy</a></div><div class="ttdeci">void destroy()</div><div class="ttdoc">Release the memory.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00091">PointerAnalysis.cpp:91</a></div></div>
535
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae58c2b25494ec51e714c83c6cfd5dd67"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67">SVF::PointerAnalysis::inSameCallGraphSCC</a></div><div class="ttdeci">bool inSameCallGraphSCC(const SVFFunction *fun1, const SVFFunction *fun2)</div><div class="ttdoc">Return TRUE if this edge is inside a CallGraph SCC, i.e., src node and dst node are in the same SCC o...</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00404">PointerAnalysis.h:404</a></div></div>
527
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae58c2b25494ec51e714c83c6cfd5dd67"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67">SVF::PointerAnalysis::inSameCallGraphSCC</a></div><div class="ttdeci">bool inSameCallGraphSCC(const SVFFunction *fun1, const SVFFunction *fun2)</div><div class="ttdoc">Return TRUE if this edge is inside a CallGraph SCC, i.e., src node and dst node are in the same SCC o...</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00401">PointerAnalysis.h:401</a></div></div>
536
528
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a8d128246f86f28fdf4981d91169ab440"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a8d128246f86f28fdf4981d91169ab440">SVF::PointerAnalysis::resolveIndCalls</a></div><div class="ttdeci">virtual void resolveIndCalls(const CallICFGNode *cs, const PointsTo &amp;target, CallEdgeMap &amp;newEdges)</div><div class="ttdoc">Resolve indirect call edges.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00385">PointerAnalysis.cpp:385</a></div></div>
537
529
  <div class="ttc" id="aPointsTo_8h_html"><div class="ttname"><a href="PointsTo_8h.html">PointsTo.h</a></div></div>
538
530
  <div class="ttc" id="aclassSVF_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#l00162">IRGraph.h:162</a></div></div>
539
531
  <div class="ttc" id="anamespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00618">SVFType.h:618</a></div></div>
540
532
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac04b64a5884710508b304f93da88c7ba"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac04b64a5884710508b304f93da88c7ba">SVF::PointerAnalysis::resolveCPPIndCalls</a></div><div class="ttdeci">virtual void resolveCPPIndCalls(const CallICFGNode *cs, const PointsTo &amp;target, CallEdgeMap &amp;newEdges)</div><div class="ttdoc">Resolve cpp indirect call edges.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00488">PointerAnalysis.cpp:488</a></div></div>
541
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_afc320fbf269404fe128e69c98e6f9cac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">SVF::PointerAnalysis::OnTheFlyIterBudgetForStat</a></div><div class="ttdeci">u32_t OnTheFlyIterBudgetForStat</div><div class="ttdoc">Flag for iteration budget for on-the-fly statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00138">PointerAnalysis.h:138</a></div></div>
542
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ad8b71cebf46deaf60e2cd4f6d6bb9433"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">SVF::PointerAnalysis::getModule</a></div><div class="ttdeci">SVFModule * getModule() const</div><div class="ttdoc">Module.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00213">PointerAnalysis.h:213</a></div></div>
533
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_afc320fbf269404fe128e69c98e6f9cac"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">SVF::PointerAnalysis::OnTheFlyIterBudgetForStat</a></div><div class="ttdeci">u32_t OnTheFlyIterBudgetForStat</div><div class="ttdoc">Flag for iteration budget for on-the-fly statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00137">PointerAnalysis.h:137</a></div></div>
534
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ad8b71cebf46deaf60e2cd4f6d6bb9433"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">SVF::PointerAnalysis::getModule</a></div><div class="ttdeci">SVFModule * getModule() const</div><div class="ttdoc">Module.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00210">PointerAnalysis.h:210</a></div></div>
543
535
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae1323233941cdc9b99332e4b954a2217"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae1323233941cdc9b99332e4b954a2217">SVF::PointerAnalysis::alias</a></div><div class="ttdeci">virtual AliasResult alias(const SVFValue *V1, const SVFValue *V2)=0</div><div class="ttdoc">Interface exposed to users of our pointer analysis, given Value infos.</div></div>
544
536
  <div class="ttc" id="aclassSVF_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#l00402">SVFIR.h:402</a></div></div>
545
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a7477a4301d548b93958e57df389cbba0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0">SVF::PointerAnalysis::aliasTestMustAlias</a></div><div class="ttdeci">static const std::string aliasTestMustAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00118">PointerAnalysis.h:118</a></div></div>
546
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac5683fe2e24b393ccc5cb6d8bc92cf2b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">SVF::PointerAnalysis::setObjFieldInsensitive</a></div><div class="ttdeci">void setObjFieldInsensitive(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00345">PointerAnalysis.h:345</a></div></div>
547
- <div class="ttc" id="aclassSVF_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#l00120">PointerAnalysis.h:120</a></div></div>
548
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322">SVF::PointerAnalysis::FSDATAFLOW_WPA</a></div><div class="ttdeci">@ FSDATAFLOW_WPA</div><div class="ttdoc">Traditional Dataflow-based flow sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00074">PointerAnalysis.h:74</a></div></div>
549
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">SVF::PointerAnalysis::AndersenWaveDiff_WPA</a></div><div class="ttdeci">@ AndersenWaveDiff_WPA</div><div class="ttdoc">Diff wave propagation andersen-style WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00070">PointerAnalysis.h:70</a></div></div>
537
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a7477a4301d548b93958e57df389cbba0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0">SVF::PointerAnalysis::aliasTestMustAlias</a></div><div class="ttdeci">static const std::string aliasTestMustAlias</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00117">PointerAnalysis.h:117</a></div></div>
538
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ac5683fe2e24b393ccc5cb6d8bc92cf2b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">SVF::PointerAnalysis::setObjFieldInsensitive</a></div><div class="ttdeci">void setObjFieldInsensitive(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00342">PointerAnalysis.h:342</a></div></div>
539
+ <div class="ttc" id="aclassSVF_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#l00119">PointerAnalysis.h:119</a></div></div>
540
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322">SVF::PointerAnalysis::FSDATAFLOW_WPA</a></div><div class="ttdeci">@ FSDATAFLOW_WPA</div><div class="ttdoc">Traditional Dataflow-based flow sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00073">PointerAnalysis.h:73</a></div></div>
541
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">SVF::PointerAnalysis::AndersenWaveDiff_WPA</a></div><div class="ttdeci">@ AndersenWaveDiff_WPA</div><div class="ttdoc">Diff wave propagation andersen-style WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00069">PointerAnalysis.h:69</a></div></div>
550
542
  <div class="ttc" id="aclassSVF_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#l00406">GenericGraph.h:406</a></div></div>
551
543
  <div class="ttc" id="aclassSVF_1_1SCCDetection_html_a5d699af73b1e7ad4e3a5f6d26b8b6d15"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a5d699af73b1e7ad4e3a5f6d26b8b6d15">SVF::SCCDetection::isInCycle</a></div><div class="ttdeci">bool isInCycle(NodeID n) const</div><div class="ttdoc">whether the node is in a cycle</div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00149">SCC.h:149</a></div></div>
552
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5583b5fc0db461a0138b1f2f1c9a89a0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5583b5fc0db461a0138b1f2f1c9a89a0">SVF::PointerAnalysis::CallSiteSet</a></div><div class="ttdeci">Set&lt; const CallICFGNode * &gt; CallSiteSet</div><div class="ttdoc">Indirect call edges type, map a callsite to a set of callees.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00103">PointerAnalysis.h:103</a></div></div>
553
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae2cc7cd0803dbd90639140e71b06b1b5"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5">SVF::PointerAnalysis::getCHGraph</a></div><div class="ttdeci">CommonCHGraph * getCHGraph() const</div><div class="ttdoc">get CHGraph</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00425">PointerAnalysis.h:425</a></div></div>
554
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3">SVF::PointerAnalysis::TypeCPP_WPA</a></div><div class="ttdeci">@ TypeCPP_WPA</div><div class="ttdoc">Type-based analysis for C++.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00081">PointerAnalysis.h:81</a></div></div>
555
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ade83738ac754d5ffc2a3b497b600cad4"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">SVF::PointerAnalysis::ptaTy</a></div><div class="ttdeci">PTATY ptaTy</div><div class="ttdoc">Pointer analysis Type.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00146">PointerAnalysis.h:146</a></div></div>
556
- <div class="ttc" id="aclassSVF_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#l00142">PointerAnalysis.h:142</a></div></div>
544
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5583b5fc0db461a0138b1f2f1c9a89a0"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5583b5fc0db461a0138b1f2f1c9a89a0">SVF::PointerAnalysis::CallSiteSet</a></div><div class="ttdeci">Set&lt; const CallICFGNode * &gt; CallSiteSet</div><div class="ttdoc">Indirect call edges type, map a callsite to a set of callees.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00102">PointerAnalysis.h:102</a></div></div>
545
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae2cc7cd0803dbd90639140e71b06b1b5"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5">SVF::PointerAnalysis::getCHGraph</a></div><div class="ttdeci">CommonCHGraph * getCHGraph() const</div><div class="ttdoc">get CHGraph</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00422">PointerAnalysis.h:422</a></div></div>
546
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3">SVF::PointerAnalysis::TypeCPP_WPA</a></div><div class="ttdeci">@ TypeCPP_WPA</div><div class="ttdoc">Type-based analysis for C++.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00080">PointerAnalysis.h:80</a></div></div>
547
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ade83738ac754d5ffc2a3b497b600cad4"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">SVF::PointerAnalysis::ptaTy</a></div><div class="ttdeci">PTATY ptaTy</div><div class="ttdoc">Pointer analysis Type.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00145">PointerAnalysis.h:145</a></div></div>
548
+ <div class="ttc" id="aclassSVF_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#l00141">PointerAnalysis.h:141</a></div></div>
557
549
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a108380f6f0b67654bb7c7676686096c8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">SVF::PointerAnalysis::isLocalVarInRecursiveFun</a></div><div class="ttdeci">bool isLocalVarInRecursiveFun(NodeID id) const</div><div class="ttdoc">Whether a local variable is in function recursions.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00137">PointerAnalysis.cpp:137</a></div></div>
558
550
  <div class="ttc" id="aclassSVF_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>
559
551
  <div class="ttc" id="aclassSVF_1_1SVFIR_html_abda052b73e869ed6d7c139ad1528da11"><div class="ttname"><a href="classSVF_1_1SVFIR.html#abda052b73e869ed6d7c139ad1528da11">SVF::SVFIR::getICFG</a></div><div class="ttdeci">ICFG * getICFG() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00170">SVFIR.h:170</a></div></div>
560
552
  <div class="ttc" id="aclassSVF_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#l00218">PointerAnalysis.cpp:218</a></div></div>
561
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27">SVF::PointerAnalysis::CSSummary_WPA</a></div><div class="ttdeci">@ CSSummary_WPA</div><div class="ttdoc">Summary based context sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00073">PointerAnalysis.h:73</a></div></div>
562
- <div class="ttc" id="aclassSVF_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#l00107">PointerAnalysis.h:107</a></div></div>
563
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0bb90b398ef85504bcd816ae57bee01d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">SVF::PointerAnalysis::computeDDAPts</a></div><div class="ttdeci">virtual void computeDDAPts(NodeID)</div><div class="ttdoc">Compute points-to results on-demand, overridden by derived classes.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00236">PointerAnalysis.h:236</a></div></div>
553
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27">SVF::PointerAnalysis::CSSummary_WPA</a></div><div class="ttdeci">@ CSSummary_WPA</div><div class="ttdoc">Summary based context sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00072">PointerAnalysis.h:72</a></div></div>
554
+ <div class="ttc" id="aclassSVF_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#l00106">PointerAnalysis.h:106</a></div></div>
555
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0bb90b398ef85504bcd816ae57bee01d"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">SVF::PointerAnalysis::computeDDAPts</a></div><div class="ttdeci">virtual void computeDDAPts(NodeID)</div><div class="ttdoc">Compute points-to results on-demand, overridden by derived classes.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00233">PointerAnalysis.h:233</a></div></div>
564
556
  <div class="ttc" id="aclassSVF_1_1PTACallGraph_html_a12c899013f8a9ddd895bfb5027a84d4c"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a12c899013f8a9ddd895bfb5027a84d4c">SVF::PTACallGraph::getNumOfResolvedIndCallEdge</a></div><div class="ttdeci">u32_t getNumOfResolvedIndCallEdge() const</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00300">PTACallGraph.h:300</a></div></div>
565
557
  <div class="ttc" id="aclassSVF_1_1PTACallGraph_html"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html">SVF::PTACallGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00218">PTACallGraph.h:218</a></div></div>
566
558
  <div class="ttc" id="aclassSVF_1_1SCCDetection_html"><div class="ttname"><a href="classSVF_1_1SCCDetection.html">SVF::SCCDetection</a></div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00054">SCC.h:54</a></div></div>
567
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09">SVF::PointerAnalysis::CSCallString_WPA</a></div><div class="ttdeci">@ CSCallString_WPA</div><div class="ttdoc">Call string based context sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00072">PointerAnalysis.h:72</a></div></div>
568
- <div class="ttc" id="aclassSVF_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#l00152">PointerAnalysis.h:152</a></div></div>
569
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6">SVF::PointerAnalysis::Andersen_WPA</a></div><div class="ttdeci">@ Andersen_WPA</div><div class="ttdoc">Andersen PTA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00067">PointerAnalysis.h:67</a></div></div>
570
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_afa7d9f6209904acd7893ae583e28dafd"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd">SVF::PointerAnalysis::containConstantNode</a></div><div class="ttdeci">bool containConstantNode(const PointsTo &amp;pts)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00296">PointerAnalysis.h:296</a></div></div>
571
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b">SVF::PointerAnalysis::AndersenSFR_WPA</a></div><div class="ttdeci">@ AndersenSFR_WPA</div><div class="ttdoc">Stride-based field representation.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00069">PointerAnalysis.h:69</a></div></div>
559
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09">SVF::PointerAnalysis::CSCallString_WPA</a></div><div class="ttdeci">@ CSCallString_WPA</div><div class="ttdoc">Call string based context sensitive WPA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00071">PointerAnalysis.h:71</a></div></div>
560
+ <div class="ttc" id="aclassSVF_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#l00151">PointerAnalysis.h:151</a></div></div>
561
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6">SVF::PointerAnalysis::Andersen_WPA</a></div><div class="ttdeci">@ Andersen_WPA</div><div class="ttdoc">Andersen PTA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00066">PointerAnalysis.h:66</a></div></div>
562
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_afa7d9f6209904acd7893ae583e28dafd"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd">SVF::PointerAnalysis::containConstantNode</a></div><div class="ttdeci">bool containConstantNode(const PointsTo &amp;pts)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00293">PointerAnalysis.h:293</a></div></div>
563
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b">SVF::PointerAnalysis::AndersenSFR_WPA</a></div><div class="ttdeci">@ AndersenSFR_WPA</div><div class="ttdoc">Stride-based field representation.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00068">PointerAnalysis.h:68</a></div></div>
572
564
  <div class="ttc" id="aclassSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00040">SVFModule.h:40</a></div></div>
573
- <div class="ttc" id="aclassSVF_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#l00136">PointerAnalysis.h:136</a></div></div>
565
+ <div class="ttc" id="aclassSVF_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#l00135">PointerAnalysis.h:135</a></div></div>
574
566
  <div class="ttc" id="aPersistentPointsToDS_8h_html"><div class="ttname"><a href="PersistentPointsToDS_8h.html">PersistentPointsToDS.h</a></div></div>
575
567
  <div class="ttc" id="aclassSVF_1_1MemObj_html_ab9637ea9acd1f8ae4933b4ab2b997e5c"><div class="ttname"><a href="classSVF_1_1MemObj.html#ab9637ea9acd1f8ae4933b4ab2b997e5c">SVF::MemObj::setFieldInsensitive</a></div><div class="ttdeci">void setFieldInsensitive()</div><div class="ttdoc">Set the memory object to be field insensitive.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00441">SymbolTableInfo.cpp:441</a></div></div>
576
568
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a08399de593c073b6dd848a8d849dad27"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a08399de593c073b6dd848a8d849dad27">SVF::PointerAnalysis::dumpAllTypes</a></div><div class="ttdeci">void dumpAllTypes()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00236">PointerAnalysis.cpp:236</a></div></div>
577
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae6ea391ac44dffeb6899bb44323c5361"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">SVF::PointerAnalysis::isHeapMemObj</a></div><div class="ttdeci">bool isHeapMemObj(NodeID id) const</div><div class="ttdoc">Whether this object is heap or array.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00308">PointerAnalysis.h:308</a></div></div>
578
- <div class="ttc" id="aclassSVF_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#l00105">PointerAnalysis.h:105</a></div></div>
569
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ae6ea391ac44dffeb6899bb44323c5361"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">SVF::PointerAnalysis::isHeapMemObj</a></div><div class="ttdeci">bool isHeapMemObj(NodeID id) const</div><div class="ttdoc">Whether this object is heap or array.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00305">PointerAnalysis.h:305</a></div></div>
570
+ <div class="ttc" id="aclassSVF_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#l00104">PointerAnalysis.h:104</a></div></div>
579
571
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a011b8401f5ed5fdb6cd507053465a7a2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a011b8401f5ed5fdb6cd507053465a7a2">SVF::PointerAnalysis::getVFnsFromPts</a></div><div class="ttdeci">void getVFnsFromPts(const CallICFGNode *cs, const PointsTo &amp;target, VFunSet &amp;vfns)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00440">PointerAnalysis.cpp:440</a></div></div>
580
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a57fabf1408ada10028282deef0b23ec6"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a57fabf1408ada10028282deef0b23ec6">SVF::PointerAnalysis::VTableSet</a></div><div class="ttdeci">Set&lt; const SVFGlobalValue * &gt; VTableSet</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00108">PointerAnalysis.h:108</a></div></div>
581
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5d3c3094e263bf16a4f312a118c1bd36"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">SVF::PointerAnalysis::ptaImplTy</a></div><div class="ttdeci">PTAImplTy ptaImplTy</div><div class="ttdoc">PTA implementation type.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00148">PointerAnalysis.h:148</a></div></div>
582
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ad409cbf61271743394b9e5868f3fd197"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad409cbf61271743394b9e5868f3fd197">SVF::PointerAnalysis::dumpCPts</a></div><div class="ttdeci">virtual void dumpCPts()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00259">PointerAnalysis.h:259</a></div></div>
572
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a57fabf1408ada10028282deef0b23ec6"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a57fabf1408ada10028282deef0b23ec6">SVF::PointerAnalysis::VTableSet</a></div><div class="ttdeci">Set&lt; const SVFGlobalValue * &gt; VTableSet</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00107">PointerAnalysis.h:107</a></div></div>
573
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5d3c3094e263bf16a4f312a118c1bd36"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">SVF::PointerAnalysis::ptaImplTy</a></div><div class="ttdeci">PTAImplTy ptaImplTy</div><div class="ttdoc">PTA implementation type.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00147">PointerAnalysis.h:147</a></div></div>
574
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ad409cbf61271743394b9e5868f3fd197"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad409cbf61271743394b9e5868f3fd197">SVF::PointerAnalysis::dumpCPts</a></div><div class="ttdeci">virtual void dumpCPts()</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00256">PointerAnalysis.h:256</a></div></div>
583
575
  <div class="ttc" id="aclassSVF_1_1SVFIR_html_ae18425df0631aefca7dd4b799f6f524a"><div class="ttname"><a href="classSVF_1_1SVFIR.html#ae18425df0631aefca7dd4b799f6f524a">SVF::SVFIR::getGepObjVar</a></div><div class="ttdeci">NodeID getGepObjVar(const MemObj *obj, const APOffset &amp;ap)</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#l00422">SVFIR.cpp:422</a></div></div>
584
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a">SVF::PointerAnalysis::Steensgaard_WPA</a></div><div class="ttdeci">@ Steensgaard_WPA</div><div class="ttdoc">Steensgaard PTA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00071">PointerAnalysis.h:71</a></div></div>
585
- <div class="ttc" id="aclassSVF_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#l00258">PointerAnalysis.h:258</a></div></div>
586
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a13ce6b930a35877f17bffd4b89e22654"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654">SVF::PointerAnalysis::aliasTestMayAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestMayAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00113">PointerAnalysis.h:113</a></div></div>
576
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a">SVF::PointerAnalysis::Steensgaard_WPA</a></div><div class="ttdeci">@ Steensgaard_WPA</div><div class="ttdoc">Steensgaard PTA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00070">PointerAnalysis.h:70</a></div></div>
577
+ <div class="ttc" id="aclassSVF_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#l00255">PointerAnalysis.h:255</a></div></div>
578
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a13ce6b930a35877f17bffd4b89e22654"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654">SVF::PointerAnalysis::aliasTestMayAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestMayAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00112">PointerAnalysis.h:112</a></div></div>
587
579
  <div class="ttc" id="aclassSVF_1_1ICFG_html"><div class="ttname"><a href="classSVF_1_1ICFG.html">SVF::ICFG</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00047">ICFG.h:47</a></div></div>
588
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">SVF::PointerAnalysis::PTATY</a></div><div class="ttdeci">PTATY</div><div class="ttdoc">Pointer analysis type list.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00063">PointerAnalysis.h:63</a></div></div>
580
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">SVF::PointerAnalysis::PTATY</a></div><div class="ttdeci">PTATY</div><div class="ttdoc">Pointer analysis type list.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00062">PointerAnalysis.h:62</a></div></div>
589
581
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ade41f3562704d56c7490dcfc941b3437"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">SVF::PointerAnalysis::getVFnsFromCHA</a></div><div class="ttdeci">void getVFnsFromCHA(const CallICFGNode *cs, VFunSet &amp;vfns)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00431">PointerAnalysis.cpp:431</a></div></div>
590
582
  <div class="ttc" id="aclassSVF_1_1SVFIR_html"><div class="ttname"><a href="classSVF_1_1SVFIR.html">SVF::SVFIR</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00043">SVFIR.h:43</a></div></div>
591
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aec884481726cfaf19c4ab8ec8d9195b7"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7">SVF::PointerAnalysis::aliasTestMustAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestMustAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00119">PointerAnalysis.h:119</a></div></div>
592
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb">SVF::PointerAnalysis::CFLFICI_WPA</a></div><div class="ttdeci">@ CFLFICI_WPA</div><div class="ttdoc">Flow-, context-, insensitive CFL-reachability-based analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00078">PointerAnalysis.h:78</a></div></div>
583
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aec884481726cfaf19c4ab8ec8d9195b7"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7">SVF::PointerAnalysis::aliasTestMustAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestMustAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00118">PointerAnalysis.h:118</a></div></div>
584
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb">SVF::PointerAnalysis::CFLFICI_WPA</a></div><div class="ttdeci">@ CFLFICI_WPA</div><div class="ttdoc">Flow-, context-, insensitive CFL-reachability-based analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00077">PointerAnalysis.h:77</a></div></div>
593
585
  <div class="ttc" id="aclassSVF_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#l00477">SVFIR.cpp:477</a></div></div>
594
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a56368369bc37e37b13f19e5eb1890063"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">SVF::PointerAnalysis::containBlackHoleNode</a></div><div class="ttdeci">bool containBlackHoleNode(const PointsTo &amp;pts)</div><div class="ttdoc">Determine whether a points-to contains a black hole or constant node.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00292">PointerAnalysis.h:292</a></div></div>
586
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a56368369bc37e37b13f19e5eb1890063"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">SVF::PointerAnalysis::containBlackHoleNode</a></div><div class="ttdeci">bool containBlackHoleNode(const PointsTo &amp;pts)</div><div class="ttdoc">Determine whether a points-to contains a black hole or constant node.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00289">PointerAnalysis.h:289</a></div></div>
595
587
  <div class="ttc" id="aclassSVF_1_1PTACallGraphNode_html"><div class="ttname"><a href="classSVF_1_1PTACallGraphNode.html">SVF::PTACallGraphNode</a></div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00174">PTACallGraph.h:174</a></div></div>
596
588
  <div class="ttc" id="anamespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set&lt; NodeID &gt; NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00114">SVFType.h:114</a></div></div>
597
589
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a4aeca84393c5586eea7a480737daf17c"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4aeca84393c5586eea7a480737daf17c">SVF::PointerAnalysis::~PointerAnalysis</a></div><div class="ttdeci">virtual ~PointerAnalysis()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00083">PointerAnalysis.cpp:83</a></div></div>
598
- <div class="ttc" id="aclassSVF_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#l00371">PointerAnalysis.h:371</a></div></div>
590
+ <div class="ttc" id="aclassSVF_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#l00368">PointerAnalysis.h:368</a></div></div>
599
591
  <div class="ttc" id="aclassSVF_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#l00382">SVFIR.h:382</a></div></div>
600
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a45462312a746339fff8b990a093d9a1b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b">SVF::PointerAnalysis::isBlkObjOrConstantObj</a></div><div class="ttdeci">virtual bool isBlkObjOrConstantObj(NodeID ptd) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00300">PointerAnalysis.h:300</a></div></div>
592
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a45462312a746339fff8b990a093d9a1b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b">SVF::PointerAnalysis::isBlkObjOrConstantObj</a></div><div class="ttdeci">virtual bool isBlkObjOrConstantObj(NodeID ptd) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00297">PointerAnalysis.h:297</a></div></div>
601
593
  <div class="ttc" id="anamespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="svf-llvm_2tools_2MTA_2MTAResultValidator_8h_source.html#l00020">MTAResultValidator.h:20</a></div></div>
602
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ad95c842964e6ca46e51fb763fefec585"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">SVF::PointerAnalysis::CallSiteToFunPtrMap</a></div><div class="ttdeci">SVFIR::CallSiteToFunPtrMap CallSiteToFunPtrMap</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00104">PointerAnalysis.h:104</a></div></div>
594
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ad95c842964e6ca46e51fb763fefec585"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">SVF::PointerAnalysis::CallSiteToFunPtrMap</a></div><div class="ttdeci">SVFIR::CallSiteToFunPtrMap CallSiteToFunPtrMap</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00103">PointerAnalysis.h:103</a></div></div>
603
595
  <div class="ttc" id="aclassSVF_1_1MemObj_html_aeba6eeed4843a1a90cf1d4b7deb197af"><div class="ttname"><a href="classSVF_1_1MemObj.html#aeba6eeed4843a1a90cf1d4b7deb197af">SVF::MemObj::isArray</a></div><div class="ttdeci">bool isArray() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00476">SymbolTableInfo.cpp:476</a></div></div>
604
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a4880571f57542afc50da506dfe273183"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">SVF::PointerAnalysis::printStat</a></div><div class="ttdeci">bool printStat()</div><div class="ttdoc">Whether print statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00358">PointerAnalysis.h:358</a></div></div>
596
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a4880571f57542afc50da506dfe273183"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">SVF::PointerAnalysis::printStat</a></div><div class="ttdeci">bool printStat()</div><div class="ttdoc">Whether print statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00355">PointerAnalysis.h:355</a></div></div>
605
597
  <div class="ttc" id="aclassSVF_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#l00422">SVFIR.h:422</a></div></div>
606
598
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ad9af9655a13f3faeaf265ba370d1f280"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad9af9655a13f3faeaf265ba370d1f280">SVF::PointerAnalysis::getRevPts</a></div><div class="ttdeci">virtual const NodeSet &amp; getRevPts(NodeID nodeId)=0</div></div>
607
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aa7f15c74eb438be78fcc028534477478"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478">SVF::PointerAnalysis::VFunSet</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; VFunSet</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00109">PointerAnalysis.h:109</a></div></div>
608
- <div class="ttc" id="aclassSVF_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#l00156">PointerAnalysis.h:156</a></div></div>
609
- <div class="ttc" id="aclassSVF_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#l00419">PointerAnalysis.h:419</a></div></div>
599
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aa7f15c74eb438be78fcc028534477478"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478">SVF::PointerAnalysis::VFunSet</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; VFunSet</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00108">PointerAnalysis.h:108</a></div></div>
600
+ <div class="ttc" id="aclassSVF_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#l00155">PointerAnalysis.h:155</a></div></div>
601
+ <div class="ttc" id="aclassSVF_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#l00416">PointerAnalysis.h:416</a></div></div>
610
602
  <div class="ttc" id="aclassSVF_1_1SVFIR_html_a51bf00bfd1d32ea8a4a280cf99725d7d"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a51bf00bfd1d32ea8a4a280cf99725d7d">SVF::SVFIR::CallSiteToFunPtrMap</a></div><div class="ttdeci">OrderedMap&lt; const CallICFGNode *, NodeID &gt; CallSiteToFunPtrMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00055">SVFIR.h:55</a></div></div>
611
603
  <div class="ttc" id="aAbstractPointsToDS_8h_html"><div class="ttname"><a href="AbstractPointsToDS_8h.html">AbstractPointsToDS.h</a></div></div>
612
604
  <div class="ttc" id="aclassSVF_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#l00341">SVFIR.h:341</a></div></div>
613
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49">SVF::PointerAnalysis::Andersen_BASE</a></div><div class="ttdeci">@ Andersen_BASE</div><div class="ttdoc">Base Andersen PTA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00066">PointerAnalysis.h:66</a></div></div>
614
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc">SVF::PointerAnalysis::CFLFSCI_WPA</a></div><div class="ttdeci">@ CFLFSCI_WPA</div><div class="ttdoc">Flow-insensitive, context-sensitive CFL-reachability-based analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00079">PointerAnalysis.h:79</a></div></div>
605
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49">SVF::PointerAnalysis::Andersen_BASE</a></div><div class="ttdeci">@ Andersen_BASE</div><div class="ttdoc">Base Andersen PTA.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00065">PointerAnalysis.h:65</a></div></div>
606
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc">SVF::PointerAnalysis::CFLFSCI_WPA</a></div><div class="ttdeci">@ CFLFSCI_WPA</div><div class="ttdoc">Flow-insensitive, context-sensitive CFL-reachability-based analysis.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00078">PointerAnalysis.h:78</a></div></div>
615
607
  <div class="ttc" id="aclassSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00380">SymbolTableInfo.h:380</a></div></div>
616
608
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_ab982e6bbd99a2f9a0a3abbebeeb00dcc"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ab982e6bbd99a2f9a0a3abbebeeb00dcc">SVF::PointerAnalysis::validateExpectedFailureTests</a></div><div class="ttdeci">virtual void validateExpectedFailureTests(std::string fun)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00572">PointerAnalysis.cpp:572</a></div></div>
617
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aa725a0c9426e8615cbc078c88561f66a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aa725a0c9426e8615cbc078c88561f66a">SVF::PointerAnalysis::isInRecursion</a></div><div class="ttdeci">bool isInRecursion(const SVFFunction *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00410">PointerAnalysis.h:410</a></div></div>
618
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_af90d2ccb01402c5ca9d7a059f345c816"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#af90d2ccb01402c5ca9d7a059f345c816">SVF::PointerAnalysis::isFIObjNode</a></div><div class="ttdeci">bool isFIObjNode(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00325">PointerAnalysis.h:325</a></div></div>
609
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aa725a0c9426e8615cbc078c88561f66a"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aa725a0c9426e8615cbc078c88561f66a">SVF::PointerAnalysis::isInRecursion</a></div><div class="ttdeci">bool isInRecursion(const SVFFunction *fun) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00407">PointerAnalysis.h:407</a></div></div>
610
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_af90d2ccb01402c5ca9d7a059f345c816"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#af90d2ccb01402c5ca9d7a059f345c816">SVF::PointerAnalysis::isFIObjNode</a></div><div class="ttdeci">bool isFIObjNode(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00322">PointerAnalysis.h:322</a></div></div>
619
611
  <div class="ttc" id="aclassSVF_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#l00447">SVFIR.h:447</a></div></div>
620
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a651cc82379c2d18cc2f69f25b2ae08db"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db">SVF::PointerAnalysis::aliasTestFailMayAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestFailMayAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00121">PointerAnalysis.h:121</a></div></div>
612
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a651cc82379c2d18cc2f69f25b2ae08db"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db">SVF::PointerAnalysis::aliasTestFailMayAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestFailMayAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00120">PointerAnalysis.h:120</a></div></div>
621
613
  <div class="ttc" id="aclassSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00028">PointsTo.h:28</a></div></div>
622
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a9f1c599cb9f6e2ae83e29bb84ef6831c"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c">SVF::PointerAnalysis::getBaseObjVar</a></div><div class="ttdeci">NodeID getBaseObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00329">PointerAnalysis.h:329</a></div></div>
623
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00201">PointerAnalysis.h:201</a></div></div>
614
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a9f1c599cb9f6e2ae83e29bb84ef6831c"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c">SVF::PointerAnalysis::getBaseObjVar</a></div><div class="ttdeci">NodeID getBaseObjVar(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00326">PointerAnalysis.h:326</a></div></div>
615
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00198">PointerAnalysis.h:198</a></div></div>
624
616
  <div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00051">SVFType.h:51</a></div></div>
625
617
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a7accf4e4db4001716e53d98ce5217ac8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a7accf4e4db4001716e53d98ce5217ac8">SVF::PointerAnalysis::validateSuccessTests</a></div><div class="ttdeci">virtual void validateSuccessTests(std::string fun)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00504">PointerAnalysis.cpp:504</a></div></div>
626
618
  <div class="ttc" id="aCHG_8h_html"><div class="ttname"><a href="CHG_8h.html">CHG.h</a></div></div>
627
619
  <div class="ttc" id="aPTACallGraph_8h_html"><div class="ttname"><a href="PTACallGraph_8h.html">PTACallGraph.h</a></div></div>
628
- <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aefd4e9ea66da5ad84a45efead823eb22"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22">SVF::PointerAnalysis::aliasTestFailNoAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestFailNoAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00123">PointerAnalysis.h:123</a></div></div>
629
- <div class="ttc" id="aclassSVF_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#l00375">PointerAnalysis.h:375</a></div></div>
630
- <div class="ttc" id="aclassSVF_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#l00160">PointerAnalysis.h:160</a></div></div>
620
+ <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_aefd4e9ea66da5ad84a45efead823eb22"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22">SVF::PointerAnalysis::aliasTestFailNoAliasMangled</a></div><div class="ttdeci">static const std::string aliasTestFailNoAliasMangled</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00122">PointerAnalysis.h:122</a></div></div>
621
+ <div class="ttc" id="aclassSVF_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#l00372">PointerAnalysis.h:372</a></div></div>
631
622
  <!-- start footer part -->
632
623
  <hr class="footer"/><address class="footer"><small>
633
624
  Generated by &#160;<a href="http://www.doxygen.org/index.html">