svf-tools 1.0.409 → 1.0.412

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 (210) hide show
  1. package/CMakeLists.txt +1 -1
  2. package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
  3. package/SVF-doxygen/html/html/AndersenHLCD_8cpp_source.html +1 -1
  4. package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +2 -2
  6. package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +1 -1
  7. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +3 -3
  8. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +3 -3
  9. package/SVF-doxygen/html/html/Andersen_8h_source.html +3 -3
  10. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
  11. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +3 -3
  12. package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
  14. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +7 -7
  15. package/SVF-doxygen/html/html/DDAStat_8h_source.html +5 -5
  16. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +1 -1
  17. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +1 -1
  18. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +2 -2
  19. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +3 -2
  20. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +2 -2
  21. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +7 -6
  22. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +3 -3
  23. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +1 -1
  24. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +1 -1
  25. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +1 -1
  26. package/SVF-doxygen/html/html/MHP_8cpp.html +2 -83
  27. package/SVF-doxygen/html/html/MHP_8cpp_source.html +42 -46
  28. package/SVF-doxygen/html/html/MHP_8h_source.html +26 -26
  29. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +2 -2
  30. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +1 -1
  31. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +2 -2
  32. package/SVF-doxygen/html/html/MTA_8cpp_source.html +1 -1
  33. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +3 -3
  34. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +10 -10
  35. package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +9 -9
  36. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +11 -11
  37. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +8 -8
  38. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +9 -9
  39. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +30 -31
  40. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +5 -5
  41. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +33 -34
  42. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +9 -9
  43. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +8 -7
  44. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +3 -3
  45. package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
  46. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +1 -1
  47. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +1 -1
  48. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +3 -3
  49. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +1 -1
  50. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +2 -2
  51. package/SVF-doxygen/html/html/TCT_8cpp_source.html +14 -14
  52. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +1 -1
  53. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +3 -3
  54. package/SVF-doxygen/html/html/VFG_8cpp_source.html +1 -1
  55. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +6 -5
  56. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +214 -215
  57. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +15 -16
  58. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +180 -181
  59. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +1 -4
  60. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +226 -227
  61. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +0 -3
  62. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +232 -233
  63. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +2 -5
  64. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +222 -223
  65. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +3 -6
  66. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +222 -223
  67. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -4
  68. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +152 -154
  69. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +9 -12
  70. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +3 -3
  71. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +221 -222
  72. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +0 -3
  73. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +132 -133
  74. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +28 -33
  75. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +2 -4
  76. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +10 -10
  77. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +1 -1
  78. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +3 -3
  79. package/SVF-doxygen/html/html/classSVF_1_1DDAStat-members.html +4 -4
  80. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +34 -25
  81. package/SVF-doxygen/html/html/classSVF_1_1DummyVersionPropSVFGNode.html +16 -16
  82. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +3 -3
  83. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +247 -248
  84. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +2 -5
  85. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +208 -209
  86. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +8 -11
  87. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +238 -239
  88. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +21 -24
  89. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +2 -2
  90. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +275 -276
  91. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +8 -10
  92. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +31 -31
  93. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +2 -2
  94. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +38 -38
  95. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode-members.html +13 -14
  96. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +19 -43
  97. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +2 -2
  98. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +1 -1
  99. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +74 -74
  100. package/SVF-doxygen/html/html/classSVF_1_1MHPValidator.html +7 -7
  101. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +1 -1
  102. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +1 -1
  103. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +4 -4
  104. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +5 -5
  105. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +2 -2
  106. package/SVF-doxygen/html/html/classSVF_1_1MemObj-members.html +1 -1
  107. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +8 -8
  108. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +3 -3
  109. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat-members.html +2 -2
  110. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +15 -14
  111. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +33 -33
  112. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +3 -3
  113. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis-members.html +94 -95
  114. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +73 -107
  115. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +1 -1
  116. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +4 -4
  117. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +11 -13
  118. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat-members.html +6 -6
  119. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +53 -52
  120. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +15 -30
  121. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +2 -2
  122. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +3 -3
  123. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +193 -194
  124. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +0 -3
  125. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +18 -18
  126. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +1 -1
  127. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +184 -185
  128. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -5
  129. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +3 -3
  130. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +1 -1
  131. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +287 -288
  132. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +8 -10
  133. package/SVF-doxygen/html/html/functions_0x7e.html +1 -1
  134. package/SVF-doxygen/html/html/functions_c.html +18 -21
  135. package/SVF-doxygen/html/html/functions_func_0x7e.html +1 -1
  136. package/SVF-doxygen/html/html/functions_func_c.html +12 -13
  137. package/SVF-doxygen/html/html/functions_func_p.html +9 -9
  138. package/SVF-doxygen/html/html/functions_l.html +3 -3
  139. package/SVF-doxygen/html/html/functions_m.html +4 -4
  140. package/SVF-doxygen/html/html/functions_o.html +4 -4
  141. package/SVF-doxygen/html/html/functions_p.html +12 -12
  142. package/SVF-doxygen/html/html/functions_r.html +5 -4
  143. package/SVF-doxygen/html/html/functions_s.html +3 -3
  144. package/SVF-doxygen/html/html/functions_t.html +5 -7
  145. package/SVF-doxygen/html/html/functions_v.html +6 -6
  146. package/SVF-doxygen/html/html/functions_vars_m.html +4 -4
  147. package/SVF-doxygen/html/html/functions_vars_r.html +1 -2
  148. package/SVF-doxygen/html/html/globals_func_g.html +0 -6
  149. package/SVF-doxygen/html/html/globals_g.html +2 -8
  150. package/SVF-doxygen/html/html/globals_s.html +4 -2
  151. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +1 -2
  152. package/SVF-doxygen/html/html/search/all_10.js +7 -7
  153. package/SVF-doxygen/html/html/search/all_12.js +3 -3
  154. package/SVF-doxygen/html/html/search/all_13.js +7 -7
  155. package/SVF-doxygen/html/html/search/all_14.js +4 -4
  156. package/SVF-doxygen/html/html/search/all_16.js +3 -3
  157. package/SVF-doxygen/html/html/search/all_1b.js +1 -1
  158. package/SVF-doxygen/html/html/search/all_3.js +1 -1
  159. package/SVF-doxygen/html/html/search/all_7.js +0 -2
  160. package/SVF-doxygen/html/html/search/all_c.js +2 -2
  161. package/SVF-doxygen/html/html/search/all_d.js +4 -4
  162. package/SVF-doxygen/html/html/search/all_e.js +1 -1
  163. package/SVF-doxygen/html/html/search/all_f.js +3 -3
  164. package/SVF-doxygen/html/html/search/functions_10.js +1 -1
  165. package/SVF-doxygen/html/html/search/functions_16.js +1 -1
  166. package/SVF-doxygen/html/html/search/functions_2.js +1 -1
  167. package/SVF-doxygen/html/html/search/functions_6.js +0 -2
  168. package/SVF-doxygen/html/html/search/functions_e.js +6 -6
  169. package/SVF-doxygen/html/html/search/variables_12.js +1 -1
  170. package/SVF-doxygen/html/html/search/variables_14.js +3 -3
  171. package/SVF-doxygen/html/html/search/variables_d.js +4 -4
  172. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  173. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +14 -14
  174. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SVFGNodeLockSpan_01_4.html +3 -3
  175. package/SVF-doxygen/html/html/svf-ex_8cpp.html +4 -3
  176. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +2 -1
  177. package/include/DDA/DDAStat.h +4 -4
  178. package/include/Graphs/SVFGNode.h +2 -4
  179. package/include/Graphs/SVFGStat.h +8 -8
  180. package/include/MTA/FSMPTA.h +1 -0
  181. package/include/MTA/MTAResultValidator.h +1 -1
  182. package/include/MemoryModel/AbstractPointsToDS.h +6 -0
  183. package/include/MemoryModel/PointerAnalysis.h +0 -5
  184. package/include/MemoryModel/SymbolTableInfo.h +2 -2
  185. package/include/Util/IRAnnotator.h +2 -2
  186. package/include/WPA/Andersen.h +1 -1
  187. package/include/WPA/AndersenSFR.h +1 -1
  188. package/lib/CUDD/CMakeLists.txt +1 -1
  189. package/lib/DDA/DDAStat.cpp +2 -2
  190. package/lib/Graphs/SVFGStat.cpp +4 -4
  191. package/lib/MSSA/SVFGBuilder.cpp +0 -1
  192. package/lib/MTA/FSMPTA.cpp +2 -3
  193. package/lib/MTA/LockResultValidator.cpp +1 -1
  194. package/lib/MTA/MHP.cpp +0 -36
  195. package/lib/MTA/MTAResultValidator.cpp +3 -3
  196. package/lib/MTA/TCT.cpp +0 -1
  197. package/lib/MemoryModel/PointerAnalysis.cpp +1 -1
  198. package/lib/MemoryModel/PointerAnalysisImpl.cpp +0 -1
  199. package/lib/MemoryModel/SVFIR.cpp +15 -15
  200. package/lib/MemoryModel/SymbolTableInfo.cpp +1 -1
  201. package/lib/SVF-FE/LLVMUtil.cpp +1 -1
  202. package/lib/SVF-FE/SVFIRBuilder.cpp +5 -5
  203. package/lib/Util/CoreBitVector.cpp +1 -1
  204. package/lib/Util/ExtAPI.cpp +1 -0
  205. package/lib/Util/NodeIDAllocator.cpp +0 -1
  206. package/lib/WPA/AndersenSFR.cpp +2 -2
  207. package/lib/WPA/FlowSensitiveTBHC.cpp +1 -1
  208. package/lib/WPA/VersionedFlowSensitive.cpp +4 -4
  209. package/package.json +1 -1
  210. package/tools/Example/svf-ex.cpp +4 -3
