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
@@ -265,6 +265,9 @@ Additional Inherited Members</h2></td></tr>
265
265
  <tr class="memitem:ac9d390c417df6f6af6b274618b87010d inherit pub_static_methods_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a> (bool mark=<a class="el" href="cJSON_8cpp.html#a65e9886d74aaee76545e83dd09011727">false</a>)</td></tr>
266
266
  <tr class="separator:ac9d390c417df6f6af6b274618b87010d inherit pub_static_methods_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2">&#160;</td></tr>
267
267
  <tr class="inherit_header pub_static_attribs_classSVF_1_1SVFStat"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_classSVF_1_1SVFStat')"><img src="closed.png" alt="-"/>&#160;Static Public Attributes inherited from <a class="el" href="classSVF_1_1SVFStat.html">SVF::SVFStat</a></td></tr>
268
+ <tr class="memitem:a218fc579a41983cad3f17f90e656ee72 inherit pub_static_attribs_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a218fc579a41983cad3f17f90e656ee72">printGeneralStats</a> = <a class="el" href="cJSON_8cpp.html#a930920b2bc42824a5c03be681830f4b2">true</a></td></tr>
269
+ <tr class="memdesc:a218fc579a41983cad3f17f90e656ee72 inherit pub_static_attribs_classSVF_1_1SVFStat"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespaceSVF.html" title="for isBitcode">SVF</a>'s general statistics are only printed once even if you run multiple anayses. <a href="classSVF_1_1SVFStat.html#a218fc579a41983cad3f17f90e656ee72">More...</a><br /></td></tr>
270
+ <tr class="separator:a218fc579a41983cad3f17f90e656ee72 inherit pub_static_attribs_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2">&#160;</td></tr>
268
271
  <tr class="memitem:aa4950ec26b66a085ad38ac154b789db5 inherit pub_static_attribs_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#aa4950ec26b66a085ad38ac154b789db5">timeOfBuildingLLVMModule</a> = 0</td></tr>
269
272
  <tr class="separator:aa4950ec26b66a085ad38ac154b789db5 inherit pub_static_attribs_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2">&#160;</td></tr>
270
273
  <tr class="memitem:ae89293bc063bdc74a988e9c37c70321e inherit pub_static_attribs_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#ae89293bc063bdc74a988e9c37c70321e">timeOfBuildingSymbolTable</a> = 0</td></tr>
@@ -452,22 +455,22 @@ Additional Inherited Members</h2></td></tr>
452
455
  </div><div class="memdoc">
453
456
  <p>Points-to size </p>
454
457
 
455
- <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00493">493</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
456
- <div class="fragment"><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;{</div>
457
- <div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#ac9897a09cad8a99169f2da2116807b1b">getPts</a>(pointer);</div>
458
- <div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ae2d4df7129385905775489f1389a9fa7">_NumOfAddrTakeVar</a> += pts.<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>();</div>
459
- <div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> ptsIt = pts.<a class="code" href="classSVF_1_1PointsTo.html#ad5b582d2672617806c61e6170d0b5a7e">begin</a>();</div>
460
- <div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> ptsEit = pts.<a class="code" href="classSVF_1_1PointsTo.html#a6e2ff63437d07a30cc6db35de032728a">end</a>();</div>
461
- <div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="keywordflow">for</span> (; ptsIt != ptsEit; ++ptsIt)</div>
462
- <div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; {</div>
463
- <div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptd = *ptsIt;</div>
464
- <div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; </div>
465
- <div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; cpts = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a808dc8a242f168174339d7ca3196bb58">getDFOutPtsSet</a>(svfg_node, ptd);</div>
466
- <div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a08bfa021eab91d647932aa790d300bbc">_AvgAddrTakenVarPtsSize</a> += cpts.<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>();</div>
467
- <div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keywordflow">if</span> (cpts.<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>() &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a7c88e2528a93511ba8dde4805cadcd30">_MaxAddrTakenVarPts</a>)</div>
468
- <div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a7c88e2528a93511ba8dde4805cadcd30">_MaxAddrTakenVarPts</a> = cpts.<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>();</div>
469
- <div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; }</div>
470
- <div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;}</div>
458
+ <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00492">492</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
459
+ <div class="fragment"><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;{</div>
460
+ <div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#ac9897a09cad8a99169f2da2116807b1b">getPts</a>(pointer);</div>
461
+ <div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ae2d4df7129385905775489f1389a9fa7">_NumOfAddrTakeVar</a> += pts.<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>();</div>
462
+ <div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> ptsIt = pts.<a class="code" href="classSVF_1_1PointsTo.html#ad5b582d2672617806c61e6170d0b5a7e">begin</a>();</div>
463
+ <div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> ptsEit = pts.<a class="code" href="classSVF_1_1PointsTo.html#a6e2ff63437d07a30cc6db35de032728a">end</a>();</div>
464
+ <div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">for</span> (; ptsIt != ptsEit; ++ptsIt)</div>
465
+ <div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; {</div>
466
+ <div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptd = *ptsIt;</div>
467
+ <div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; </div>
468
+ <div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; cpts = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a808dc8a242f168174339d7ca3196bb58">getDFOutPtsSet</a>(svfg_node, ptd);</div>
469
+ <div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a08bfa021eab91d647932aa790d300bbc">_AvgAddrTakenVarPtsSize</a> += cpts.<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>();</div>
470
+ <div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="keywordflow">if</span> (cpts.<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>() &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a7c88e2528a93511ba8dde4805cadcd30">_MaxAddrTakenVarPts</a>)</div>
471
+ <div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a7c88e2528a93511ba8dde4805cadcd30">_MaxAddrTakenVarPts</a> = cpts.<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>();</div>
472
+ <div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; }</div>
473
+ <div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160;}</div>
471
474
  </div><!-- fragment -->
472
475
  </div>
473
476
  </div>
@@ -746,9 +749,8 @@ Additional Inherited Members</h2></td></tr>
746
749
  <div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;AverageSCCSize&quot;</span>] = (<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a0ac955bf06261eec1c6bb78ec99652e3">numOfSCC</a> == 0) ? 0 :</div>
747
750
  <div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; ((<span class="keywordtype">double</span>)<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a9f3fe97202db8170fa9f47c5684bce75">numOfNodesInSCC</a> / <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a0ac955bf06261eec1c6bb78ec99652e3">numOfSCC</a>);</div>
748
751
  <div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; </div>
749
- <div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****Flow-Sensitive Pointer Analysis Statistics****\n&quot;</span>;</div>
750
- <div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a178fcefed6ffffc78bbe9b23e0e1babe">PTAStat::printStat</a>();</div>
751
- <div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;}</div>
752
+ <div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a178fcefed6ffffc78bbe9b23e0e1babe">PTAStat::printStat</a>(<span class="stringliteral">&quot;Flow-Sensitive Pointer Analysis Statistics&quot;</span>);</div>
753
+ <div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;}</div>
752
754
  </div><!-- fragment -->
753
755
  </div>
754
756
  </div>
@@ -776,19 +778,19 @@ Additional Inherited Members</h2></td></tr>
776
778
  </div><div class="memdoc">
777
779
  <p>Points-to size </p>
778
780
 
779
- <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00476">476</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
780
- <div class="fragment"><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;{</div>
781
- <div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; SVFG::SVFGNodeIDToNodeMapTy::const_iterator it = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>();</div>
782
- <div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; SVFG::SVFGNodeIDToNodeMapTy::const_iterator eit = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div>
783
- <div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordflow">for</span> (; it != eit; ++it)</div>
784
- <div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; {</div>
785
- <div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node = it-&gt;second;</div>
786
- <div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreVFGNode.html">StoreSVFGNode</a>* store = SVFUtil::dyn_cast&lt;StoreSVFGNode&gt;(node))</div>
787
- <div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; {</div>
788
- <div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a04466753c771238c6e1cc57964061dce">calculateAddrVarPts</a>(store-&gt;getPAGDstNodeID(), store);</div>
789
- <div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; }</div>
790
- <div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; }</div>
791
- <div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;}</div>
781
+ <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00475">475</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
782
+ <div class="fragment"><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;{</div>
783
+ <div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; SVFG::SVFGNodeIDToNodeMapTy::const_iterator it = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>();</div>
784
+ <div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; SVFG::SVFGNodeIDToNodeMapTy::const_iterator eit = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div>
785
+ <div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="keywordflow">for</span> (; it != eit; ++it)</div>
786
+ <div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; {</div>
787
+ <div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node = it-&gt;second;</div>
788
+ <div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreVFGNode.html">StoreSVFGNode</a>* store = SVFUtil::dyn_cast&lt;StoreSVFGNode&gt;(node))</div>
789
+ <div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; {</div>
790
+ <div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a04466753c771238c6e1cc57964061dce">calculateAddrVarPts</a>(store-&gt;getPAGDstNodeID(), store);</div>
791
+ <div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; }</div>
792
+ <div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; }</div>
793
+ <div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;}</div>
792
794
  </div><!-- fragment -->
793
795
  </div>
794
796
  </div>