@@ -108,10 +108,10 @@ Public Member Functions</h2></td></tr>
108
108
  <tr class="separator:ae61d5bd92ef495a0f6c2f9dedac3da03"><td class="memSeparator" colspan="2">&#160;</td></tr>
109
109
  <tr class="memitem:ad70617b64bb651c0c16943a8b016399e"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#ad70617b64bb651c0c16943a8b016399e">~SVFGStat</a> ()</td></tr>
110
110
  <tr class="separator:ad70617b64bb651c0c16943a8b016399e"><td class="memSeparator" colspan="2">&#160;</td></tr>
111
- <tr class="memitem:ab11b1fbef2bd7cfc9bf8e1b993dbfa11"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#ab11b1fbef2bd7cfc9bf8e1b993dbfa11">performStat</a> ()</td></tr>
112
- <tr class="separator:ab11b1fbef2bd7cfc9bf8e1b993dbfa11"><td class="memSeparator" colspan="2">&#160;</td></tr>
113
- <tr class="memitem:a67e0f3d1eb1cf8bf6dda57b602d6dac7"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a67e0f3d1eb1cf8bf6dda57b602d6dac7">printStat</a> ()</td></tr>
114
- <tr class="separator:a67e0f3d1eb1cf8bf6dda57b602d6dac7"><td class="memSeparator" colspan="2">&#160;</td></tr>
111
+ <tr class="memitem:a037600bfff11659542f8595d8700dec4"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a037600bfff11659542f8595d8700dec4">performStat</a> () override</td></tr>
112
+ <tr class="separator:a037600bfff11659542f8595d8700dec4"><td class="memSeparator" colspan="2">&#160;</td></tr>
113
+ <tr class="memitem:a2e0adcfbe233523212e1ffbf5b01ba88"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a2e0adcfbe233523212e1ffbf5b01ba88">printStat</a> (std::string str=&quot;&quot;) override</td></tr>
114
+ <tr class="separator:a2e0adcfbe233523212e1ffbf5b01ba88"><td class="memSeparator" colspan="2">&#160;</td></tr>
115
115
  <tr class="memitem:a87d5e8ec0e13416cff36a18644a5b94f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a87d5e8ec0e13416cff36a18644a5b94f">performSCCStat</a> (<a class="el" href="classSVF_1_1SVFGStat.html#afeddbe4020e9b3c928856c2dc86af838">SVFGEdgeSet</a> insensitiveCalRetEdges)</td></tr>
116
116
  <tr class="separator:a87d5e8ec0e13416cff36a18644a5b94f"><td class="memSeparator" colspan="2">&#160;</td></tr>
117
117
  <tr class="memitem:a169d75c0fd09f69d86939d84db67e590"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a169d75c0fd09f69d86939d84db67e590">dirVFEdgeStart</a> ()</td></tr>
@@ -256,24 +256,24 @@ Private Attributes</h2></td></tr>
256
256
  <tr class="memitem:a123305ef02a5bfa127a1e172beb5e8cf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">avgOutDegree</a></td></tr>
257
257
  <tr class="memdesc:a123305ef02a5bfa127a1e172beb5e8cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">average out degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a123305ef02a5bfa127a1e172beb5e8cf">More...</a><br /></td></tr>
258
258
  <tr class="separator:a123305ef02a5bfa127a1e172beb5e8cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
259
- <tr class="memitem:a3b50e2a1fa53126b6c372c9b8c87df28"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a3b50e2a1fa53126b6c372c9b8c87df28">maxInDegree</a></td></tr>
260
- <tr class="memdesc:a3b50e2a1fa53126b6c372c9b8c87df28"><td class="mdescLeft">&#160;</td><td class="mdescRight">max in degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a3b50e2a1fa53126b6c372c9b8c87df28">More...</a><br /></td></tr>
261
- <tr class="separator:a3b50e2a1fa53126b6c372c9b8c87df28"><td class="memSeparator" colspan="2">&#160;</td></tr>
262
- <tr class="memitem:a846cfa8d900219368ff12942ff0a0fa1"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a846cfa8d900219368ff12942ff0a0fa1">maxOutDegree</a></td></tr>
263
- <tr class="memdesc:a846cfa8d900219368ff12942ff0a0fa1"><td class="mdescLeft">&#160;</td><td class="mdescRight">max out degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a846cfa8d900219368ff12942ff0a0fa1">More...</a><br /></td></tr>
264
- <tr class="separator:a846cfa8d900219368ff12942ff0a0fa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
259
+ <tr class="memitem:a536b591b21756519262873462001f421"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">maxInDegree</a></td></tr>
260
+ <tr class="memdesc:a536b591b21756519262873462001f421"><td class="mdescLeft">&#160;</td><td class="mdescRight">max in degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a536b591b21756519262873462001f421">More...</a><br /></td></tr>
261
+ <tr class="separator:a536b591b21756519262873462001f421"><td class="memSeparator" colspan="2">&#160;</td></tr>
262
+ <tr class="memitem:a6694ace7ee1b24b0c5ce42e06e4db2cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">maxOutDegree</a></td></tr>
263
+ <tr class="memdesc:a6694ace7ee1b24b0c5ce42e06e4db2cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">max out degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a6694ace7ee1b24b0c5ce42e06e4db2cf">More...</a><br /></td></tr>
264
+ <tr class="separator:a6694ace7ee1b24b0c5ce42e06e4db2cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
265
265
  <tr class="memitem:a364d684cbefed1793d7c4506fb1fa0fd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">avgIndInDegree</a></td></tr>
266
266
  <tr class="memdesc:a364d684cbefed1793d7c4506fb1fa0fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">average indirect in degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a364d684cbefed1793d7c4506fb1fa0fd">More...</a><br /></td></tr>
267
267
  <tr class="separator:a364d684cbefed1793d7c4506fb1fa0fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
268
268
  <tr class="memitem:a7854ee895f1965ea02f5d04f81589826"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826">avgIndOutDegree</a></td></tr>
269
269
  <tr class="memdesc:a7854ee895f1965ea02f5d04f81589826"><td class="mdescLeft">&#160;</td><td class="mdescRight">average indirect out degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a7854ee895f1965ea02f5d04f81589826">More...</a><br /></td></tr>
270
270
  <tr class="separator:a7854ee895f1965ea02f5d04f81589826"><td class="memSeparator" colspan="2">&#160;</td></tr>
271
- <tr class="memitem:abb5d525ff05e003039a4879505940264"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#abb5d525ff05e003039a4879505940264">maxIndInDegree</a></td></tr>
272
- <tr class="memdesc:abb5d525ff05e003039a4879505940264"><td class="mdescLeft">&#160;</td><td class="mdescRight">max indirect in degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#abb5d525ff05e003039a4879505940264">More...</a><br /></td></tr>
273
- <tr class="separator:abb5d525ff05e003039a4879505940264"><td class="memSeparator" colspan="2">&#160;</td></tr>
274
- <tr class="memitem:a1fce01df52d7a682555c638411d37280"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a1fce01df52d7a682555c638411d37280">maxIndOutDegree</a></td></tr>
275
- <tr class="memdesc:a1fce01df52d7a682555c638411d37280"><td class="mdescLeft">&#160;</td><td class="mdescRight">max indirect out degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a1fce01df52d7a682555c638411d37280">More...</a><br /></td></tr>
276
- <tr class="separator:a1fce01df52d7a682555c638411d37280"><td class="memSeparator" colspan="2">&#160;</td></tr>
271
+ <tr class="memitem:a2f1bb17038de877fd1ccffdea3f3cde3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">maxIndInDegree</a></td></tr>
272
+ <tr class="memdesc:a2f1bb17038de877fd1ccffdea3f3cde3"><td class="mdescLeft">&#160;</td><td class="mdescRight">max indirect in degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#a2f1bb17038de877fd1ccffdea3f3cde3">More...</a><br /></td></tr>
273
+ <tr class="separator:a2f1bb17038de877fd1ccffdea3f3cde3"><td class="memSeparator" colspan="2">&#160;</td></tr>
274
+ <tr class="memitem:ac7cb2228bd31e8ebdf33ae2bfd399683"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">maxIndOutDegree</a></td></tr>
275
+ <tr class="memdesc:ac7cb2228bd31e8ebdf33ae2bfd399683"><td class="mdescLeft">&#160;</td><td class="mdescRight">max indirect out degrees of <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> nodes. <a href="#ac7cb2228bd31e8ebdf33ae2bfd399683">More...</a><br /></td></tr>
276
+ <tr class="separator:ac7cb2228bd31e8ebdf33ae2bfd399683"><td class="memSeparator" colspan="2">&#160;</td></tr>
277
277
  <tr class="memitem:ad72d8706cdc97443556c0d878a393727"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#ad72d8706cdc97443556c0d878a393727">addTopLevelNodeTimeStart</a></td></tr>
278
278
  <tr class="separator:ad72d8706cdc97443556c0d878a393727"><td class="memSeparator" colspan="2">&#160;</td></tr>
279
279
  <tr class="memitem:a89f40e0cb98fdb65a320686b1698d909"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFGStat.html#a89f40e0cb98fdb65a320686b1698d909">addTopLevelNodeTimeEnd</a></td></tr>
@@ -810,19 +810,19 @@ Additional Inherited Members</h2></td></tr>
810
810
  </div><div class="memdoc">
811
811
 
812
812
  <p class="definition">Definition at line <a class="el" href="SVFGStat_8cpp_source.html#l00303">303</a> of file <a class="el" href="SVFGStat_8cpp_source.html">SVFGStat.cpp</a>.</p>