@@ -827,117 +829,117 @@ Additional Inherited Members</h2></td></tr>
827
829
  </div><div class="memdoc">
828
830
  <p>points-to target number</p>
829
831
 
830
- <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00361">361</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
831
- <div class="fragment"><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;{</div>
832
- <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="comment">// Get number of nodes which have IN/OUT set</span></div>
833
- <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aa39c5d81cef922d7a0f98913dbf51fb0">_NumOfSVFGNodesHaveInOut</a>[inOrOut] = data.size();</div>
834
- <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; </div>
835
- <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> inOutPtsSize = 0;</div>
836
- <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; DFInOutMap::const_iterator it = data.begin();</div>
837
- <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; DFInOutMap::const_iterator eit = data.end();</div>
838
- <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">for</span> (; it != eit; ++it)</div>
839
- <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; {</div>
840
- <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>-&gt;<a class="code" href="classSVF_1_1SVFG.html#a7ace06b6c893b31f7dec2abe54e33e11">getSVFGNode</a>(it-&gt;first);</div>
841
- <div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; </div>
842
- <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="comment">// Count number of SVFG nodes have IN/OUT set.</span></div>
843
- <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;FormalINSVFGNode&gt;(node))</div>
844
- <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a2e9a786af3bce4b345d88ff05cd71f0f">_NumOfFormalInSVFGNodesHaveInOut</a>[inOrOut]++;</div>
845
- <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;FormalOUTSVFGNode&gt;(node))</div>
846
- <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a1cfd15cd46178718ea459f79738e0b69">_NumOfFormalOutSVFGNodesHaveInOut</a>[inOrOut]++;</div>
847
- <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;ActualINSVFGNode&gt;(node))</div>
848
- <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a0530fa56a9cea05d25ee350e9db9ed2a">_NumOfActualInSVFGNodesHaveInOut</a>[inOrOut]++;</div>
849
- <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;ActualOUTSVFGNode&gt;(node))</div>
850
- <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a3ac011649b3c0ced46283265ba88dd0e">_NumOfActualOutSVFGNodesHaveInOut</a>[inOrOut]++;</div>
851
- <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;LoadSVFGNode&gt;(node))</div>
852
- <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6fdf88fe931ead9a9b8f353c547c4ae">_NumOfLoadSVFGNodesHaveInOut</a>[inOrOut]++;</div>
853
- <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;StoreSVFGNode&gt;(node))</div>
854
- <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ae0db364bf6657c770deabbe75d901a46">_NumOfStoreSVFGNodesHaveInOut</a>[inOrOut]++;</div>
855
- <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;MSSAPHISVFGNode&gt;(node))</div>
856
- <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a60741c38448e909388942a5e9f5b5ef4">_NumOfMSSAPhiSVFGNodesHaveInOut</a>[inOrOut]++;</div>
857
- <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">else</span></div>
858
- <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;unexpected node have IN/OUT set&quot;</span>);</div>
859
- <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; </div>
860
- <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="comment">/*-----------------------------------------------------*/</span></div>
861
- <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; </div>
862
- <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="comment">// Count SVFIR nodes and their points-to set size.</span></div>
863
- <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a1b605e86f33e79f7d7cd88dc54f2c19e">PtsMap</a>&amp; cptsMap = it-&gt;second;</div>
864
- <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; PtsMap::const_iterator ptsIt = cptsMap.begin();</div>
865
- <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; PtsMap::const_iterator ptsEit = cptsMap.end();</div>
866
- <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">for</span> (; ptsIt != ptsEit; ++ptsIt)</div>
867
- <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; {</div>
868
- <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">if</span> (ptsIt-&gt;second.empty())</div>
869
- <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; {</div>
870
- <div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a2162dffeb03e84daca52d6d8429b8529">_NumOfVarHaveEmptyINOUTPts</a>[inOrOut]++;</div>
871
- <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">continue</span>;</div>
872
- <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; }</div>
873
- <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; </div>
874
- <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> ptsNum = ptsIt-&gt;second.count(); </div>
875
- <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; </div>
876
- <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="comment">// Only node with non-empty points-to set are counted.</span></div>
877
- <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[inOrOut]++;</div>
878
- <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; </div>
879
- <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;FormalINSVFGNode&gt;(node))</div>
880
- <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#acebccfa66669033af9f9d4b3d021ec1a">_NumOfVarHaveINOUTPtsInFormalIn</a>[inOrOut]++;</div>
881
- <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;FormalOUTSVFGNode&gt;(node))</div>
882
- <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a0f9098bb73b06ba963bdce8ea26f0fa3">_NumOfVarHaveINOUTPtsInFormalOut</a>[inOrOut]++;</div>
883
- <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;ActualINSVFGNode&gt;(node))</div>
884
- <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a505057e9b8962359c9461395fd7ed138">_NumOfVarHaveINOUTPtsInActualIn</a>[inOrOut]++;</div>
885
- <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;ActualOUTSVFGNode&gt;(node))</div>
886
- <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#abeef6e8ba26d73d9e981a23d9f96e4d7">_NumOfVarHaveINOUTPtsInActualOut</a>[inOrOut]++;</div>
887
- <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;LoadSVFGNode&gt;(node))</div>
888
- <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aa754517cc9b5faeea010e336027c0ab4">_NumOfVarHaveINOUTPtsInLoad</a>[inOrOut]++;</div>
889
- <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;StoreSVFGNode&gt;(node))</div>
890
- <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a21f2c005bf927c0c23772172c08402bf">_NumOfVarHaveINOUTPtsInStore</a>[inOrOut]++;</div>
891
- <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;MSSAPHISVFGNode&gt;(node))</div>
892
- <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a90f1c6072a153c856765b24bbcbfaeef">_NumOfVarHaveINOUTPtsInMSSAPhi</a>[inOrOut]++;</div>
893
- <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">else</span></div>
894
- <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;unexpected node have IN/OUT set&quot;</span>);</div>
895
- <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; </div>
896
- <div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; inOutPtsSize += ptsNum;</div>
897
- <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; </div>
898
- <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordflow">if</span> (ptsNum &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab3e56ed16ce45d35c8f35f1fc1248c36">_MaxInOutPtsSize</a>[inOrOut])</div>
899
- <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab3e56ed16ce45d35c8f35f1fc1248c36">_MaxInOutPtsSize</a>[inOrOut] = ptsNum;</div>
900
- <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; </div>
901
- <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="keywordflow">if</span> (ptsNum &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">_MaxPtsSize</a>) <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">_MaxPtsSize</a> = ptsNum;</div>
902
- <div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; }</div>
903
- <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</div>
904
- <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; </div>
905
- <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[inOrOut] != 0)</div>
906
- <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af45e08caf715cca450390ffc2fddb049">_AvgInOutPtsSize</a>[inOrOut] = (double)inOutPtsSize / <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[inOrOut];</div>
907
- <div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; </div>
908
- <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8b5bfc9c3cbf9451603860789640246a">_TotalPtsSize</a> += inOutPtsSize;</div>
909
- <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; </div>
910
- <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="comment">// How many IN/OUT PTSs could we have *potentially* had?</span></div>
911
- <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="comment">// l&#39;-o-&gt;l, l&#39;&#39;-o-&gt;l, ..., means there is a possibility of 1 IN PTS.</span></div>
912
- <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="comment">// *p = q &amp;&amp; { o } in pts_ander(p) means there is a possibility of 1 OUT PTS.</span></div>
913
- <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="comment">// For OUTs at stores, we must also account for WU/SUs.</span></div>
914
- <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a> *svfg = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>;</div>
915
- <div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1VFG.html#a225a91c04afac6a8fe198e9860890a52">SVFG::const_iterator</a> it = svfg-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(); it != svfg-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); ++it)</div>
916
- <div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; {</div>
917
- <div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a> *sn = it-&gt;second;</div>
918
- <div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; </div>
919
- <div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="comment">// Unique objects coming into s.</span></div>
920
- <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a> incomingObjects;</div>
921
- <div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a> *e : sn-&gt;<a class="code" href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">getInEdges</a>())</div>
922
- <div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; {</div>
923
- <div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1IndirectSVFGEdge.html">IndirectSVFGEdge</a> *ie = SVFUtil::dyn_cast&lt;IndirectSVFGEdge&gt;(e);</div>
924
- <div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">if</span> (!ie) <span class="keywordflow">continue</span>;</div>
925
- <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> o : ie-&gt;<a class="code" href="classSVF_1_1IndirectSVFGEdge.html#a30aca718d25924f1babdf348bb0ace71">getPointsTo</a>()) incomingObjects.<a class="code" href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">set</a>(o);</div>
926
- <div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; }</div>
927
- <div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; </div>
928
- <div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a08ea2c3d891337992291123a1bb4da97">_PotentialNumOfVarHaveINOUTPts</a>[<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ad0b57a5d90c72b67337a68c04ae34739">IN</a>] += incomingObjects.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>();</div>
929
- <div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; </div>
930
- <div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreVFGNode.html">StoreSVFGNode</a> *store = SVFUtil::dyn_cast&lt;StoreSVFGNode&gt;(sn))</div>
931
- <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; {</div>
932
- <div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a> = store-&gt;getPAGDstNodeID();</div>
933
- <div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="comment">// Reuse incomingObjects; what&#39;s already in there will be propagated forwarded</span></div>
934
- <div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="comment">// as a WU/SU, and what&#39;s not (first defined at the store), will be added.</span></div>
935
- <div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> o : <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a5cfee013a1a5821ef0c449842dd8690d">ander</a>-&gt;<a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(<a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a>)) incomingObjects.<a class="code" href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">set</a>(o);</div>
936
- <div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; </div>
937
- <div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a08ea2c3d891337992291123a1bb4da97">_PotentialNumOfVarHaveINOUTPts</a>[<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ac018f116c78ed5e314b52e5d743f3fa5">OUT</a>] += incomingObjects.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>();</div>
938
- <div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; }</div>
939
- <div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; }</div>
940
- <div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;}</div>
832
+ <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00360">360</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
833
+ <div class="fragment"><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;{</div>
834
+ <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="comment">// Get number of nodes which have IN/OUT set</span></div>
835
+ <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aa39c5d81cef922d7a0f98913dbf51fb0">_NumOfSVFGNodesHaveInOut</a>[inOrOut] = data.size();</div>
836
+ <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; </div>
837
+ <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> inOutPtsSize = 0;</div>
838
+ <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; DFInOutMap::const_iterator it = data.begin();</div>
839
+ <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; DFInOutMap::const_iterator eit = data.end();</div>
840
+ <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">for</span> (; it != eit; ++it)</div>
841
+ <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; {</div>
842
+ <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>-&gt;<a class="code" href="classSVF_1_1SVFG.html#a7ace06b6c893b31f7dec2abe54e33e11">getSVFGNode</a>(it-&gt;first);</div>
843
+ <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; </div>
844
+ <div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="comment">// Count number of SVFG nodes have IN/OUT set.</span></div>
845
+ <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;FormalINSVFGNode&gt;(node))</div>
846
+ <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a2e9a786af3bce4b345d88ff05cd71f0f">_NumOfFormalInSVFGNodesHaveInOut</a>[inOrOut]++;</div>
847
+ <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;FormalOUTSVFGNode&gt;(node))</div>
848
+ <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a1cfd15cd46178718ea459f79738e0b69">_NumOfFormalOutSVFGNodesHaveInOut</a>[inOrOut]++;</div>
849
+ <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;ActualINSVFGNode&gt;(node))</div>
850
+ <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a0530fa56a9cea05d25ee350e9db9ed2a">_NumOfActualInSVFGNodesHaveInOut</a>[inOrOut]++;</div>
851
+ <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;ActualOUTSVFGNode&gt;(node))</div>
852
+ <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a3ac011649b3c0ced46283265ba88dd0e">_NumOfActualOutSVFGNodesHaveInOut</a>[inOrOut]++;</div>
853
+ <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;LoadSVFGNode&gt;(node))</div>
854
+ <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6fdf88fe931ead9a9b8f353c547c4ae">_NumOfLoadSVFGNodesHaveInOut</a>[inOrOut]++;</div>
855
+ <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;StoreSVFGNode&gt;(node))</div>
856
+ <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ae0db364bf6657c770deabbe75d901a46">_NumOfStoreSVFGNodesHaveInOut</a>[inOrOut]++;</div>
857
+ <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;MSSAPHISVFGNode&gt;(node))</div>
858
+ <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a60741c38448e909388942a5e9f5b5ef4">_NumOfMSSAPhiSVFGNodesHaveInOut</a>[inOrOut]++;</div>
859
+ <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">else</span></div>
860
+ <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;unexpected node have IN/OUT set&quot;</span>);</div>
861
+ <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; </div>
862
+ <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="comment">/*-----------------------------------------------------*/</span></div>
863
+ <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; </div>
864
+ <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="comment">// Count SVFIR nodes and their points-to set size.</span></div>
865
+ <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a1b605e86f33e79f7d7cd88dc54f2c19e">PtsMap</a>&amp; cptsMap = it-&gt;second;</div>
866
+ <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; PtsMap::const_iterator ptsIt = cptsMap.begin();</div>
867
+ <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; PtsMap::const_iterator ptsEit = cptsMap.end();</div>
868
+ <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keywordflow">for</span> (; ptsIt != ptsEit; ++ptsIt)</div>
869
+ <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; {</div>
870
+ <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">if</span> (ptsIt-&gt;second.empty())</div>
871
+ <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; {</div>
872
+ <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a2162dffeb03e84daca52d6d8429b8529">_NumOfVarHaveEmptyINOUTPts</a>[inOrOut]++;</div>
873
+ <div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">continue</span>;</div>
874
+ <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; }</div>
875
+ <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; </div>
876
+ <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> ptsNum = ptsIt-&gt;second.count(); </div>
877
+ <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; </div>
878
+ <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="comment">// Only node with non-empty points-to set are counted.</span></div>
879
+ <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[inOrOut]++;</div>
880
+ <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; </div>
881
+ <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;FormalINSVFGNode&gt;(node))</div>
882
+ <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#acebccfa66669033af9f9d4b3d021ec1a">_NumOfVarHaveINOUTPtsInFormalIn</a>[inOrOut]++;</div>
883
+ <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;FormalOUTSVFGNode&gt;(node))</div>
884
+ <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a0f9098bb73b06ba963bdce8ea26f0fa3">_NumOfVarHaveINOUTPtsInFormalOut</a>[inOrOut]++;</div>
885
+ <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;ActualINSVFGNode&gt;(node))</div>
886
+ <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a505057e9b8962359c9461395fd7ed138">_NumOfVarHaveINOUTPtsInActualIn</a>[inOrOut]++;</div>
887
+ <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;ActualOUTSVFGNode&gt;(node))</div>
888
+ <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#abeef6e8ba26d73d9e981a23d9f96e4d7">_NumOfVarHaveINOUTPtsInActualOut</a>[inOrOut]++;</div>
889
+ <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;LoadSVFGNode&gt;(node))</div>
890
+ <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aa754517cc9b5faeea010e336027c0ab4">_NumOfVarHaveINOUTPtsInLoad</a>[inOrOut]++;</div>
891
+ <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;StoreSVFGNode&gt;(node))</div>
892
+ <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a21f2c005bf927c0c23772172c08402bf">_NumOfVarHaveINOUTPtsInStore</a>[inOrOut]++;</div>
893
+ <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;MSSAPHISVFGNode&gt;(node))</div>
894
+ <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a90f1c6072a153c856765b24bbcbfaeef">_NumOfVarHaveINOUTPtsInMSSAPhi</a>[inOrOut]++;</div>
895
+ <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">else</span></div>
896
+ <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;unexpected node have IN/OUT set&quot;</span>);</div>
897
+ <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; </div>
898
+ <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; inOutPtsSize += ptsNum;</div>
899
+ <div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; </div>
900
+ <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">if</span> (ptsNum &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab3e56ed16ce45d35c8f35f1fc1248c36">_MaxInOutPtsSize</a>[inOrOut])</div>
901
+ <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab3e56ed16ce45d35c8f35f1fc1248c36">_MaxInOutPtsSize</a>[inOrOut] = ptsNum;</div>
902
+ <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; </div>
903
+ <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">if</span> (ptsNum &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">_MaxPtsSize</a>) <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">_MaxPtsSize</a> = ptsNum;</div>
904
+ <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; }</div>
905
+ <div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; }</div>
906
+ <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; </div>
907
+ <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[inOrOut] != 0)</div>
908
+ <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af45e08caf715cca450390ffc2fddb049">_AvgInOutPtsSize</a>[inOrOut] = (double)inOutPtsSize / <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[inOrOut];</div>
909
+ <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; </div>
910
+ <div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8b5bfc9c3cbf9451603860789640246a">_TotalPtsSize</a> += inOutPtsSize;</div>
911
+ <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; </div>
912
+ <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="comment">// How many IN/OUT PTSs could we have *potentially* had?</span></div>
913
+ <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="comment">// l&#39;-o-&gt;l, l&#39;&#39;-o-&gt;l, ..., means there is a possibility of 1 IN PTS.</span></div>
914
+ <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="comment">// *p = q &amp;&amp; { o } in pts_ander(p) means there is a possibility of 1 OUT PTS.</span></div>
915
+ <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="comment">// For OUTs at stores, we must also account for WU/SUs.</span></div>
916
+ <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFG.html">SVFG</a> *svfg = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">svfg</a>;</div>
917
+ <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1VFG.html#a225a91c04afac6a8fe198e9860890a52">SVFG::const_iterator</a> it = svfg-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(); it != svfg-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); ++it)</div>
918
+ <div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; {</div>
919
+ <div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a> *sn = it-&gt;second;</div>
920
+ <div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; </div>
921
+ <div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="comment">// Unique objects coming into s.</span></div>
922
+ <div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a> incomingObjects;</div>
923
+ <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a> *e : sn-&gt;<a class="code" href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">getInEdges</a>())</div>
924
+ <div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; {</div>
925
+ <div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1IndirectSVFGEdge.html">IndirectSVFGEdge</a> *ie = SVFUtil::dyn_cast&lt;IndirectSVFGEdge&gt;(e);</div>
926
+ <div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">if</span> (!ie) <span class="keywordflow">continue</span>;</div>
927
+ <div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> o : ie-&gt;<a class="code" href="classSVF_1_1IndirectSVFGEdge.html#a30aca718d25924f1babdf348bb0ace71">getPointsTo</a>()) incomingObjects.<a class="code" href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">set</a>(o);</div>
928
+ <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; }</div>
929
+ <div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; </div>
930
+ <div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a08ea2c3d891337992291123a1bb4da97">_PotentialNumOfVarHaveINOUTPts</a>[<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ad0b57a5d90c72b67337a68c04ae34739">IN</a>] += incomingObjects.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>();</div>
931
+ <div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; </div>
932
+ <div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreVFGNode.html">StoreSVFGNode</a> *store = SVFUtil::dyn_cast&lt;StoreSVFGNode&gt;(sn))</div>
933
+ <div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; {</div>
934
+ <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a> = store-&gt;getPAGDstNodeID();</div>
935
+ <div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="comment">// Reuse incomingObjects; what&#39;s already in there will be propagated forwarded</span></div>
936
+ <div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="comment">// as a WU/SU, and what&#39;s not (first defined at the store), will be added.</span></div>
937
+ <div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> o : <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a5cfee013a1a5821ef0c449842dd8690d">ander</a>-&gt;<a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(<a class="code" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a>)) incomingObjects.<a class="code" href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">set</a>(o);</div>
938
+ <div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; </div>
939
+ <div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a08ea2c3d891337992291123a1bb4da97">_PotentialNumOfVarHaveINOUTPts</a>[<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ac018f116c78ed5e314b52e5d743f3fa5">OUT</a>] += incomingObjects.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>();</div>
940
+ <div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; }</div>
941
+ <div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; }</div>
942
+ <div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;}</div>
941
943
  </div><!-- fragment -->
942
944
  </div>
943
945
  </div>
@@ -965,52 +967,52 @@ Additional Inherited Members</h2></td></tr>
965
967
  </div><div class="memdoc">
966
968
  <p>TODO: change the condition here to fetch the points-to set</p>
967
969
 
968
- <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00271">271</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
969
- <div class="fragment"><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;{</div>
970
- <div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aea1cb2baea2f3c4d2ef62656a56bd077">_NumOfNullPtr</a> = 0;</div>
971
- <div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> iter = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(), eiter = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div>
972
- <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; iter != eiter; ++iter)</div>
973
- <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; {</div>
974
- <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> pagNodeId = iter-&gt;first;</div>
975
- <div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* pagNode = iter-&gt;second;</div>
976
- <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <a class="code" href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVFStmt::SVFStmtSetTy</a>&amp; inComingStore = pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#a76964ef7d4842a469d7720881499d8a6">getIncomingEdges</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">SVFStmt::Store</a>);</div>
977
- <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVFStmt::SVFStmtSetTy</a>&amp; outGoingLoad = pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#a927733580b47be5ffcfced44ba9fd6c3">getOutgoingEdges</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a62ac8480c43fcc657c631ec0003b15d5">SVFStmt::Load</a>);</div>
978
- <div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">if</span> (inComingStore.empty()==<span class="keyword">false</span> || outGoingLoad.empty()==<span class="keyword">false</span>)</div>
979
- <div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; {</div>
980
- <div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#ac9897a09cad8a99169f2da2116807b1b">getPts</a>(pagNodeId);</div>
981
- <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">containBlackHoleNode</a>(pts))</div>
982
- <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; {</div>
983
- <div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a767a935ec5bacd97f4fa79a05c165cc2">_NumOfConstantPtr</a>++;</div>
984
- <div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; }</div>
985
- <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd">containConstantNode</a>(pts))</div>
986
- <div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; {</div>
987
- <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a74ab9e235e08e4840223ddf0599a9da7">_NumOfBlackholePtr</a>++;</div>
988
- <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div>
989
- <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">if</span>(pts.<a class="code" href="classSVF_1_1PointsTo.html#a13746982a11d0cab57e5919d53bfbec8">empty</a>())</div>
990
- <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; {</div>
991
- <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div>
992
- <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; std::stringstream rawstr(str);</div>
993
- <div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">if</span> (!SVFUtil::isa&lt;DummyValVar&gt;(pagNode) &amp;&amp; !SVFUtil::isa&lt;DummyObjVar&gt;(pagNode))</div>
994
- <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; {</div>
995
- <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="comment">// if a pointer is in dead function, we do not care</span></div>
996
- <div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">if</span>(pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">getValue</a>()-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a3a4b04027aa67278e7b1bb1ef88cf2e6">ptrInUncalledFunction</a>() == <span class="keyword">false</span>)</div>
997
- <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; {</div>
998
- <div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aea1cb2baea2f3c4d2ef62656a56bd077">_NumOfNullPtr</a>++;</div>
999
- <div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;##Null Pointer : (NodeID &quot;</span> &lt;&lt; pagNode-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>()</div>
1000
- <div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; &lt;&lt; <span class="stringliteral">&quot;) PtrName:&quot;</span> &lt;&lt; pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">getValue</a>()-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2401b022638769f59f86ab424a189b6e">getName</a>();</div>
1001
- <div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#ab2e0196e0ce547ab4a483cc6d2646b24">writeWrnMsg</a>(rawstr.str());</div>
1002
- <div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; }</div>
1003
- <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div>
1004
- <div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keywordflow">else</span></div>
1005
- <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; {</div>
1006
- <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aea1cb2baea2f3c4d2ef62656a56bd077">_NumOfNullPtr</a>++;</div>
1007
- <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;##Null Pointer : (NodeID &quot;</span> &lt;&lt; pagNode-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div>
1008
- <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#ab2e0196e0ce547ab4a483cc6d2646b24">writeWrnMsg</a>(rawstr.str());</div>
1009
- <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; }</div>
1010
- <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; }</div>
1011
- <div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; }</div>
1012
- <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; }</div>
1013
- <div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;}</div>
970
+ <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00270">270</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
971
+ <div class="fragment"><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;{</div>
972
+ <div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aea1cb2baea2f3c4d2ef62656a56bd077">_NumOfNullPtr</a> = 0;</div>
973
+ <div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> iter = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(), eiter = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div>
974
+ <div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; iter != eiter; ++iter)</div>
975
+ <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; {</div>
976
+ <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> pagNodeId = iter-&gt;first;</div>
977
+ <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* pagNode = iter-&gt;second;</div>
978
+ <div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <a class="code" href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVFStmt::SVFStmtSetTy</a>&amp; inComingStore = pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#a76964ef7d4842a469d7720881499d8a6">getIncomingEdges</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">SVFStmt::Store</a>);</div>
979
+ <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <a class="code" href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVFStmt::SVFStmtSetTy</a>&amp; outGoingLoad = pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#a927733580b47be5ffcfced44ba9fd6c3">getOutgoingEdges</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a62ac8480c43fcc657c631ec0003b15d5">SVFStmt::Load</a>);</div>
980
+ <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">if</span> (inComingStore.empty()==<span class="keyword">false</span> || outGoingLoad.empty()==<span class="keyword">false</span>)</div>
981
+ <div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; {</div>
982
+ <div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#ac9897a09cad8a99169f2da2116807b1b">getPts</a>(pagNodeId);</div>
983
+ <div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">containBlackHoleNode</a>(pts))</div>
984
+ <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; {</div>
985
+ <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a767a935ec5bacd97f4fa79a05c165cc2">_NumOfConstantPtr</a>++;</div>
986
+ <div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; }</div>
987
+ <div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd">containConstantNode</a>(pts))</div>
988
+ <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; {</div>
989
+ <div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a74ab9e235e08e4840223ddf0599a9da7">_NumOfBlackholePtr</a>++;</div>
990
+ <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; }</div>
991
+ <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">if</span>(pts.<a class="code" href="classSVF_1_1PointsTo.html#a13746982a11d0cab57e5919d53bfbec8">empty</a>())</div>
992
+ <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; {</div>
993
+ <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str;</div>
994
+ <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; std::stringstream rawstr(str);</div>
995
+ <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">if</span> (!SVFUtil::isa&lt;DummyValVar&gt;(pagNode) &amp;&amp; !SVFUtil::isa&lt;DummyObjVar&gt;(pagNode))</div>
996
+ <div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; {</div>
997
+ <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="comment">// if a pointer is in dead function, we do not care</span></div>
998
+ <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">if</span>(pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">getValue</a>()-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a3a4b04027aa67278e7b1bb1ef88cf2e6">ptrInUncalledFunction</a>() == <span class="keyword">false</span>)</div>
999
+ <div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; {</div>
1000
+ <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aea1cb2baea2f3c4d2ef62656a56bd077">_NumOfNullPtr</a>++;</div>
1001
+ <div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;##Null Pointer : (NodeID &quot;</span> &lt;&lt; pagNode-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>()</div>
1002
+ <div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; &lt;&lt; <span class="stringliteral">&quot;) PtrName:&quot;</span> &lt;&lt; pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">getValue</a>()-&gt;<a class="code" href="classSVF_1_1SVFValue.html#a2401b022638769f59f86ab424a189b6e">getName</a>();</div>
1003
+ <div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#ab2e0196e0ce547ab4a483cc6d2646b24">writeWrnMsg</a>(rawstr.str());</div>
1004
+ <div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; }</div>
1005
+ <div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; }</div>
1006
+ <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">else</span></div>
1007
+ <div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; {</div>
1008
+ <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aea1cb2baea2f3c4d2ef62656a56bd077">_NumOfNullPtr</a>++;</div>
1009
+ <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; rawstr &lt;&lt; <span class="stringliteral">&quot;##Null Pointer : (NodeID &quot;</span> &lt;&lt; pagNode-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div>
1010
+ <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#ab2e0196e0ce547ab4a483cc6d2646b24">writeWrnMsg</a>(rawstr.str());</div>
1011
+ <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div>
1012
+ <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; }</div>
1013
+ <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; }</div>
1014
+ <div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; }</div>
1015
+ <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;}</div>
1014
1016
  </div><!-- fragment -->