813
- <div class="fragment"><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;{</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="comment">// Incoming edge</span></div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html#a557334ef75bb5479b045f68c27b38701">SVFGEdge::SVFGEdgeSetTy</a>&amp; inEdges = node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">getInEdges</a>();</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="comment">// total in edge</span></div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keywordflow">if</span> (inEdges.size() &gt; <a class="code" href="classSVF_1_1SVFGStat.html#a3b50e2a1fa53126b6c372c9b8c87df28">maxInDegree</a>)</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a3b50e2a1fa53126b6c372c9b8c87df28">maxInDegree</a> = inEdges.size();</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a> += inEdges.size();</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="comment">// indirect in edge</span></div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> indInEdges = 0;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; SVFGEdge::SVFGEdgeSetTy::const_iterator edgeIt = inEdges.begin();</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; SVFGEdge::SVFGEdgeSetTy::const_iterator edgeEit = inEdges.end();</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; {</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1IndirectSVFGEdge.html">IndirectSVFGEdge</a>* edge = SVFUtil::dyn_cast&lt;IndirectSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; {</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; indInEdges++;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; nodeHasIndInEdge.insert(node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="comment">// get edge&#39;s weight</span></div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="comment">// TODO: try a new method to calculate weight.</span></div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a>&amp; cpts = edge-&gt;getPointsTo();</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">avgWeight</a> += cpts.count();</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">totalIndEdgeLabels</a> += cpts.count();</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; }</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;CallDirSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">totalDirCallEdge</a>++;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;CallIndSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">totalIndCallEdge</a>++;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;RetDirSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">totalDirRetEdge</a>++;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;RetIndSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">totalIndRetEdge</a>++;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; }</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">if</span> (indInEdges &gt; <a class="code" href="classSVF_1_1SVFGStat.html#abb5d525ff05e003039a4879505940264">maxIndInDegree</a>)</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#abb5d525ff05e003039a4879505940264">maxIndInDegree</a> = indInEdges;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a> += indInEdges;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="comment">/*-----------------------------------------------------*/</span></div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="comment">// Outgoing edge</span></div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html#a557334ef75bb5479b045f68c27b38701">SVFGEdge::SVFGEdgeSetTy</a>&amp; outEdges = node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#a2d9cd758d6f8c5189d9b90b74f43e009">getOutEdges</a>();</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="comment">// total out edge</span></div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">if</span> (outEdges.size() &gt; <a class="code" href="classSVF_1_1SVFGStat.html#a846cfa8d900219368ff12942ff0a0fa1">maxOutDegree</a>)</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a846cfa8d900219368ff12942ff0a0fa1">maxOutDegree</a> = outEdges.size();</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">totalOutEdge</a> += outEdges.size();</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="comment">// indirect out edge</span></div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> indOutEdges = 0;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; edgeIt = outEdges.begin();</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; edgeEit = outEdges.end();</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; {</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">if</span> ((*edgeIt)-&gt;isIndirectVFGEdge())</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; {</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; indOutEdges++;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; nodeHasIndOutEdge.insert(node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; }</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">if</span> (indOutEdges &gt; <a class="code" href="classSVF_1_1SVFGStat.html#a1fce01df52d7a682555c638411d37280">maxIndOutDegree</a>)</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a1fce01df52d7a682555c638411d37280">maxIndOutDegree</a> = indOutEdges;</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d">totalIndOutEdge</a> += indOutEdges;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;}</div><div class="ttc" id="classSVF_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#l00182">GenericGraph.h:182</a></div></div>
813
+ <div class="fragment"><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;{</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="comment">// Incoming edge</span></div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html#a557334ef75bb5479b045f68c27b38701">SVFGEdge::SVFGEdgeSetTy</a>&amp; inEdges = node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">getInEdges</a>();</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="comment">// total in edge</span></div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keywordflow">if</span> (inEdges.size() &gt; <a class="code" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">maxInDegree</a>)</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">maxInDegree</a> = inEdges.size();</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a> += inEdges.size();</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="comment">// indirect in edge</span></div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> indInEdges = 0;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; SVFGEdge::SVFGEdgeSetTy::const_iterator edgeIt = inEdges.begin();</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; SVFGEdge::SVFGEdgeSetTy::const_iterator edgeEit = inEdges.end();</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; {</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1IndirectSVFGEdge.html">IndirectSVFGEdge</a>* edge = SVFUtil::dyn_cast&lt;IndirectSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; {</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; indInEdges++;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; nodeHasIndInEdge.insert(node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="comment">// get edge&#39;s weight</span></div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="comment">// TODO: try a new method to calculate weight.</span></div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a>&amp; cpts = edge-&gt;getPointsTo();</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">avgWeight</a> += cpts.count();</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">totalIndEdgeLabels</a> += cpts.count();</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; }</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (SVFUtil::isa&lt;CallDirSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">totalDirCallEdge</a>++;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;CallIndSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">totalIndCallEdge</a>++;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;RetDirSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">totalDirRetEdge</a>++;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SVFUtil::isa&lt;RetIndSVFGEdge&gt;(*edgeIt))</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">totalIndRetEdge</a>++;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; }</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">if</span> (indInEdges &gt; <a class="code" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">maxIndInDegree</a>)</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">maxIndInDegree</a> = indInEdges;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a> += indInEdges;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="comment">/*-----------------------------------------------------*/</span></div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="comment">// Outgoing edge</span></div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html#a557334ef75bb5479b045f68c27b38701">SVFGEdge::SVFGEdgeSetTy</a>&amp; outEdges = node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#a2d9cd758d6f8c5189d9b90b74f43e009">getOutEdges</a>();</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="comment">// total out edge</span></div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">if</span> (outEdges.size() &gt; <a class="code" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">maxOutDegree</a>)</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">maxOutDegree</a> = outEdges.size();</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">totalOutEdge</a> += outEdges.size();</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="comment">// indirect out edge</span></div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> indOutEdges = 0;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; edgeIt = outEdges.begin();</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; edgeEit = outEdges.end();</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; {</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">if</span> ((*edgeIt)-&gt;isIndirectVFGEdge())</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; {</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; indOutEdges++;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; nodeHasIndOutEdge.insert(node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; }</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">if</span> (indOutEdges &gt; <a class="code" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">maxIndOutDegree</a>)</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">maxIndOutDegree</a> = indOutEdges;</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d">totalIndOutEdge</a> += indOutEdges;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFGStat_html_ac7cb2228bd31e8ebdf33ae2bfd399683"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">SVF::SVFGStat::maxIndOutDegree</a></div><div class="ttdeci">u32_t maxIndOutDegree</div><div class="ttdoc">max indirect out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00214">SVFGStat.h:214</a></div></div>
814
+ <div class="ttc" id="classSVF_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#l00182">GenericGraph.h:182</a></div></div>
815
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a6694ace7ee1b24b0c5ce42e06e4db2cf"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">SVF::SVFGStat::maxOutDegree</a></div><div class="ttdeci">u32_t maxOutDegree</div><div class="ttdoc">max out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00209">SVFGStat.h:209</a></div></div>
814
816
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a8cd6254435994d9aea27b5519491fc6a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">SVF::SVFGStat::totalIndInEdge</a></div><div class="ttdeci">int totalIndInEdge</div><div class="ttdoc">Total number of indirect SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00195">SVFGStat.h:195</a></div></div>
815
817
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a18211427d08f70d252512d387763ce4a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">SVF::SVFGStat::totalOutEdge</a></div><div class="ttdeci">int totalOutEdge</div><div class="ttdoc">Total number of outgoing SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00194">SVFGStat.h:194</a></div></div>
816
818
  <div class="ttc" id="classSVF_1_1VFGEdge_html_a557334ef75bb5479b045f68c27b38701"><div class="ttname"><a href="classSVF_1_1VFGEdge.html#a557334ef75bb5479b045f68c27b38701">SVF::VFGEdge::SVFGEdgeSetTy</a></div><div class="ttdeci">VFGEdgeSetTy SVFGEdgeSetTy</div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00118">VFGEdge.h:118</a></div></div>
817
- <div class="ttc" id="classSVF_1_1SVFGStat_html_abb5d525ff05e003039a4879505940264"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#abb5d525ff05e003039a4879505940264">SVF::SVFGStat::maxIndInDegree</a></div><div class="ttdeci">int maxIndInDegree</div><div class="ttdoc">max indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00213">SVFGStat.h:213</a></div></div>
818
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a846cfa8d900219368ff12942ff0a0fa1"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a846cfa8d900219368ff12942ff0a0fa1">SVF::SVFGStat::maxOutDegree</a></div><div class="ttdeci">unsigned maxOutDegree</div><div class="ttdoc">max out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00209">SVFGStat.h:209</a></div></div>
819
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a536b591b21756519262873462001f421"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">SVF::SVFGStat::maxInDegree</a></div><div class="ttdeci">u32_t maxInDegree</div><div class="ttdoc">max in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00208">SVFGStat.h:208</a></div></div>
819
820
  <div class="ttc" id="namespaceSVF_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="SVFBasicTypes_8h_source.html#l00077">SVFBasicTypes.h:77</a></div></div>
820
821
  <div class="ttc" id="classSVF_1_1SVFGStat_html_afd0f43a7d7138a8013930fd103ce7c47"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">SVF::SVFGStat::totalIndRetEdge</a></div><div class="ttdeci">int totalIndRetEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00200">SVFGStat.h:200</a></div></div>
821
822
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0f37f7f530e3fd494c9d6bb477ca68d5"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">SVF::SVFGStat::totalIndCallEdge</a></div><div class="ttdeci">int totalIndCallEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00199">SVFGStat.h:199</a></div></div>
822
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a3b50e2a1fa53126b6c372c9b8c87df28"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a3b50e2a1fa53126b6c372c9b8c87df28">SVF::SVFGStat::maxInDegree</a></div><div class="ttdeci">unsigned maxInDegree</div><div class="ttdoc">max in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00208">SVFGStat.h:208</a></div></div>
823
823
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a63bd38fa93d665037932bcda3cc342c6"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">SVF::SVFGStat::totalDirRetEdge</a></div><div class="ttdeci">int totalDirRetEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00202">SVFGStat.h:202</a></div></div>
824
824
  <div class="ttc" id="classSVF_1_1GenericNode_html_a2d9cd758d6f8c5189d9b90b74f43e009"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a2d9cd758d6f8c5189d9b90b74f43e009">SVF::GenericNode::getOutEdges</a></div><div class="ttdeci">const GEdgeSetTy &amp; getOutEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00178">GenericGraph.h:178</a></div></div>
825
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a1fce01df52d7a682555c638411d37280"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a1fce01df52d7a682555c638411d37280">SVF::SVFGStat::maxIndOutDegree</a></div><div class="ttdeci">int maxIndOutDegree</div><div class="ttdoc">max indirect out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00214">SVFGStat.h:214</a></div></div>
825
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a2f1bb17038de877fd1ccffdea3f3cde3"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">SVF::SVFGStat::maxIndInDegree</a></div><div class="ttdeci">u32_t maxIndInDegree</div><div class="ttdoc">max indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00213">SVFGStat.h:213</a></div></div>
826
826
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0a39eb7aab584cc285c32545ddb57ad8"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">SVF::SVFGStat::totalIndEdgeLabels</a></div><div class="ttdeci">int totalIndEdgeLabels</div><div class="ttdoc">Total number of l –o–&gt; lp. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00197">SVFGStat.h:197</a></div></div>
827
827
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a7929d8ba565ecb04efd236ccb19a4658"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">SVF::SVFGStat::totalInEdge</a></div><div class="ttdeci">int totalInEdge</div><div class="ttdoc">Total number of incoming SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00193">SVFGStat.h:193</a></div></div>
828
828
  <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00165">GenericGraph.h:165</a></div></div>
@@ -858,17 +858,17 @@ Additional Inherited Members</h2></td></tr>
858
858
  </div><div class="memdoc">
859
859
 
860
860
  <p class="definition">Definition at line <a class="el" href="SVFGStat_8cpp_source.html#l00149">149</a> of file <a class="el" href="SVFGStat_8cpp_source.html">SVFGStat.cpp</a>.</p>
861
- <div class="fragment"><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;{</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302">numOfNodes</a> = 0;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db">numOfFormalIn</a> = <a class="code" href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531">numOfFormalOut</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748">numOfFormalParam</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">numOfFormalRet</a> = 0;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a5365744d2ec3594e2255d274f7256569">numOfActualIn</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505">numOfActualOut</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a0494c59483520b57acdca95952c93d76">numOfActualParam</a> = <a class="code" href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414">numOfActualRet</a> = 0;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a">numOfLoad</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">numOfStore</a> = <a class="code" href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">numOfCopy</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905">numOfGep</a> = <a class="code" href="classSVF_1_1SVFGStat.html#aa6a39e0f1d41d67cb3441389a943bf5f">numOfAddr</a> = 0;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360">numOfMSSAPhi</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020">numOfPhi</a> = 0;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">avgWeight</a> = 0;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413">avgInDegree</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">avgOutDegree</a> = 0;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a3b50e2a1fa53126b6c372c9b8c87df28">maxInDegree</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a846cfa8d900219368ff12942ff0a0fa1">maxOutDegree</a> = 0;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">avgIndInDegree</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826">avgIndOutDegree</a> = 0;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#abb5d525ff05e003039a4879505940264">maxIndInDegree</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a1fce01df52d7a682555c638411d37280">maxIndOutDegree</a> = 0;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">totalOutEdge</a> = 0;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d">totalIndOutEdge</a> = 0;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">totalIndEdgeLabels</a> = 0;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">totalIndCallEdge</a> = <a class="code" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">totalIndRetEdge</a> = 0;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">totalDirCallEdge</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">totalDirRetEdge</a> = 0;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFGStat_html_ac86d6d7cb0090ab665729b56111ca464"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">SVF::SVFGStat::numOfCopy</a></div><div class="ttdeci">int numOfCopy</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00186">SVFGStat.h:186</a></div></div>
861
+ <div class="fragment"><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;{</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302">numOfNodes</a> = 0;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db">numOfFormalIn</a> = <a class="code" href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531">numOfFormalOut</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748">numOfFormalParam</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">numOfFormalRet</a> = 0;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a5365744d2ec3594e2255d274f7256569">numOfActualIn</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505">numOfActualOut</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a0494c59483520b57acdca95952c93d76">numOfActualParam</a> = <a class="code" href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414">numOfActualRet</a> = 0;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a">numOfLoad</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">numOfStore</a> = <a class="code" href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">numOfCopy</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905">numOfGep</a> = <a class="code" href="classSVF_1_1SVFGStat.html#aa6a39e0f1d41d67cb3441389a943bf5f">numOfAddr</a> = 0;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360">numOfMSSAPhi</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020">numOfPhi</a> = 0;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">avgWeight</a> = 0;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413">avgInDegree</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">avgOutDegree</a> = 0;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">maxInDegree</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">maxOutDegree</a> = 0;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">avgIndInDegree</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826">avgIndOutDegree</a> = 0;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">maxIndInDegree</a> = <a class="code" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">maxIndOutDegree</a> = 0;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">totalOutEdge</a> = 0;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d">totalIndOutEdge</a> = 0;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">totalIndEdgeLabels</a> = 0;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">totalIndCallEdge</a> = <a class="code" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">totalIndRetEdge</a> = 0;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">totalDirCallEdge</a> = <a class="code" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">totalDirRetEdge</a> = 0;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFGStat_html_ac86d6d7cb0090ab665729b56111ca464"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">SVF::SVFGStat::numOfCopy</a></div><div class="ttdeci">int numOfCopy</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00186">SVFGStat.h:186</a></div></div>
862
862
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a29807c066e60ef3905a5e01e0b86ffd2"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">SVF::SVFGStat::numOfFormalRet</a></div><div class="ttdeci">int numOfFormalRet</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00177">SVFGStat.h:177</a></div></div>
863
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_ac7cb2228bd31e8ebdf33ae2bfd399683"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">SVF::SVFGStat::maxIndOutDegree</a></div><div class="ttdeci">u32_t maxIndOutDegree</div><div class="ttdoc">max indirect out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00214">SVFGStat.h:214</a></div></div>
863
864
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a123305ef02a5bfa127a1e172beb5e8cf"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">SVF::SVFGStat::avgOutDegree</a></div><div class="ttdeci">int avgOutDegree</div><div class="ttdoc">average out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00207">SVFGStat.h:207</a></div></div>
865
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a6694ace7ee1b24b0c5ce42e06e4db2cf"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">SVF::SVFGStat::maxOutDegree</a></div><div class="ttdeci">u32_t maxOutDegree</div><div class="ttdoc">max out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00209">SVFGStat.h:209</a></div></div>
864
866
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a8cd6254435994d9aea27b5519491fc6a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">SVF::SVFGStat::totalIndInEdge</a></div><div class="ttdeci">int totalIndInEdge</div><div class="ttdoc">Total number of indirect SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00195">SVFGStat.h:195</a></div></div>
865
867
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a18211427d08f70d252512d387763ce4a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">SVF::SVFGStat::totalOutEdge</a></div><div class="ttdeci">int totalOutEdge</div><div class="ttdoc">Total number of outgoing SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00194">SVFGStat.h:194</a></div></div>
866
- <div class="ttc" id="classSVF_1_1SVFGStat_html_abb5d525ff05e003039a4879505940264"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#abb5d525ff05e003039a4879505940264">SVF::SVFGStat::maxIndInDegree</a></div><div class="ttdeci">int maxIndInDegree</div><div class="ttdoc">max indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00213">SVFGStat.h:213</a></div></div>
867
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a846cfa8d900219368ff12942ff0a0fa1"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a846cfa8d900219368ff12942ff0a0fa1">SVF::SVFGStat::maxOutDegree</a></div><div class="ttdeci">unsigned maxOutDegree</div><div class="ttdoc">max out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00209">SVFGStat.h:209</a></div></div>
868
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a536b591b21756519262873462001f421"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">SVF::SVFGStat::maxInDegree</a></div><div class="ttdeci">u32_t maxInDegree</div><div class="ttdoc">max in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00208">SVFGStat.h:208</a></div></div>
868
869
  <div class="ttc" id="classSVF_1_1SVFGStat_html_afd0f43a7d7138a8013930fd103ce7c47"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">SVF::SVFGStat::totalIndRetEdge</a></div><div class="ttdeci">int totalIndRetEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00200">SVFGStat.h:200</a></div></div>
869
870
  <div class="ttc" id="classSVF_1_1SVFGStat_html_ad37e5b2e57e02f8e4319f6d038c51414"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414">SVF::SVFGStat::numOfActualRet</a></div><div class="ttdeci">int numOfActualRet</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00182">SVFGStat.h:182</a></div></div>
870
871
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0f37f7f530e3fd494c9d6bb477ca68d5"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">SVF::SVFGStat::totalIndCallEdge</a></div><div class="ttdeci">int totalIndCallEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00199">SVFGStat.h:199</a></div></div>
871
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a3b50e2a1fa53126b6c372c9b8c87df28"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a3b50e2a1fa53126b6c372c9b8c87df28">SVF::SVFGStat::maxInDegree</a></div><div class="ttdeci">unsigned maxInDegree</div><div class="ttdoc">max in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00208">SVFGStat.h:208</a></div></div>
872
872
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a122555f5c4b9746cc2b7f38c7cd6b505"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505">SVF::SVFGStat::numOfActualOut</a></div><div class="ttdeci">int numOfActualOut</div><div class="ttdoc">number of actual out svfg nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00180">SVFGStat.h:180</a></div></div>
873
873
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a63bd38fa93d665037932bcda3cc342c6"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">SVF::SVFGStat::totalDirRetEdge</a></div><div class="ttdeci">int totalDirRetEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00202">SVFGStat.h:202</a></div></div>
874
874
  <div class="ttc" id="classSVF_1_1SVFGStat_html_ab20900eb0ecb0d2e1e601755848ac531"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531">SVF::SVFGStat::numOfFormalOut</a></div><div class="ttdeci">int numOfFormalOut</div><div class="ttdoc">number of formal out svfg nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00175">SVFGStat.h:175</a></div></div>
@@ -878,8 +878,8 @@ Additional Inherited Members</h2></td></tr>
878
878
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a4328f75f379e692901b95bacdf8dd413"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413">SVF::SVFGStat::avgInDegree</a></div><div class="ttdeci">int avgInDegree</div><div class="ttdoc">average in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00206">SVFGStat.h:206</a></div></div>
879
879
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a364d684cbefed1793d7c4506fb1fa0fd"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">SVF::SVFGStat::avgIndInDegree</a></div><div class="ttdeci">int avgIndInDegree</div><div class="ttdoc">average indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00211">SVFGStat.h:211</a></div></div>
880
880
  <div class="ttc" id="classSVF_1_1SVFGStat_html_abc5e079242666bb55ec7dbc7f258b3db"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db">SVF::SVFGStat::numOfFormalIn</a></div><div class="ttdeci">int numOfFormalIn</div><div class="ttdoc">number of formal in svfg nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00174">SVFGStat.h:174</a></div></div>
881
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a1fce01df52d7a682555c638411d37280"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a1fce01df52d7a682555c638411d37280">SVF::SVFGStat::maxIndOutDegree</a></div><div class="ttdeci">int maxIndOutDegree</div><div class="ttdoc">max indirect out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00214">SVFGStat.h:214</a></div></div>
882
881
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a862cd075a7c9d5019acfabe608ab7905"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905">SVF::SVFGStat::numOfGep</a></div><div class="ttdeci">int numOfGep</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00187">SVFGStat.h:187</a></div></div>
882
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a2f1bb17038de877fd1ccffdea3f3cde3"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">SVF::SVFGStat::maxIndInDegree</a></div><div class="ttdeci">u32_t maxIndInDegree</div><div class="ttdoc">max indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00213">SVFGStat.h:213</a></div></div>
883
883
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0a39eb7aab584cc285c32545ddb57ad8"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">SVF::SVFGStat::totalIndEdgeLabels</a></div><div class="ttdeci">int totalIndEdgeLabels</div><div class="ttdoc">Total number of l –o–&gt; lp. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00197">SVFGStat.h:197</a></div></div>
884
884
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a7929d8ba565ecb04efd236ccb19a4658"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">SVF::SVFGStat::totalInEdge</a></div><div class="ttdeci">int totalInEdge</div><div class="ttdoc">Total number of incoming SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00193">SVFGStat.h:193</a></div></div>
885
885
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a982ce49695344bcde4cbbb445de69c8d"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d">SVF::SVFGStat::totalIndOutEdge</a></div><div class="ttdeci">int totalIndOutEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00196">SVFGStat.h:196</a></div></div>
@@ -1251,8 +1251,8 @@ Additional Inherited Members</h2></td></tr>
1251
1251
  </div><!-- fragment -->
1252
1252
  </div>
1253
1253
  </div>
1254
- <a id="ab11b1fbef2bd7cfc9bf8e1b993dbfa11"></a>
1255
- <h2 class="memtitle"><span class="permalink"><a href="#ab11b1fbef2bd7cfc9bf8e1b993dbfa11">&#9670;&nbsp;</a></span>performStat()</h2>
1254
+ <a id="a037600bfff11659542f8595d8700dec4"></a>
1255
+ <h2 class="memtitle"><span class="permalink"><a href="#a037600bfff11659542f8595d8700dec4">&#9670;&nbsp;</a></span>performStat()</h2>
1256
1256
 
1257
1257
  <div class="memitem">
1258
1258
  <div class="memproto">
@@ -1269,7 +1269,7 @@ Additional Inherited Members</h2></td></tr>
1269
1269
  </table>
1270
1270
  </td>
1271
1271
  <td class="mlabels-right">
1272
- <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
1272
+ <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1273
1273
  </tr>
1274
1274
  </table>
1275
1275
  </div><div class="memdoc">
@@ -1277,21 +1277,21 @@ Additional Inherited Members</h2></td></tr>
1277
1277
  <p>Reimplemented from <a class="el" href="classSVF_1_1PTAStat.html#acfed70588cf921694db35990ec3c7497">SVF::PTAStat</a>.</p>
1278
1278
 
1279
1279
  <p class="definition">Definition at line <a class="el" href="SVFGStat_8cpp_source.html#l00179">179</a> of file <a class="el" href="SVFGStat_8cpp_source.html">SVFGStat.cpp</a>.</p>
1280
- <div class="fragment"><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;{</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afe854f7416ea408104721a083ee9fee0">endClk</a>();</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a737352ac44d808c55a91e8bd5e9e0aac">clear</a>();</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a3c016e166b8e84eb3b98bc3717cba5d8">processGraph</a>();</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;TotalTime&quot;</span>] = (<a class="code" href="classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7">endTime</a> - <a class="code" href="classSVF_1_1PTAStat.html#a59e0fe6fa506f1cf319b5acaf9d28be9">startTime</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;ConnDirEdgeTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#ac243fababbb9d2f3efbea5411f947c21">connectDirSVFGEdgeTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#a0a967faad014cdd53f5dddfdc59edbc3">connectDirSVFGEdgeTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;ConnIndEdgeTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#a3210cc1283669129234aa2c3feb67654">connectIndSVFGEdgeTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#a2a697caecf23413187aef90a8097e0b0">connectIndSVFGEdgeTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;TLNodeTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#a89f40e0cb98fdb65a320686b1698d909">addTopLevelNodeTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#ad72d8706cdc97443556c0d878a393727">addTopLevelNodeTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;ATNodeTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#a2f7a49d2b3aae6cdb1cbc0e8ae18d1c2">addAddrTakenNodeTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#aa35ff9ddfc4f00be698a903adf3285f5">addAddrTakenNodeTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;OptTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#ac06625b26e1aa1a0ed171c9f5cea0f35">svfgOptTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#a1e92f02d43f06ef31e107859d1bd8ac2">svfgOptTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalNode&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302">numOfNodes</a>;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;FormalIn&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db">numOfFormalIn</a>;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;FormalOut&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531">numOfFormalOut</a>;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;FormalParam&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748">numOfFormalParam</a>;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;FormalRet&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">numOfFormalRet</a>;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;ActualIn&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a5365744d2ec3594e2255d274f7256569">numOfActualIn</a>;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;ActualOut&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505">numOfActualOut</a>;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;ActualParam&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a0494c59483520b57acdca95952c93d76">numOfActualParam</a>;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;ActualRet&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414">numOfActualRet</a>;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Addr&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#aa6a39e0f1d41d67cb3441389a943bf5f">numOfAddr</a>;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Copy&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">numOfCopy</a>;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Gep&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905">numOfGep</a>;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Store&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">numOfStore</a>;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Load&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a">numOfLoad</a>;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;PHI&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020">numOfPhi</a>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MSSAPhi&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360">numOfMSSAPhi</a>;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;AvgWeight&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a> == 0) ? 0 : ((<span class="keywordtype">double</span>)<a class="code" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">avgWeight</a> / <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a>);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a>;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;DirectEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a> - <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a>;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndirectEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a>;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndirectEdgeLabels&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">totalIndEdgeLabels</a>;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndCallEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">totalIndCallEdge</a>;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndRetEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">totalIndRetEdge</a>;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;DirectCallEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">totalDirCallEdge</a>;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;DirectRetEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">totalDirRetEdge</a>;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;AvgInDegree&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413">avgInDegree</a>;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;AvgOutDegree&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">avgOutDegree</a>;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxInDegree&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a3b50e2a1fa53126b6c372c9b8c87df28">maxInDegree</a>;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxOutDegree&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a846cfa8d900219368ff12942ff0a0fa1">maxOutDegree</a>;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;AvgIndInDeg&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">avgIndInDegree</a>;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;AvgIndOutDeg&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826">avgIndOutDegree</a>;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxIndInDeg&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#abb5d525ff05e003039a4879505940264">maxIndInDegree</a>;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxIndOutDeg&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a1fce01df52d7a682555c638411d37280">maxIndOutDegree</a>;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a67e0f3d1eb1cf8bf6dda57b602d6dac7">printStat</a>();</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFGStat_html_ac86d6d7cb0090ab665729b56111ca464"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">SVF::SVFGStat::numOfCopy</a></div><div class="ttdeci">int numOfCopy</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00186">SVFGStat.h:186</a></div></div>
1280
+ <div class="fragment"><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;{</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afe854f7416ea408104721a083ee9fee0">endClk</a>();</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a737352ac44d808c55a91e8bd5e9e0aac">clear</a>();</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a3c016e166b8e84eb3b98bc3717cba5d8">processGraph</a>();</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;TotalTime&quot;</span>] = (<a class="code" href="classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7">endTime</a> - <a class="code" href="classSVF_1_1PTAStat.html#a59e0fe6fa506f1cf319b5acaf9d28be9">startTime</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;ConnDirEdgeTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#ac243fababbb9d2f3efbea5411f947c21">connectDirSVFGEdgeTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#a0a967faad014cdd53f5dddfdc59edbc3">connectDirSVFGEdgeTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;ConnIndEdgeTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#a3210cc1283669129234aa2c3feb67654">connectIndSVFGEdgeTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#a2a697caecf23413187aef90a8097e0b0">connectIndSVFGEdgeTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;TLNodeTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#a89f40e0cb98fdb65a320686b1698d909">addTopLevelNodeTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#ad72d8706cdc97443556c0d878a393727">addTopLevelNodeTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;ATNodeTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#a2f7a49d2b3aae6cdb1cbc0e8ae18d1c2">addAddrTakenNodeTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#aa35ff9ddfc4f00be698a903adf3285f5">addAddrTakenNodeTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;OptTime&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#ac06625b26e1aa1a0ed171c9f5cea0f35">svfgOptTimeEnd</a> - <a class="code" href="classSVF_1_1SVFGStat.html#a1e92f02d43f06ef31e107859d1bd8ac2">svfgOptTimeStart</a>)/<a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalNode&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302">numOfNodes</a>;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;FormalIn&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db">numOfFormalIn</a>;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;FormalOut&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531">numOfFormalOut</a>;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;FormalParam&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748">numOfFormalParam</a>;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;FormalRet&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">numOfFormalRet</a>;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;ActualIn&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a5365744d2ec3594e2255d274f7256569">numOfActualIn</a>;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;ActualOut&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505">numOfActualOut</a>;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;ActualParam&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a0494c59483520b57acdca95952c93d76">numOfActualParam</a>;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;ActualRet&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414">numOfActualRet</a>;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Addr&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#aa6a39e0f1d41d67cb3441389a943bf5f">numOfAddr</a>;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Copy&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">numOfCopy</a>;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Gep&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905">numOfGep</a>;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Store&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">numOfStore</a>;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;Load&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a">numOfLoad</a>;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;PHI&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020">numOfPhi</a>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MSSAPhi&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360">numOfMSSAPhi</a>;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>[<span class="stringliteral">&quot;AvgWeight&quot;</span>] = (<a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a> == 0) ? 0 : ((<span class="keywordtype">double</span>)<a class="code" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">avgWeight</a> / <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a>);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a>;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;DirectEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a> - <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a>;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndirectEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a>;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndirectEdgeLabels&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">totalIndEdgeLabels</a>;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndCallEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">totalIndCallEdge</a>;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndRetEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">totalIndRetEdge</a>;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;DirectCallEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">totalDirCallEdge</a>;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;DirectRetEdge&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">totalDirRetEdge</a>;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;AvgInDegree&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413">avgInDegree</a>;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;AvgOutDegree&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">avgOutDegree</a>;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxInDegree&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">maxInDegree</a>;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxOutDegree&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">maxOutDegree</a>;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;AvgIndInDeg&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">avgIndInDegree</a>;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;AvgIndOutDeg&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826">avgIndOutDegree</a>;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxIndInDeg&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">maxIndInDegree</a>;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxIndOutDeg&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">maxIndOutDegree</a>;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a2e0adcfbe233523212e1ffbf5b01ba88">printStat</a>();</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFGStat_html_ac86d6d7cb0090ab665729b56111ca464"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">SVF::SVFGStat::numOfCopy</a></div><div class="ttdeci">int numOfCopy</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00186">SVFGStat.h:186</a></div></div>
1281
1281
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a29807c066e60ef3905a5e01e0b86ffd2"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">SVF::SVFGStat::numOfFormalRet</a></div><div class="ttdeci">int numOfFormalRet</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00177">SVFGStat.h:177</a></div></div>
1282
1282
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a89f40e0cb98fdb65a320686b1698d909"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a89f40e0cb98fdb65a320686b1698d909">SVF::SVFGStat::addTopLevelNodeTimeEnd</a></div><div class="ttdeci">double addTopLevelNodeTimeEnd</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00217">SVFGStat.h:217</a></div></div>
1283
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_ac7cb2228bd31e8ebdf33ae2bfd399683"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">SVF::SVFGStat::maxIndOutDegree</a></div><div class="ttdeci">u32_t maxIndOutDegree</div><div class="ttdoc">max indirect out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00214">SVFGStat.h:214</a></div></div>
1283
1284
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a123305ef02a5bfa127a1e172beb5e8cf"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">SVF::SVFGStat::avgOutDegree</a></div><div class="ttdeci">int avgOutDegree</div><div class="ttdoc">average out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00207">SVFGStat.h:207</a></div></div>
1285
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a6694ace7ee1b24b0c5ce42e06e4db2cf"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">SVF::SVFGStat::maxOutDegree</a></div><div class="ttdeci">u32_t maxOutDegree</div><div class="ttdoc">max out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00209">SVFGStat.h:209</a></div></div>
1284
1286
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a8cd6254435994d9aea27b5519491fc6a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">SVF::SVFGStat::totalIndInEdge</a></div><div class="ttdeci">int totalIndInEdge</div><div class="ttdoc">Total number of indirect SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00195">SVFGStat.h:195</a></div></div>
1285
1287
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a2a697caecf23413187aef90a8097e0b0"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a2a697caecf23413187aef90a8097e0b0">SVF::SVFGStat::connectIndSVFGEdgeTimeStart</a></div><div class="ttdeci">double connectIndSVFGEdgeTimeStart</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00225">SVFGStat.h:225</a></div></div>
1286
1288
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0a967faad014cdd53f5dddfdc59edbc3"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0a967faad014cdd53f5dddfdc59edbc3">SVF::SVFGStat::connectDirSVFGEdgeTimeStart</a></div><div class="ttdeci">double connectDirSVFGEdgeTimeStart</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00222">SVFGStat.h:222</a></div></div>
1287
- <div class="ttc" id="classSVF_1_1SVFGStat_html_abb5d525ff05e003039a4879505940264"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#abb5d525ff05e003039a4879505940264">SVF::SVFGStat::maxIndInDegree</a></div><div class="ttdeci">int maxIndInDegree</div><div class="ttdoc">max indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00213">SVFGStat.h:213</a></div></div>
1288
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a67e0f3d1eb1cf8bf6dda57b602d6dac7"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a67e0f3d1eb1cf8bf6dda57b602d6dac7">SVF::SVFGStat::printStat</a></div><div class="ttdeci">virtual void printStat()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00501">SVFGStat.cpp:501</a></div></div>
1289
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a846cfa8d900219368ff12942ff0a0fa1"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a846cfa8d900219368ff12942ff0a0fa1">SVF::SVFGStat::maxOutDegree</a></div><div class="ttdeci">unsigned maxOutDegree</div><div class="ttdoc">max out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00209">SVFGStat.h:209</a></div></div>
1289
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a536b591b21756519262873462001f421"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">SVF::SVFGStat::maxInDegree</a></div><div class="ttdeci">u32_t maxInDegree</div><div class="ttdoc">max in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00208">SVFGStat.h:208</a></div></div>
1290
1290
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a1e92f02d43f06ef31e107859d1bd8ac2"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a1e92f02d43f06ef31e107859d1bd8ac2">SVF::SVFGStat::svfgOptTimeStart</a></div><div class="ttdeci">double svfgOptTimeStart</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00228">SVFGStat.h:228</a></div></div>
1291
1291
  <div class="ttc" id="classSVF_1_1SVFGStat_html_afd0f43a7d7138a8013930fd103ce7c47"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">SVF::SVFGStat::totalIndRetEdge</a></div><div class="ttdeci">int totalIndRetEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00200">SVFGStat.h:200</a></div></div>
1292
1292
  <div class="ttc" id="classSVF_1_1SVFGStat_html_ad37e5b2e57e02f8e4319f6d038c51414"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414">SVF::SVFGStat::numOfActualRet</a></div><div class="ttdeci">int numOfActualRet</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00182">SVFGStat.h:182</a></div></div>
1293
1293
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0f37f7f530e3fd494c9d6bb477ca68d5"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">SVF::SVFGStat::totalIndCallEdge</a></div><div class="ttdeci">int totalIndCallEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00199">SVFGStat.h:199</a></div></div>
1294
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a3b50e2a1fa53126b6c372c9b8c87df28"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a3b50e2a1fa53126b6c372c9b8c87df28">SVF::SVFGStat::maxInDegree</a></div><div class="ttdeci">unsigned maxInDegree</div><div class="ttdoc">max in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00208">SVFGStat.h:208</a></div></div>
1294
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a2e0adcfbe233523212e1ffbf5b01ba88"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a2e0adcfbe233523212e1ffbf5b01ba88">SVF::SVFGStat::printStat</a></div><div class="ttdeci">virtual void printStat(std::string str=&quot;&quot;) override</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00501">SVFGStat.cpp:501</a></div></div>
1295
1295
  <div class="ttc" id="classSVF_1_1SVFGStat_html_aa35ff9ddfc4f00be698a903adf3285f5"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#aa35ff9ddfc4f00be698a903adf3285f5">SVF::SVFGStat::addAddrTakenNodeTimeStart</a></div><div class="ttdeci">double addAddrTakenNodeTimeStart</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00219">SVFGStat.h:219</a></div></div>
1296
1296
  <div class="ttc" id="classSVF_1_1PTAStat_html_a267ba4aac2e7ceb65f008f9486d3d9f7"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7">SVF::PTAStat::endTime</a></div><div class="ttdeci">double endTime</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00153">PTAStat.h:153</a></div></div>
1297
1297
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a122555f5c4b9746cc2b7f38c7cd6b505"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505">SVF::SVFGStat::numOfActualOut</a></div><div class="ttdeci">int numOfActualOut</div><div class="ttdoc">number of actual out svfg nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00180">SVFGStat.h:180</a></div></div>
@@ -1310,8 +1310,8 @@ Additional Inherited Members</h2></td></tr>
1310
1310
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a737352ac44d808c55a91e8bd5e9e0aac"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a737352ac44d808c55a91e8bd5e9e0aac">SVF::SVFGStat::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00149">SVFGStat.cpp:149</a></div></div>
1311
1311
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a364d684cbefed1793d7c4506fb1fa0fd"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">SVF::SVFGStat::avgIndInDegree</a></div><div class="ttdeci">int avgIndInDegree</div><div class="ttdoc">average indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00211">SVFGStat.h:211</a></div></div>
1312
1312
  <div class="ttc" id="classSVF_1_1SVFGStat_html_abc5e079242666bb55ec7dbc7f258b3db"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db">SVF::SVFGStat::numOfFormalIn</a></div><div class="ttdeci">int numOfFormalIn</div><div class="ttdoc">number of formal in svfg nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00174">SVFGStat.h:174</a></div></div>
1313
- <div class="ttc" id="classSVF_1_1SVFGStat_html_a1fce01df52d7a682555c638411d37280"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a1fce01df52d7a682555c638411d37280">SVF::SVFGStat::maxIndOutDegree</a></div><div class="ttdeci">int maxIndOutDegree</div><div class="ttdoc">max indirect out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00214">SVFGStat.h:214</a></div></div>
1314
1313
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a862cd075a7c9d5019acfabe608ab7905"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905">SVF::SVFGStat::numOfGep</a></div><div class="ttdeci">int numOfGep</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00187">SVFGStat.h:187</a></div></div>
1314
+ <div class="ttc" id="classSVF_1_1SVFGStat_html_a2f1bb17038de877fd1ccffdea3f3cde3"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">SVF::SVFGStat::maxIndInDegree</a></div><div class="ttdeci">u32_t maxIndInDegree</div><div class="ttdoc">max indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00213">SVFGStat.h:213</a></div></div>
1315
1315
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0a39eb7aab584cc285c32545ddb57ad8"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">SVF::SVFGStat::totalIndEdgeLabels</a></div><div class="ttdeci">int totalIndEdgeLabels</div><div class="ttdoc">Total number of l –o–&gt; lp. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00197">SVFGStat.h:197</a></div></div>
1316
1316
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a7929d8ba565ecb04efd236ccb19a4658"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">SVF::SVFGStat::totalInEdge</a></div><div class="ttdeci">int totalInEdge</div><div class="ttdoc">Total number of incoming SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00193">SVFGStat.h:193</a></div></div>
1317
1317
  <div class="ttc" id="classSVF_1_1SVFGStat_html_ac243fababbb9d2f3efbea5411f947c21"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#ac243fababbb9d2f3efbea5411f947c21">SVF::SVFGStat::connectDirSVFGEdgeTimeEnd</a></div><div class="ttdeci">double connectDirSVFGEdgeTimeEnd</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00223">SVFGStat.h:223</a></div></div>
@@ -1331,8 +1331,8 @@ Additional Inherited Members</h2></td></tr>
1331
1331
  </div><!-- fragment -->
1332
1332
  </div>
1333
1333
  </div>
1334
- <a id="a67e0f3d1eb1cf8bf6dda57b602d6dac7"></a>
1335
- <h2 class="memtitle"><span class="permalink"><a href="#a67e0f3d1eb1cf8bf6dda57b602d6dac7">&#9670;&nbsp;</a></span>printStat()</h2>
1334
+ <a id="a2e0adcfbe233523212e1ffbf5b01ba88"></a>
1335
+ <h2 class="memtitle"><span class="permalink"><a href="#a2e0adcfbe233523212e1ffbf5b01ba88">&#9670;&nbsp;</a></span>printStat()</h2>
1336
1336
 
1337
1337
  <div class="memitem">
1338
1338
  <div class="memproto">
@@ -1343,19 +1343,20 @@ Additional Inherited Members</h2></td></tr>
1343
1343
  <tr>
1344
1344
  <td class="memname">void SVFGStat::printStat </td>
1345
1345
  <td>(</td>
1346
- <td class="paramname"></td><td>)</td>
1346
+ <td class="paramtype">std::string&#160;</td>
1347
+ <td class="paramname"><em>str</em> = <code>&quot;&quot;</code></td><td>)</td>
1347
1348
  <td></td>
1348
1349
  </tr>
1349
1350
  </table>
1350
1351
  </td>
1351
1352
  <td class="mlabels-right">
1352
- <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
1353
+ <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
1353
1354
  </tr>
1354
1355
  </table>
1355
1356
  </div><div class="memdoc">
1356
1357
 
1357
1358
  <p class="definition">Definition at line <a class="el" href="SVFGStat_8cpp_source.html#l00501">501</a> of file <a class="el" href="SVFGStat_8cpp_source.html">SVFGStat.cpp</a>.</p>
1358
- <div class="fragment"><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;{</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****SVFG Statistics****\n&quot;</span>;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">PTAStat::printStat</a>();</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
1359
+ <div class="fragment"><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;{</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****SVFG Statistics****\n&quot;</span>;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">PTAStat::printStat</a>(str);</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;}</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
1359
1360
  <div class="ttc" id="classSVF_1_1PTAStat_html_aa5f455bfa79743b8e263431593d29bbf"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(string str=&quot;&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00290">PTAStat.cpp:290</a></div></div>
1360
1361
  </div><!-- fragment -->
1361
1362
  </div>
@@ -1928,8 +1929,8 @@ Additional Inherited Members</h2></td></tr>
1928
1929
 
1929
1930
  </div>
1930
1931
  </div>
1931
- <a id="a3b50e2a1fa53126b6c372c9b8c87df28"></a>
1932
- <h2 class="memtitle"><span class="permalink"><a href="#a3b50e2a1fa53126b6c372c9b8c87df28">&#9670;&nbsp;</a></span>maxInDegree</h2>
1932
+ <a id="a536b591b21756519262873462001f421"></a>
1933
+ <h2 class="memtitle"><span class="permalink"><a href="#a536b591b21756519262873462001f421">&#9670;&nbsp;</a></span>maxInDegree</h2>
1933
1934
 
1934
1935
  <div class="memitem">
1935
1936
  <div class="memproto">
@@ -1938,7 +1939,7 @@ Additional Inherited Members</h2></td></tr>
1938
1939
  <td class="mlabels-left">
1939
1940
  <table class="memname">
1940
1941
  <tr>
1941
- <td class="memname">unsigned SVF::SVFGStat::maxInDegree</td>
1942
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::SVFGStat::maxInDegree</td>
1942
1943
  </tr>
1943
1944
  </table>
1944
1945
  </td>
@@ -1954,8 +1955,8 @@ Additional Inherited Members</h2></td></tr>
1954
1955
 
1955
1956
  </div>
1956
1957
  </div>
1957
- <a id="abb5d525ff05e003039a4879505940264"></a>
1958
- <h2 class="memtitle"><span class="permalink"><a href="#abb5d525ff05e003039a4879505940264">&#9670;&nbsp;</a></span>maxIndInDegree</h2>
1958
+ <a id="a2f1bb17038de877fd1ccffdea3f3cde3"></a>
1959
+ <h2 class="memtitle"><span class="permalink"><a href="#a2f1bb17038de877fd1ccffdea3f3cde3">&#9670;&nbsp;</a></span>maxIndInDegree</h2>
1959
1960
 
1960
1961
  <div class="memitem">
1961
1962
  <div class="memproto">
@@ -1964,7 +1965,7 @@ Additional Inherited Members</h2></td></tr>
1964
1965
  <td class="mlabels-left">
1965
1966
  <table class="memname">
1966
1967
  <tr>
1967
- <td class="memname">int SVF::SVFGStat::maxIndInDegree</td>
1968
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::SVFGStat::maxIndInDegree</td>
1968
1969
  </tr>
1969
1970
  </table>
1970
1971
  </td>
@@ -1980,8 +1981,8 @@ Additional Inherited Members</h2></td></tr>
1980
1981
 
1981
1982
  </div>
1982
1983
  </div>
1983
- <a id="a1fce01df52d7a682555c638411d37280"></a>
1984
- <h2 class="memtitle"><span class="permalink"><a href="#a1fce01df52d7a682555c638411d37280">&#9670;&nbsp;</a></span>maxIndOutDegree</h2>
1984
+ <a id="ac7cb2228bd31e8ebdf33ae2bfd399683"></a>
1985
+ <h2 class="memtitle"><span class="permalink"><a href="#ac7cb2228bd31e8ebdf33ae2bfd399683">&#9670;&nbsp;</a></span>maxIndOutDegree</h2>
1985
1986
 
1986
1987
  <div class="memitem">
1987
1988
  <div class="memproto">
@@ -1990,7 +1991,7 @@ Additional Inherited Members</h2></td></tr>
1990
1991
  <td class="mlabels-left">
1991
1992
  <table class="memname">
1992
1993
  <tr>
1993
- <td class="memname">int SVF::SVFGStat::maxIndOutDegree</td>
1994
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::SVFGStat::maxIndOutDegree</td>
1994
1995
  </tr>
1995
1996
  </table>
1996
1997
  </td>
@@ -2006,8 +2007,8 @@ Additional Inherited Members</h2></td></tr>
2006
2007
 
2007
2008
  </div>
2008
2009
  </div>
2009
- <a id="a846cfa8d900219368ff12942ff0a0fa1"></a>
2010
- <h2 class="memtitle"><span class="permalink"><a href="#a846cfa8d900219368ff12942ff0a0fa1">&#9670;&nbsp;</a></span>maxOutDegree</h2>
2010
+ <a id="a6694ace7ee1b24b0c5ce42e06e4db2cf"></a>
2011
+ <h2 class="memtitle"><span class="permalink"><a href="#a6694ace7ee1b24b0c5ce42e06e4db2cf">&#9670;&nbsp;</a></span>maxOutDegree</h2>
2011
2012
 
2012
2013
  <div class="memitem">
2013
2014
  <div class="memproto">
@@ -2016,7 +2017,7 @@ Additional Inherited Members</h2></td></tr>
2016
2017
  <td class="mlabels-left">
2017
2018
  <table class="memname">
2018
2019
  <tr>
2019
- <td class="memname">unsigned SVF::SVFGStat::maxOutDegree</td>
2020
+ <td class="memname"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> SVF::SVFGStat::maxOutDegree</td>
2020
2021
  </tr>
2021
2022
  </table>
2022
2023
  </td>