1015
1017
  </div>
1016
1018
  </div>
@@ -1039,43 +1041,43 @@ Additional Inherited Members</h2></td></tr>
1039
1041
  <p>Points-to size </p>
1040
1042
  <p>get points-to set size information for top-level pointers.</p>
1041
1043
 
1042
- <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00322">322</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
1043
- <div class="fragment"><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;{</div>
1044
- <div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="comment">// TODO: needs to be made to work for persistent.</span></div>
1045
- <div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;FlowSensitive::MutDFPTDataTy&gt;(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#ae94cea78b71fb75837ee2a17b5ed0e81">getPTDataTy</a>()))</div>
1046
- <div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; {</div>
1047
- <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="comment">// stat of IN set</span></div>
1048
- <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8ae7448f6210b6c759a33e6fc8a8cee8">statInOutPtsSize</a>(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a9717517387c14c2e64c7ae3c3149bb57">getDFInputMap</a>(), <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ad0b57a5d90c72b67337a68c04ae34739">IN</a>);</div>
1049
- <div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="comment">// stat of OUT set</span></div>
1050
- <div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8ae7448f6210b6c759a33e6fc8a8cee8">statInOutPtsSize</a>(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a661c4c1d5902c924060cc81219591d6f">getDFOutputMap</a>(), <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ac018f116c78ed5e314b52e5d743f3fa5">OUT</a>);</div>
1051
- <div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; }</div>
1052
- <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; </div>
1053
- <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> totalValidTopLvlPointers = 0;</div>
1054
- <div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> topTopLvlPtsSize = 0;</div>
1055
- <div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> iter = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(), eiter = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div>
1056
- <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; iter != eiter; ++iter)</div>
1057
- <div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; {</div>
1058
- <div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node = iter-&gt;first;</div>
1059
- <div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(iter-&gt;second) == <span class="keyword">false</span>)</div>
1060
- <div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">continue</span>;</div>
1061
- <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> size = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#ac9897a09cad8a99169f2da2116807b1b">getPts</a>(node).<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>();</div>
1062
- <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; </div>
1063
- <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; totalValidTopLvlPointers++;</div>
1064
- <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; topTopLvlPtsSize+=size;</div>
1065
- <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; </div>
1066
- <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">if</span>(size &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">_MaxPtsSize</a>) <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">_MaxPtsSize</a> = size;</div>
1067
- <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; </div>
1068
- <div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">if</span> (size &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aecf324702d542f824e8b7a4d9827f557">_MaxTopLvlPtsSize</a>) <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aecf324702d542f824e8b7a4d9827f557">_MaxTopLvlPtsSize</a> = size;</div>
1069
- <div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; }</div>
1070
- <div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; </div>
1071
- <div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">if</span> (totalValidTopLvlPointers != 0)</div>
1072
- <div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a31235f25af7970142ef235681d2a447c">_AvgTopLvlPtsSize</a> = (double)topTopLvlPtsSize/totalValidTopLvlPointers;</div>
1073
- <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; </div>
1074
- <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8b5bfc9c3cbf9451603860789640246a">_TotalPtsSize</a> += topTopLvlPtsSize;</div>
1075
- <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> totalPointer = totalValidTopLvlPointers + <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ad0b57a5d90c72b67337a68c04ae34739">IN</a>] + <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ac018f116c78ed5e314b52e5d743f3fa5">OUT</a>];</div>
1076
- <div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">if</span> (totalPointer != 0)</div>
1077
- <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a07adfab66dd7ed22993e59ad3bf74946">_AvgPtsSize</a> = (double) <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8b5bfc9c3cbf9451603860789640246a">_TotalPtsSize</a> / totalPointer;</div>
1078
- <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;}</div>
1044
+ <p class="definition">Definition at line <a class="el" href="FlowSensitiveStat_8cpp_source.html#l00321">321</a> of file <a class="el" href="FlowSensitiveStat_8cpp_source.html">FlowSensitiveStat.cpp</a>.</p>
1045
+ <div class="fragment"><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;{</div>
1046
+ <div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="comment">// TODO: needs to be made to work for persistent.</span></div>
1047
+ <div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;FlowSensitive::MutDFPTDataTy&gt;(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#ae94cea78b71fb75837ee2a17b5ed0e81">getPTDataTy</a>()))</div>
1048
+ <div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; {</div>
1049
+ <div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="comment">// stat of IN set</span></div>
1050
+ <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8ae7448f6210b6c759a33e6fc8a8cee8">statInOutPtsSize</a>(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a9717517387c14c2e64c7ae3c3149bb57">getDFInputMap</a>(), <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ad0b57a5d90c72b67337a68c04ae34739">IN</a>);</div>
1051
+ <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="comment">// stat of OUT set</span></div>
1052
+ <div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8ae7448f6210b6c759a33e6fc8a8cee8">statInOutPtsSize</a>(<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1FlowSensitive.html#a661c4c1d5902c924060cc81219591d6f">getDFOutputMap</a>(), <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ac018f116c78ed5e314b52e5d743f3fa5">OUT</a>);</div>
1053
+ <div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; }</div>
1054
+ <div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; </div>
1055
+ <div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> totalValidTopLvlPointers = 0;</div>
1056
+ <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> topTopLvlPtsSize = 0;</div>
1057
+ <div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> iter = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(), eiter = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div>
1058
+ <div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; iter != eiter; ++iter)</div>
1059
+ <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; {</div>
1060
+ <div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node = iter-&gt;first;</div>
1061
+ <div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a>()-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">isValidTopLevelPtr</a>(iter-&gt;second) == <span class="keyword">false</span>)</div>
1062
+ <div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">continue</span>;</div>
1063
+ <div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> size = <a class="code" href="classSVF_1_1FlowSensitiveStat.html#af7e04f73ee17647c52e571cadef8729f">fspta</a>-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#ac9897a09cad8a99169f2da2116807b1b">getPts</a>(node).<a class="code" href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">count</a>();</div>
1064
+ <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; </div>
1065
+ <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; totalValidTopLvlPointers++;</div>
1066
+ <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; topTopLvlPtsSize+=size;</div>
1067
+ <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; </div>
1068
+ <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">if</span>(size &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">_MaxPtsSize</a>) <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">_MaxPtsSize</a> = size;</div>
1069
+ <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; </div>
1070
+ <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">if</span> (size &gt; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aecf324702d542f824e8b7a4d9827f557">_MaxTopLvlPtsSize</a>) <a class="code" href="classSVF_1_1FlowSensitiveStat.html#aecf324702d542f824e8b7a4d9827f557">_MaxTopLvlPtsSize</a> = size;</div>
1071
+ <div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</div>
1072
+ <div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; </div>
1073
+ <div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">if</span> (totalValidTopLvlPointers != 0)</div>
1074
+ <div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a31235f25af7970142ef235681d2a447c">_AvgTopLvlPtsSize</a> = (double)topTopLvlPtsSize/totalValidTopLvlPointers;</div>
1075
+ <div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; </div>
1076
+ <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8b5bfc9c3cbf9451603860789640246a">_TotalPtsSize</a> += topTopLvlPtsSize;</div>
1077
+ <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> totalPointer = totalValidTopLvlPointers + <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ad0b57a5d90c72b67337a68c04ae34739">IN</a>] + <a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab6ccd8de2b7573f34c4d04b7f40d6522">_NumOfVarHaveINOUTPts</a>[<a class="code" href="classSVF_1_1FlowSensitiveStat.html#ab11996ab5606f51c977b9b1385c13d71ac018f116c78ed5e314b52e5d743f3fa5">OUT</a>];</div>
1078
+ <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">if</span> (totalPointer != 0)</div>
1079
+ <div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a07adfab66dd7ed22993e59ad3bf74946">_AvgPtsSize</a> = (double) <a class="code" href="classSVF_1_1FlowSensitiveStat.html#a8b5bfc9c3cbf9451603860789640246a">_TotalPtsSize</a> / totalPointer;</div>
1080
+ <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;}</div>
1079
1081
  </div><!-- fragment -->
1080
1082
  </div>
1081
1083
  </div>
@@ -1879,7 +1881,7 @@ Additional Inherited Members</h2></td></tr>
1879
1881
  <div class="ttc" id="aclassSVF_1_1PointsTo_1_1PointsToIterator_html"><div class="ttname"><a href="classSVF_1_1PointsTo_1_1PointsToIterator.html">SVF::PointsTo::PointsToIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00181">PointsTo.h:181</a></div></div>
1880
1882
  <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>
1881
1883
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a767a935ec5bacd97f4fa79a05c165cc2"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a767a935ec5bacd97f4fa79a05c165cc2">SVF::FlowSensitiveStat::_NumOfConstantPtr</a></div><div class="ttdeci">u32_t _NumOfConstantPtr</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00124">WPAStat.h:124</a></div></div>
1882
- <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>
1884
+ <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>
1883
1885
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_a888d6334e5e226c634680e4c0674dcfb"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a888d6334e5e226c634680e4c0674dcfb">SVF::FlowSensitive::copyTime</a></div><div class="ttdeci">double copyTime</div><div class="ttdoc">time of handling copy edges</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00308">FlowSensitive.h:308</a></div></div>
1884
1886
  <div class="ttc" id="acJSON_8cpp_html_a009ef1d888ab6dbe77e6b42b0b39f1ae"><div class="ttname"><a href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a></div><div class="ttdeci">cJSON * p</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l02559">cJSON.cpp:2559</a></div></div>
1885
1887
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a4bef15157423cef48dc7333a803cd27d"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">SVF::GenericGraph::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00384">GenericGraph.h:384</a></div></div>
@@ -1889,14 +1891,14 @@ Additional Inherited Members</h2></td></tr>
1889
1891
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a07adfab66dd7ed22993e59ad3bf74946"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a07adfab66dd7ed22993e59ad3bf74946">SVF::FlowSensitiveStat::_AvgPtsSize</a></div><div class="ttdeci">double _AvgPtsSize</div><div class="ttdoc">average points-to set size.</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00156">WPAStat.h:156</a></div></div>
1890
1892
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_ab6fdf88fe931ead9a9b8f353c547c4ae"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#ab6fdf88fe931ead9a9b8f353c547c4ae">SVF::FlowSensitiveStat::_NumOfLoadSVFGNodesHaveInOut</a></div><div class="ttdeci">u32_t _NumOfLoadSVFGNodesHaveInOut[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00133">WPAStat.h:133</a></div></div>
1891
1893
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a7c88e2528a93511ba8dde4805cadcd30"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a7c88e2528a93511ba8dde4805cadcd30">SVF::FlowSensitiveStat::_MaxAddrTakenVarPts</a></div><div class="ttdeci">u32_t _MaxAddrTakenVarPts</div><div class="ttdoc">max points-to set size of addr-taken variables.</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00161">WPAStat.h:161</a></div></div>
1892
- <div class="ttc" id="aclassSVF_1_1SVFStat_html_abd7a79d1fe50110a0c1d448027492669"><div class="ttname"><a href="classSVF_1_1SVFStat.html#abd7a79d1fe50110a0c1d448027492669">SVF::SVFStat::startTime</a></div><div class="ttdeci">double startTime</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00077">SVFStat.h:77</a></div></div>
1894
+ <div class="ttc" id="aclassSVF_1_1SVFStat_html_abd7a79d1fe50110a0c1d448027492669"><div class="ttname"><a href="classSVF_1_1SVFStat.html#abd7a79d1fe50110a0c1d448027492669">SVF::SVFStat::startTime</a></div><div class="ttdeci">double startTime</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00080">SVFStat.h:80</a></div></div>
1893
1895
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_aab4f70210eb1e6447a24697d3b459067"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#aab4f70210eb1e6447a24697d3b459067">SVF::FlowSensitive::loadTime</a></div><div class="ttdeci">double loadTime</div><div class="ttdoc">time of load edges</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00310">FlowSensitive.h:310</a></div></div>
1894
1896
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_ae0db364bf6657c770deabbe75d901a46"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#ae0db364bf6657c770deabbe75d901a46">SVF::FlowSensitiveStat::_NumOfStoreSVFGNodesHaveInOut</a></div><div class="ttdeci">u32_t _NumOfStoreSVFGNodesHaveInOut[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00134">WPAStat.h:134</a></div></div>
1895
1897
  <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>
1896
1898
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_a19e017f3ed6429fa30687018e64dae54"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a19e017f3ed6429fa30687018e64dae54">SVF::FlowSensitive::numOfProcessedCopy</a></div><div class="ttdeci">u32_t numOfProcessedCopy</div><div class="ttdoc">Number of processed Addr node.</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00287">FlowSensitive.h:287</a></div></div>
1897
1899
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a737d955e3707cf758a5580eab2e60e96"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a737d955e3707cf758a5580eab2e60e96">SVF::FlowSensitiveStat::_MaxPtsSize</a></div><div class="ttdeci">u32_t _MaxPtsSize</div><div class="ttdoc">sizes of points-to set</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00150">WPAStat.h:150</a></div></div>
1898
1900
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a31235f25af7970142ef235681d2a447c"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a31235f25af7970142ef235681d2a447c">SVF::FlowSensitiveStat::_AvgTopLvlPtsSize</a></div><div class="ttdeci">double _AvgTopLvlPtsSize</div><div class="ttdoc">average points-to set size in top-level pointers.</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00157">WPAStat.h:157</a></div></div>
1899
- <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a8ae7448f6210b6c759a33e6fc8a8cee8"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a8ae7448f6210b6c759a33e6fc8a8cee8">SVF::FlowSensitiveStat::statInOutPtsSize</a></div><div class="ttdeci">void statInOutPtsSize(const DFInOutMap &amp;data, ENUM_INOUT inOrOut)</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00361">FlowSensitiveStat.cpp:361</a></div></div>
1901
+ <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a8ae7448f6210b6c759a33e6fc8a8cee8"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a8ae7448f6210b6c759a33e6fc8a8cee8">SVF::FlowSensitiveStat::statInOutPtsSize</a></div><div class="ttdeci">void statInOutPtsSize(const DFInOutMap &amp;data, ENUM_INOUT inOrOut)</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00360">FlowSensitiveStat.cpp:360</a></div></div>
1900
1902
  <div class="ttc" id="aclassSVF_1_1SVFG_html_a7ace06b6c893b31f7dec2abe54e33e11"><div class="ttname"><a href="classSVF_1_1SVFG.html#a7ace06b6c893b31f7dec2abe54e33e11">SVF::SVFG::getSVFGNode</a></div><div class="ttdeci">SVFGNode * getSVFGNode(NodeID id) const</div><div class="ttdoc">Get a SVFG node.</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00150">SVFG.h:150</a></div></div>
1901
1903
  <div class="ttc" id="aclassSVF_1_1SparseBitVector_html_a61bd86909a141f9de873d92c0f904832"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">SVF::SparseBitVector::set</a></div><div class="ttdeci">void set(unsigned Idx)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00747">SparseBitVector.h:747</a></div></div>
1902
1904
  <div class="ttc" id="aSVFType_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00604">SVFType.h:604</a></div></div>
@@ -1904,15 +1906,15 @@ Additional Inherited Members</h2></td></tr>
1904
1906
  <div class="ttc" id="aclassSVF_1_1IndirectSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00042">SVFGEdge.h:42</a></div></div>
1905
1907
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_ac39abcb40e4b568ab59b7cf48ed10f70"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#ac39abcb40e4b568ab59b7cf48ed10f70">SVF::FlowSensitive::numOfProcessedPhi</a></div><div class="ttdeci">u32_t numOfProcessedPhi</div><div class="ttdoc">Number of processed Gep node.</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00289">FlowSensitive.h:289</a></div></div>
1906
1908
  <div class="ttc" id="aclassSVF_1_1SVFIR_html_a3bbaafd80dfcae6ccc82c3d8b9d303ea"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a3bbaafd80dfcae6ccc82c3d8b9d303ea">SVF::SVFIR::getFieldObjNodeNum</a></div><div class="ttdeci">u32_t getFieldObjNodeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00325">SVFIR.h:325</a></div></div>
1907
- <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a04466753c771238c6e1cc57964061dce"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a04466753c771238c6e1cc57964061dce">SVF::FlowSensitiveStat::calculateAddrVarPts</a></div><div class="ttdeci">void calculateAddrVarPts(NodeID pointer, const SVFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00493">FlowSensitiveStat.cpp:493</a></div></div>
1908
- <div class="ttc" id="aclassSVF_1_1SVFStat_html_a11c34e8ba16769d218432d9504ba26a0"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a11c34e8ba16769d218432d9504ba26a0">SVF::SVFStat::PTNumStatMap</a></div><div class="ttdeci">NUMStatMap PTNumStatMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00074">SVFStat.h:74</a></div></div>
1909
+ <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a04466753c771238c6e1cc57964061dce"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a04466753c771238c6e1cc57964061dce">SVF::FlowSensitiveStat::calculateAddrVarPts</a></div><div class="ttdeci">void calculateAddrVarPts(NodeID pointer, const SVFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00492">FlowSensitiveStat.cpp:492</a></div></div>
1910
+ <div class="ttc" id="aclassSVF_1_1SVFStat_html_a11c34e8ba16769d218432d9504ba26a0"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a11c34e8ba16769d218432d9504ba26a0">SVF::SVFStat::PTNumStatMap</a></div><div class="ttdeci">NUMStatMap PTNumStatMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00077">SVFStat.h:77</a></div></div>
1909
1911
  <div class="ttc" id="aclassSVF_1_1PointsTo_html_aa0d4ee196b91fce626f3f15bcc5599e4"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa0d4ee196b91fce626f3f15bcc5599e4">SVF::PointsTo::count</a></div><div class="ttdeci">u32_t count() const</div><div class="ttdoc">Returns number of elements.</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8cpp_source.html#l00111">PointsTo.cpp:111</a></div></div>
1910
1912
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_ac2db6304ea5526fb446ae882983beeb0"><div class="ttname"><a href="classSVF_1_1SVFVar.html#ac2db6304ea5526fb446ae882983beeb0">SVF::SVFVar::getValue</a></div><div class="ttdeci">const SVFValue * getValue() const</div><div class="ttdoc">Get/has methods of the components.</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00094">SVFVariables.h:94</a></div></div>
1911
1913
  <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>
1912
1914
  <div class="ttc" id="aclassSVF_1_1SVFStmt_html_a8cd7b6c6fd8b030b1421d95a086359f4"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVF::SVFStmt::SVFStmtSetTy</a></div><div class="ttdeci">GenericNode&lt; SVFVar, SVFStmt &gt;::GEdgeSetTy SVFStmtSetTy</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00217">SVFStatements.h:217</a></div></div>
1913
1915
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_ae2d4df7129385905775489f1389a9fa7"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#ae2d4df7129385905775489f1389a9fa7">SVF::FlowSensitiveStat::_NumOfAddrTakeVar</a></div><div class="ttdeci">u32_t _NumOfAddrTakeVar</div><div class="ttdoc">number of occurrences of addr-taken variables in load/store.</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00162">WPAStat.h:162</a></div></div>
1914
1916
  <div class="ttc" id="aclassSVF_1_1SVFIR_html_a5c3b194ebada47baaccf0e9f3ab1a139"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a5c3b194ebada47baaccf0e9f3ab1a139">SVF::SVFIR::isValidTopLevelPtr</a></div><div class="ttdeci">bool isValidTopLevelPtr(const SVFVar *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00694">SVFIR.cpp:694</a></div></div>
1915
- <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a81785227a688389c68171a1fbd55fa9b"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a81785227a688389c68171a1fbd55fa9b">SVF::FlowSensitiveStat::statAddrVarPtsSize</a></div><div class="ttdeci">void statAddrVarPtsSize()</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00476">FlowSensitiveStat.cpp:476</a></div></div>
1917
+ <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a81785227a688389c68171a1fbd55fa9b"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a81785227a688389c68171a1fbd55fa9b">SVF::FlowSensitiveStat::statAddrVarPtsSize</a></div><div class="ttdeci">void statAddrVarPtsSize()</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00475">FlowSensitiveStat.cpp:475</a></div></div>
1916
1918
  <div class="ttc" id="aclassSVF_1_1MemObj_html_a3ab6f65ffbf6442daac4d3f70f2d3cb1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a3ab6f65ffbf6442daac4d3f70f2d3cb1">SVF::MemObj::getId</a></div><div class="ttdeci">SymID getId() const</div><div class="ttdoc">Get the memory object id.</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00412">SymbolTableInfo.h:412</a></div></div>
1917
1919
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_a5cfee013a1a5821ef0c449842dd8690d"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a5cfee013a1a5821ef0c449842dd8690d">SVF::FlowSensitive::ander</a></div><div class="ttdeci">AndersenWaveDiff * ander</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00279">FlowSensitive.h:279</a></div></div>
1918
1920
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_aae032e5f5d53b131d0112dc8faa464a9"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#aae032e5f5d53b131d0112dc8faa464a9">SVF::FlowSensitive::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00245">FlowSensitive.h:245</a></div></div>
@@ -1931,7 +1933,7 @@ Additional Inherited Members</h2></td></tr>
1931
1933
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a90f1c6072a153c856765b24bbcbfaeef"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a90f1c6072a153c856765b24bbcbfaeef">SVF::FlowSensitiveStat::_NumOfVarHaveINOUTPtsInMSSAPhi</a></div><div class="ttdeci">u32_t _NumOfVarHaveINOUTPtsInMSSAPhi[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00146">WPAStat.h:146</a></div></div>
1932
1934
  <div class="ttc" id="aclassSVF_1_1SVFStat_html_a730cc814fede3edb563aa9957c869e9e"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a730cc814fede3edb563aa9957c869e9e">SVF::SVFStat::startClk</a></div><div class="ttdeci">virtual void startClk()</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00058">SVFStat.h:58</a></div></div>
1933
1935
  <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>
1934
- <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a36f7be42772b2df6f7594c51b7dc4770"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a36f7be42772b2df6f7594c51b7dc4770">SVF::FlowSensitiveStat::statNullPtr</a></div><div class="ttdeci">void statNullPtr()</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00271">FlowSensitiveStat.cpp:271</a></div></div>
1936
+ <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a36f7be42772b2df6f7594c51b7dc4770"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a36f7be42772b2df6f7594c51b7dc4770">SVF::FlowSensitiveStat::statNullPtr</a></div><div class="ttdeci">void statNullPtr()</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00270">FlowSensitiveStat.cpp:270</a></div></div>
1935
1937
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_ae4253bc632ffffe2498263c90f456ca7"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#ae4253bc632ffffe2498263c90f456ca7">SVF::FlowSensitive::numOfProcessedAddr</a></div><div class="ttdeci">u32_t numOfProcessedAddr</div><div class="ttdoc">Statistics.</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00286">FlowSensitive.h:286</a></div></div>
1936
1938
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a2162dffeb03e84daca52d6d8429b8529"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a2162dffeb03e84daca52d6d8429b8529">SVF::FlowSensitiveStat::_NumOfVarHaveEmptyINOUTPts</a></div><div class="ttdeci">u32_t _NumOfVarHaveEmptyINOUTPts[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00139">WPAStat.h:139</a></div></div>
1937
1939
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a3ac011649b3c0ced46283265ba88dd0e"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a3ac011649b3c0ced46283265ba88dd0e">SVF::FlowSensitiveStat::_NumOfActualOutSVFGNodesHaveInOut</a></div><div class="ttdeci">u32_t _NumOfActualOutSVFGNodesHaveInOut[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00132">WPAStat.h:132</a></div></div>
@@ -1961,13 +1963,12 @@ Additional Inherited Members</h2></td></tr>
1961
1963
  <div class="ttc" id="aclassSVF_1_1GenericNode_html_afc8b5f86d7795b6a0dfc0687d942d79b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">SVF::GenericNode::getInEdges</a></div><div class="ttdeci">const GEdgeSetTy &amp; getInEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00197">GenericGraph.h:197</a></div></div>
1962
1964
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_aa39c5d81cef922d7a0f98913dbf51fb0"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#aa39c5d81cef922d7a0f98913dbf51fb0">SVF::FlowSensitiveStat::_NumOfSVFGNodesHaveInOut</a></div><div class="ttdeci">u32_t _NumOfSVFGNodesHaveInOut[2]</div><div class="ttdoc">number of SVFG nodes which have IN/OUT set.</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00128">WPAStat.h:128</a></div></div>
1963
1965
  <div class="ttc" id="aclassSVF_1_1PTAStat_html_ac9b65b591200c16c420fbd26710b448f"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ac9b65b591200c16c420fbd26710b448f">SVF::PTAStat::PTAStat</a></div><div class="ttdeci">PTAStat(PointerAnalysis *p)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00039">PTAStat.cpp:39</a></div></div>
1964
- <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>
1965
- <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_af51e5b90f7bc52e3657a708c7bc5bb75"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#af51e5b90f7bc52e3657a708c7bc5bb75">SVF::FlowSensitiveStat::statPtsSize</a></div><div class="ttdeci">void statPtsSize()</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00322">FlowSensitiveStat.cpp:322</a></div></div>
1966
+ <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>
1967
+ <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_af51e5b90f7bc52e3657a708c7bc5bb75"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#af51e5b90f7bc52e3657a708c7bc5bb75">SVF::FlowSensitiveStat::statPtsSize</a></div><div class="ttdeci">void statPtsSize()</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitiveStat_8cpp_source.html#l00321">FlowSensitiveStat.cpp:321</a></div></div>
1966
1968
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00380">GenericGraph.h:380</a></div></div>
1967
1969
  <div class="ttc" id="aclassSVF_1_1IRGraph_html_a82528aff779ccf8f723f57507dd2d991"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a82528aff779ccf8f723f57507dd2d991">SVF::IRGraph::getObjectNodeNum</a></div><div class="ttdeci">u32_t getObjectNodeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00191">IRGraph.h:191</a></div></div>
1968
- <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs()</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00050">SVFUtil.h:50</a></div></div>
1969
1970
  <div class="ttc" id="aclassSVF_1_1SVFVar_html_a927733580b47be5ffcfced44ba9fd6c3"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a927733580b47be5ffcfced44ba9fd6c3">SVF::SVFVar::getOutgoingEdges</a></div><div class="ttdeci">SVFStmt::SVFStmtSetTy &amp; getOutgoingEdges(SVFStmt::PEDGEK kind)</div><div class="ttdoc">Get outgoing SVFIR statements (edges)</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00153">SVFVariables.h:153</a></div></div>
1970
- <div class="ttc" id="aclassSVF_1_1SVFStat_html_a5383691a34426a1a997b5eed387f1831"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">SVF::SVFStat::timeStatMap</a></div><div class="ttdeci">TIMEStatMap timeStatMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00075">SVFStat.h:75</a></div></div>
1971
+ <div class="ttc" id="aclassSVF_1_1SVFStat_html_a5383691a34426a1a997b5eed387f1831"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">SVF::SVFStat::timeStatMap</a></div><div class="ttdeci">TIMEStatMap timeStatMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00078">SVFStat.h:78</a></div></div>
1971
1972
  <div class="ttc" id="anamespaceSVF_html_ad11fe2412b2182365a662ff0e4639b48"><div class="ttname"><a href="namespaceSVF.html#ad11fe2412b2182365a662ff0e4639b48">SVF::SymID</a></div><div class="ttdeci">unsigned SymID</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00058">SVFType.h:58</a></div></div>
1972
1973
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a1cfd15cd46178718ea459f79738e0b69"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a1cfd15cd46178718ea459f79738e0b69">SVF::FlowSensitiveStat::_NumOfFormalOutSVFGNodesHaveInOut</a></div><div class="ttdeci">u32_t _NumOfFormalOutSVFGNodesHaveInOut[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00130">WPAStat.h:130</a></div></div>
1973
1974
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a2e9a786af3bce4b345d88ff05cd71f0f"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a2e9a786af3bce4b345d88ff05cd71f0f">SVF::FlowSensitiveStat::_NumOfFormalInSVFGNodesHaveInOut</a></div><div class="ttdeci">u32_t _NumOfFormalInSVFGNodesHaveInOut[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00129">WPAStat.h:129</a></div></div>
@@ -1975,14 +1976,14 @@ Additional Inherited Members</h2></td></tr>
1975
1976
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_ac213302cf5c7cdf3b66f7b18649d0fbc"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVF::GenericGraph&lt; SVFVar, SVFStmt &gt;::iterator</a></div><div class="ttdeci">IDToNodeMapTy::iterator iterator</div><div class="ttdoc">Node Iterators.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00359">GenericGraph.h:359</a></div></div>
1976
1977
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_ab3e56ed16ce45d35c8f35f1fc1248c36"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#ab3e56ed16ce45d35c8f35f1fc1248c36">SVF::FlowSensitiveStat::_MaxInOutPtsSize</a></div><div class="ttdeci">u32_t _MaxInOutPtsSize[2]</div><div class="ttdoc">max points-to set size in IN/OUT set.</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00152">WPAStat.h:152</a></div></div>
1977
1978
  <div class="ttc" id="aclassSVF_1_1PTAStat_html_ad6de9d3f25c20705768000c987af0eb6"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ad6de9d3f25c20705768000c987af0eb6">SVF::PTAStat::performStat</a></div><div class="ttdeci">void performStat() override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00052">PTAStat.cpp:52</a></div></div>
1978
- <div class="ttc" id="aclassSVF_1_1SVFStat_html_a8b01f1564408b51f28c107454bf9068d"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a8b01f1564408b51f28c107454bf9068d">SVF::SVFStat::endTime</a></div><div class="ttdeci">double endTime</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00078">SVFStat.h:78</a></div></div>
1979
+ <div class="ttc" id="aclassSVF_1_1SVFStat_html_a8b01f1564408b51f28c107454bf9068d"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a8b01f1564408b51f28c107454bf9068d">SVF::SVFStat::endTime</a></div><div class="ttdeci">double endTime</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00081">SVFStat.h:81</a></div></div>
1979
1980
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a5dfa3f178d4abf37177d0d74ff4c6a97"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a5dfa3f178d4abf37177d0d74ff4c6a97">SVF::GenericGraph&lt; SVFVar, SVFStmt &gt;::const_iterator</a></div><div class="ttdeci">IDToNodeMapTy::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00360">GenericGraph.h:360</a></div></div>
1980
1981
  <div class="ttc" id="aclassSVF_1_1PointsTo_html_ad5b582d2672617806c61e6170d0b5a7e"><div class="ttname"><a href="classSVF_1_1PointsTo.html#ad5b582d2672617806c61e6170d0b5a7e">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin() const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00128">PointsTo.h:128</a></div></div>
1981
1982
  <div class="ttc" id="aclassSVF_1_1VFGEdge_html"><div class="ttname"><a href="classSVF_1_1VFGEdge.html">SVF::VFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00044">VFGEdge.h:44</a></div></div>
1982
1983
  <div class="ttc" id="aclassSVF_1_1PointsTo_html_a6e2ff63437d07a30cc6db35de032728a"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a6e2ff63437d07a30cc6db35de032728a">SVF::PointsTo::end</a></div><div class="ttdeci">const_iterator end() const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00132">PointsTo.h:132</a></div></div>
1983
1984
  <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>
1984
1985
  <div class="ttc" id="aclassSVF_1_1SVFValue_html_a3a4b04027aa67278e7b1bb1ef88cf2e6"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a3a4b04027aa67278e7b1bb1ef88cf2e6">SVF::SVFValue::ptrInUncalledFunction</a></div><div class="ttdeci">bool ptrInUncalledFunction() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00264">SVFValue.h:264</a></div></div>
1985
- <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>
1986
+ <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>
1986
1987
  <div class="ttc" id="aclassSVF_1_1IndirectSVFGEdge_html_a30aca718d25924f1babdf348bb0ace71"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html#a30aca718d25924f1babdf348bb0ace71">SVF::IndirectSVFGEdge::getPointsTo</a></div><div class="ttdeci">const NodeBS &amp; getPointsTo() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00060">SVFGEdge.h:60</a></div></div>
1987
1988
  <div class="ttc" id="aclassSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">SVF::SVFStmt::Store</a></div><div class="ttdeci">@ Store</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00065">SVFStatements.h:65</a></div></div>
1988
1989
  <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>
@@ -2007,7 +2008,7 @@ Additional Inherited Members</h2></td></tr>
2007
2008
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_abdc30e45347579986c42795a436a1251"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#abdc30e45347579986c42795a436a1251">SVF::FlowSensitive::numOfProcessedActualParam</a></div><div class="ttdeci">u32_t numOfProcessedActualParam</div><div class="ttdoc">Number of processed Store node.</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00292">FlowSensitive.h:292</a></div></div>
2008
2009
  <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>
2009
2010
  <div class="ttc" id="aclassSVF_1_1FlowSensitive_html_a808dc8a242f168174339d7ca3196bb58"><div class="ttname"><a href="classSVF_1_1FlowSensitive.html#a808dc8a242f168174339d7ca3196bb58">SVF::FlowSensitive::getDFOutPtsSet</a></div><div class="ttdeci">const PointsTo &amp; getDFOutPtsSet(const SVFGNode *stmt, const NodeID node)</div><div class="ttdef"><b>Definition:</b> <a href="FlowSensitive_8h_source.html#l00252">FlowSensitive.h:252</a></div></div>
2010
- <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>
2011
+ <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>
2011
2012
  <div class="ttc" id="aclassSVF_1_1VFG_html_a241d0489bf0315460e2b07db87e7847c"><div class="ttname"><a href="classSVF_1_1VFG.html#a241d0489bf0315460e2b07db87e7847c">SVF::VFG::iterator</a></div><div class="ttdeci">VFGNodeIDToNodeMapTy::iterator iterator</div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00080">VFG.h:80</a></div></div>
2012
2013
  <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>
2013
2014
  <div class="ttc" id="aclassSVF_1_1FlowSensitiveStat_html_a08ea2c3d891337992291123a1bb4da97"><div class="ttname"><a href="classSVF_1_1FlowSensitiveStat.html#a08ea2c3d891337992291123a1bb4da97">SVF::FlowSensitiveStat::_PotentialNumOfVarHaveINOUTPts</a></div><div class="ttdeci">u32_t _PotentialNumOfVarHaveINOUTPts[2]</div><div class="ttdef"><b>Definition:</b> <a href="WPAStat_8h_source.html#l00147">WPAStat.h:147</a></div></div>