svf-tools 1.0.555 → 1.0.558

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 (190) hide show
  1. package/README.md +9 -9
  2. package/SVF-doxygen/html/html/AndersenPWC_8h_source.html +15 -15
  3. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +12 -11
  4. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +11 -10
  5. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +47 -46
  6. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +9 -8
  7. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +35 -34
  8. package/SVF-doxygen/html/html/Andersen_8h_source.html +6 -6
  9. package/SVF-doxygen/html/html/CHGBuilder_8cpp.html +2 -2
  10. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +19 -18
  11. package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +15 -15
  12. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +4 -4
  13. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +13 -12
  14. package/SVF-doxygen/html/html/DDAPass_8h_source.html +11 -11
  15. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +20 -19
  16. package/SVF-doxygen/html/html/DDAStat_8h_source.html +13 -13
  17. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +2 -2
  18. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +3 -3
  19. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +5 -4
  20. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +2 -2
  21. package/SVF-doxygen/html/html/MHP_8cpp_source.html +2 -2
  22. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +5 -5
  23. package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
  24. package/SVF-doxygen/html/html/MTA_8cpp_source.html +2 -2
  25. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +2 -2
  26. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +2 -2
  27. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +67 -69
  28. package/SVF-doxygen/html/html/PTAStat_8h.html +1 -0
  29. package/SVF-doxygen/html/html/PTAStat_8h_source.html +70 -76
  30. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +2 -2
  31. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
  32. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +2 -1
  33. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +5 -4
  34. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +22 -21
  35. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +5 -5
  36. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +5 -5
  37. package/SVF-doxygen/html/html/SVFG_8h_source.html +3 -3
  38. package/SVF-doxygen/html/html/SVFStat_8cpp.html +81 -0
  39. package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +85 -0
  40. package/SVF-doxygen/html/html/SVFStat_8h.html +94 -0
  41. package/SVF-doxygen/html/html/SVFStat_8h_source.html +103 -0
  42. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
  43. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
  44. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +3 -3
  45. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +2 -2
  46. package/SVF-doxygen/html/html/WPAStat_8h_source.html +8 -8
  47. package/SVF-doxygen/html/html/annotated.html +39 -38
  48. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +79 -79
  49. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +15 -15
  50. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +37 -37
  51. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +1 -1
  52. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +22 -22
  53. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat-members.html +24 -22
  54. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +97 -86
  55. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.png +0 -0
  56. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +24 -24
  57. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +47 -47
  58. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +4 -4
  59. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +30 -30
  60. package/SVF-doxygen/html/html/classSVF_1_1DDAStat-members.html +24 -23
  61. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +80 -67
  62. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.png +0 -0
  63. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +4 -4
  64. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +4 -4
  65. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +26 -26
  66. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat-members.html +24 -22
  67. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +67 -56
  68. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.png +0 -0
  69. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat-members.html +23 -21
  70. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +55 -42
  71. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.png +0 -0
  72. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +6 -6
  73. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +4 -4
  74. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +2 -2
  75. package/SVF-doxygen/html/html/classSVF_1_1MTAStat-members.html +25 -23
  76. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +59 -48
  77. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.png +0 -0
  78. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +5 -5
  79. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat-members.html +22 -21
  80. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +57 -44
  81. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.png +0 -0
  82. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +6 -6
  83. package/SVF-doxygen/html/html/classSVF_1_1Options.html +2 -2
  84. package/SVF-doxygen/html/html/classSVF_1_1PTAStat-members.html +24 -22
  85. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +186 -420
  86. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.png +0 -0
  87. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +2 -2
  88. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +12 -12
  89. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat-members.html +33 -32
  90. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +100 -87
  91. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.png +0 -0
  92. package/SVF-doxygen/html/html/classSVF_1_1SVFStat-members.html +100 -0
  93. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +605 -0
  94. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.png +0 -0
  95. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +1 -1
  96. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +4 -4
  97. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +12 -12
  98. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat-members.html +26 -24
  99. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +65 -54
  100. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.png +0 -0
  101. package/SVF-doxygen/html/html/classes.html +50 -50
  102. package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
  103. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  104. package/SVF-doxygen/html/html/dir_862d3276083eaac55caed79b9120bf29.html +2 -0
  105. package/SVF-doxygen/html/html/dir_95e22971b5dbae2382075a3453e365b4.html +2 -0
  106. package/SVF-doxygen/html/html/files.html +10 -8
  107. package/SVF-doxygen/html/html/functions_0x7e.html +3 -0
  108. package/SVF-doxygen/html/html/functions_c.html +28 -29
  109. package/SVF-doxygen/html/html/functions_e.html +3 -2
  110. package/SVF-doxygen/html/html/functions_enum.html +1 -1
  111. package/SVF-doxygen/html/html/functions_eval_c.html +1 -1
  112. package/SVF-doxygen/html/html/functions_eval_w.html +1 -1
  113. package/SVF-doxygen/html/html/functions_f.html +3 -3
  114. package/SVF-doxygen/html/html/functions_func_0x7e.html +3 -0
  115. package/SVF-doxygen/html/html/functions_func_c.html +28 -27
  116. package/SVF-doxygen/html/html/functions_func_e.html +1 -1
  117. package/SVF-doxygen/html/html/functions_func_g.html +1 -1
  118. package/SVF-doxygen/html/html/functions_func_p.html +9 -7
  119. package/SVF-doxygen/html/html/functions_func_s.html +14 -11
  120. package/SVF-doxygen/html/html/functions_g.html +2 -2
  121. package/SVF-doxygen/html/html/functions_l.html +6 -6
  122. package/SVF-doxygen/html/html/functions_m.html +2 -1
  123. package/SVF-doxygen/html/html/functions_n.html +1 -1
  124. package/SVF-doxygen/html/html/functions_o.html +3 -3
  125. package/SVF-doxygen/html/html/functions_p.html +25 -21
  126. package/SVF-doxygen/html/html/functions_r.html +7 -3
  127. package/SVF-doxygen/html/html/functions_s.html +24 -22
  128. package/SVF-doxygen/html/html/functions_t.html +8 -8
  129. package/SVF-doxygen/html/html/functions_type_n.html +1 -1
  130. package/SVF-doxygen/html/html/functions_type_s.html +1 -1
  131. package/SVF-doxygen/html/html/functions_type_t.html +1 -1
  132. package/SVF-doxygen/html/html/functions_vars_e.html +1 -0
  133. package/SVF-doxygen/html/html/functions_vars_g.html +1 -1
  134. package/SVF-doxygen/html/html/functions_vars_m.html +1 -0
  135. package/SVF-doxygen/html/html/functions_vars_s.html +1 -0
  136. package/SVF-doxygen/html/html/functions_vars_t.html +1 -1
  137. package/SVF-doxygen/html/html/functions_w.html +12 -12
  138. package/SVF-doxygen/html/html/hierarchy.html +47 -46
  139. package/SVF-doxygen/html/html/namespaceSVF.html +2 -0
  140. package/SVF-doxygen/html/html/search/all_10.js +13 -13
  141. package/SVF-doxygen/html/html/search/all_11.js +3 -3
  142. package/SVF-doxygen/html/html/search/all_12.js +11 -8
  143. package/SVF-doxygen/html/html/search/all_13.js +4 -4
  144. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  145. package/SVF-doxygen/html/html/search/all_16.js +3 -3
  146. package/SVF-doxygen/html/html/search/all_19.js +1 -0
  147. package/SVF-doxygen/html/html/search/all_3.js +3 -3
  148. package/SVF-doxygen/html/html/search/all_5.js +2 -2
  149. package/SVF-doxygen/html/html/search/all_6.js +1 -1
  150. package/SVF-doxygen/html/html/search/all_7.js +2 -2
  151. package/SVF-doxygen/html/html/search/all_c.js +3 -3
  152. package/SVF-doxygen/html/html/search/all_d.js +1 -1
  153. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  154. package/SVF-doxygen/html/html/search/all_f.js +2 -2
  155. package/SVF-doxygen/html/html/search/classes_f.js +1 -0
  156. package/SVF-doxygen/html/html/search/enums_1.js +1 -1
  157. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  158. package/SVF-doxygen/html/html/search/enumvalues_2.js +1 -1
  159. package/SVF-doxygen/html/html/search/files_d.js +2 -0
  160. package/SVF-doxygen/html/html/search/functions_11.js +2 -1
  161. package/SVF-doxygen/html/html/search/functions_17.js +1 -0
  162. package/SVF-doxygen/html/html/search/functions_2.js +1 -1
  163. package/SVF-doxygen/html/html/search/functions_4.js +1 -1
  164. package/SVF-doxygen/html/html/search/functions_6.js +1 -1
  165. package/SVF-doxygen/html/html/search/functions_f.js +4 -4
  166. package/SVF-doxygen/html/html/search/typedefs_10.js +1 -1
  167. package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
  168. package/SVF-doxygen/html/html/search/typedefs_c.js +1 -1
  169. package/SVF-doxygen/html/html/search/variables_12.js +1 -1
  170. package/SVF-doxygen/html/html/search/variables_13.js +3 -3
  171. package/SVF-doxygen/html/html/search/variables_5.js +1 -1
  172. package/SVF-doxygen/html/html/search/variables_7.js +1 -1
  173. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  174. package/include/Graphs/ICFGStat.h +1 -1
  175. package/include/Util/PTAStat.h +6 -36
  176. package/include/Util/SVFStat.h +95 -0
  177. package/include/WPA/AndersenPWC.h +1 -1
  178. package/lib/DDA/DDAPass.cpp +1 -0
  179. package/lib/DDA/DDAStat.cpp +1 -0
  180. package/lib/Graphs/SVFGReadWrite.cpp +1 -0
  181. package/lib/Graphs/SVFGStat.cpp +1 -0
  182. package/lib/SVF-FE/CHGBuilder.cpp +1 -0
  183. package/lib/Util/PTAStat.cpp +2 -21
  184. package/lib/Util/SVFStat.cpp +58 -0
  185. package/lib/WPA/Andersen.cpp +1 -0
  186. package/lib/WPA/AndersenSCD.cpp +1 -0
  187. package/lib/WPA/AndersenSFR.cpp +1 -0
  188. package/lib/WPA/AndersenStat.cpp +1 -0
  189. package/lib/WPA/AndersenWaveDiff.cpp +1 -0
  190. package/package.json +1 -1
@@ -66,7 +66,7 @@ $(function() {
66
66
  <div class="title">SVFGStat.h</div> </div>
67
67
  </div><!--header-->
68
68
  <div class="contents">
69
- <a href="SVFGStat_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//===- SVFGStat.h -- Statistics of SVFG---------------------------------------//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// SVF: Static Value-Flow Analysis</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">// Copyright (C) &lt;2013-2017&gt; &lt;Yulei Sui&gt;</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment">// This program is free software: you can redistribute it and/or modify</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">// it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">// the Free Software Foundation, either version 3 of the License, or</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment">// (at your option) any later version.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment">// This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment">// but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment">// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment">// GNU General Public License for more details.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment">// You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">// along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment">//===----------------------------------------------------------------------===//</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * @file: SVFGStat.h</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * @author: yesen</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * @date: 10/12/2013</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * @version: 1.0</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * @section LICENSE</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * @section DESCRIPTION</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#ifndef SVFGSTAT_H_</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#define SVFGSTAT_H_</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="SVFG_8h.html">Graphs/SVFG.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="PTAStat_8h.html">Util/PTAStat.h</a>&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="SCC_8h.html">Util/SCC.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">class </span>MemSSA;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html"> 48</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1MemSSAStat.html">MemSSAStat</a> : <span class="keyword">public</span> <a class="code" href="classSVF_1_1PTAStat.html">PTAStat</a></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;{</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a7dd7e6af850b9d724ea580450bfd3afd"> 52</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a7dd7e6af850b9d724ea580450bfd3afd">TotalTimeOfConstructMemSSA</a>; </div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a74c36654b7452aa94aa241881f0a83c5"> 53</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a74c36654b7452aa94aa241881f0a83c5">TimeOfGeneratingMemRegions</a>; </div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a48c70f0ed1c7d031a3cd528035162e52"> 54</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a48c70f0ed1c7d031a3cd528035162e52">TimeOfCreateMUCHI</a>; </div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a0c24822c8549af6a96e82312954fab9b"> 55</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a0c24822c8549af6a96e82312954fab9b">TimeOfInsertingPHI</a>; </div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a887ff23a7ea1a18f08b1744ff30da773"> 56</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a887ff23a7ea1a18f08b1744ff30da773">TimeOfSSARenaming</a>; </div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#acf3732557238de882bf7f34c49bd6cee"> 58</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#acf3732557238de882bf7f34c49bd6cee">NumOfMaxRegion</a>; </div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a6e29fa9c935de324441c765e40faa2a5"> 59</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a6e29fa9c935de324441c765e40faa2a5">NumOfAveragePtsInRegion</a>; </div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a95695aa32886776804e192b4c4ddcc1d"> 60</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a95695aa32886776804e192b4c4ddcc1d">NumOfMemRegions</a>; </div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ad96437d0c28f8088c711a718d2f2730e"> 61</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#ad96437d0c28f8088c711a718d2f2730e">NumOfEntryChi</a>; </div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a1459465f0a76c09b5dd7d777467ac2e4"> 62</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a1459465f0a76c09b5dd7d777467ac2e4">NumOfRetMu</a>; </div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a921a0f4eba4b891ab9b7699ea0d3f91c"> 63</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a921a0f4eba4b891ab9b7699ea0d3f91c">NumOfCSChi</a>; </div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a7b07190a20361e30999cd9107749599d"> 64</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a7b07190a20361e30999cd9107749599d">NumOfCSMu</a>; </div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a284dbb01e051945a40179b315bdb112f"> 65</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a284dbb01e051945a40179b315bdb112f">NumOfLoadMu</a>; </div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a810965c025da84c58575c8066bc84056"> 66</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a810965c025da84c58575c8066bc84056">NumOfStoreChi</a>; </div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a4b598cb1d06c4c0963787036862b1c3d"> 67</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a4b598cb1d06c4c0963787036862b1c3d">NumOfMSSAPhi</a>; </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#aee2e0df55c40745a9b9aac415aa7a399"> 69</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#aee2e0df55c40745a9b9aac415aa7a399">NumOfFunHasEntryChi</a>; </div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ab1cdbd2ebe54dc5bb752a89d069423b7"> 70</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#ab1cdbd2ebe54dc5bb752a89d069423b7">NumOfFunHasRetMu</a>; </div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ae57c6e5b97581150b7561c93e0887569"> 71</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#ae57c6e5b97581150b7561c93e0887569">NumOfCSHasChi</a>; </div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#af5855348e45f50d16cd41cfa9c28f67c"> 72</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#af5855348e45f50d16cd41cfa9c28f67c">NumOfCSHasMu</a>; </div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ad3139d2643f5e79dcd4ca9569ebbe7df"> 73</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#ad3139d2643f5e79dcd4ca9569ebbe7df">NumOfLoadHasMu</a>; </div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a3bc14307bd0f986cbd8ba5970f1abf0f"> 74</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a3bc14307bd0f986cbd8ba5970f1abf0f">NumOfStoreHasChi</a>; </div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a67d9c55f52cb59168e89320c3264a15a"> 75</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a67d9c55f52cb59168e89320c3264a15a">NumOfBBHasMSSAPhi</a>; </div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classSVF_1_1MemSSAStat.html#a53f3d85a8eb63676d3dc47ee648efb66">MemSSAStat</a>(<a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>*);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a7fa4428b4ec4d82de7ed4c8c4984bd86"> 79</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1MemSSAStat.html#a7fa4428b4ec4d82de7ed4c8c4984bd86">~MemSSAStat</a>()</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MemSSAStat.html#a8b4b9466a676d2391c71d38e8be16bc9">performStat</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MemSSAStat.html#ad5fbe23c3374e5b3a45ac5fa4900441a">printStat</a>(<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str = <span class="stringliteral">&quot;&quot;</span>) <span class="keyword">override</span>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ab29515f4e5b1f090c06a6e39761d3394"> 88</a></span>&#160; <a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>* <a class="code" href="classSVF_1_1MemSSAStat.html#ab29515f4e5b1f090c06a6e39761d3394">mssa</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;};</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html"> 92</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1SVFGStat.html">SVFGStat</a> : <span class="keyword">public</span> <a class="code" href="classSVF_1_1PTAStat.html">PTAStat</a></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;{</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aee5ecd6a92c40e1e27197869028689c4"> 95</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFGNode*&gt;</a> <a class="code" href="classSVF_1_1SVFGStat.html#aee5ecd6a92c40e1e27197869028689c4">SVFGNodeSet</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#afeddbe4020e9b3c928856c2dc86af838"> 96</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">OrderedSet&lt;const SVFGEdge*&gt;</a> <a class="code" href="classSVF_1_1SVFGStat.html#afeddbe4020e9b3c928856c2dc86af838">SVFGEdgeSet</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a149edd19cd5adafec13cbb49c590f0a8"> 97</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1SCCDetection.html">SCCDetection&lt;SVFG*&gt;</a> <a class="code" href="classSVF_1_1SVFGStat.html#a149edd19cd5adafec13cbb49c590f0a8">SVFGSCC</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html">SVFGStat</a>(<a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* g);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ad70617b64bb651c0c16943a8b016399e"> 101</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1SVFGStat.html#ad70617b64bb651c0c16943a8b016399e">~SVFGStat</a>() {}</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MemSSAStat.html#a8b4b9466a676d2391c71d38e8be16bc9">performStat</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MemSSAStat.html#ad5fbe23c3374e5b3a45ac5fa4900441a">printStat</a>(<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str = <span class="stringliteral">&quot;&quot;</span>) <span class="keyword">override</span>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> performSCCStat(SVFGEdgeSet insensitiveCalRetEdges);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a169d75c0fd09f69d86939d84db67e590"> 109</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a169d75c0fd09f69d86939d84db67e590">dirVFEdgeStart</a>()</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; connectDirSVFGEdgeTimeStart = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#abef8f1d89413ed3c6e67dcd2b81729d8"> 114</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#abef8f1d89413ed3c6e67dcd2b81729d8">dirVFEdgeEnd</a>()</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; connectDirSVFGEdgeTimeEnd = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#adcb30427bb220dc122ad22030e10eb21"> 119</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#adcb30427bb220dc122ad22030e10eb21">indVFEdgeStart</a>()</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; connectIndSVFGEdgeTimeStart = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a8b3b9a211f410e67e8fd1a79d3db9023"> 124</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a8b3b9a211f410e67e8fd1a79d3db9023">indVFEdgeEnd</a>()</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; connectIndSVFGEdgeTimeEnd = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a2e4aac52fdc2fd119847afbeba634de9"> 129</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a2e4aac52fdc2fd119847afbeba634de9">TLVFNodeStart</a>()</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; addTopLevelNodeTimeStart = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a17e479f0258291998369a2eb325ba3d7"> 134</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a17e479f0258291998369a2eb325ba3d7">TLVFNodeEnd</a>()</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; addTopLevelNodeTimeEnd = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a4bf9a39b93b7254f627dd393b9f2b82c"> 139</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a4bf9a39b93b7254f627dd393b9f2b82c">ATVFNodeStart</a>()</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; {</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; addAddrTakenNodeTimeStart = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aa39231c3d81fa87cdb6089f17bc35af8"> 144</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#aa39231c3d81fa87cdb6089f17bc35af8">ATVFNodeEnd</a>()</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; addAddrTakenNodeTimeEnd = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#acb80953b39ce247679242df4f042ab79"> 149</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#acb80953b39ce247679242df4f042ab79">sfvgOptStart</a>()</div><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; svfgOptTimeStart = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aaec3a7f29b3ded0c971d57376d2779ff"> 154</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#aaec3a7f29b3ded0c971d57376d2779ff">sfvgOptEnd</a>()</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; svfgOptTimeEnd = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordtype">void</span> clear();</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; <span class="keywordtype">void</span> processGraph();</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordtype">void</span> calculateNodeDegrees(<a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node, <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>&amp; nodeHasIndInEdge, <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>&amp; nodeHasIndOutEdge);</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="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> getSCCRep(SVFGSCC* scc, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeInCycle(SVFGSCC* scc, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a3d06ead4c3222ce8a0535d9f3d504c3d"> 170</a></span>&#160; <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* <a class="code" href="classSVF_1_1SVFGStat.html#a3d06ead4c3222ce8a0535d9f3d504c3d">graph</a>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302"> 172</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302">numOfNodes</a>; </div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db"> 174</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db">numOfFormalIn</a>; </div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531"> 175</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531">numOfFormalOut</a>; </div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748"> 176</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748">numOfFormalParam</a>;</div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2"> 177</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">numOfFormalRet</a>;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a5365744d2ec3594e2255d274f7256569"> 179</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a5365744d2ec3594e2255d274f7256569">numOfActualIn</a>; </div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505"> 180</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505">numOfActualOut</a>; </div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a0494c59483520b57acdca95952c93d76"> 181</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0494c59483520b57acdca95952c93d76">numOfActualParam</a>;</div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414"> 182</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414">numOfActualRet</a>;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a"> 184</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a">numOfLoad</a>; </div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9"> 185</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">numOfStore</a>; </div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464"> 186</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">numOfCopy</a>;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905"> 187</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905">numOfGep</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aa6a39e0f1d41d67cb3441389a943bf5f"> 188</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#aa6a39e0f1d41d67cb3441389a943bf5f">numOfAddr</a>;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360"> 190</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360">numOfMSSAPhi</a>; </div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020"> 191</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020">numOfPhi</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"><a class="line" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658"> 193</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a>; </div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a"> 194</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">totalOutEdge</a>; </div><div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a"> 195</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a>; </div><div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d"> 196</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d">totalIndOutEdge</a>;</div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8"> 197</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">totalIndEdgeLabels</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"><a class="line" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5"> 199</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">totalIndCallEdge</a>;</div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47"> 200</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">totalIndRetEdge</a>;</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24"> 201</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">totalDirCallEdge</a>;</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6"> 202</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">totalDirRetEdge</a>;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1"> 204</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">avgWeight</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"><a class="line" href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413"> 206</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413">avgInDegree</a>; </div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf"> 207</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">avgOutDegree</a>; </div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421"> 208</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">maxInDegree</a>; </div><div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf"> 209</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">maxOutDegree</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"><a class="line" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd"> 211</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">avgIndInDegree</a>; </div><div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826"> 212</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826">avgIndOutDegree</a>; </div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3"> 213</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">maxIndInDegree</a>; </div><div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683"> 214</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">maxIndOutDegree</a>; </div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ad72d8706cdc97443556c0d878a393727"> 216</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#ad72d8706cdc97443556c0d878a393727">addTopLevelNodeTimeStart</a>;</div><div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a89f40e0cb98fdb65a320686b1698d909"> 217</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a89f40e0cb98fdb65a320686b1698d909">addTopLevelNodeTimeEnd</a>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aa35ff9ddfc4f00be698a903adf3285f5"> 219</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#aa35ff9ddfc4f00be698a903adf3285f5">addAddrTakenNodeTimeStart</a>;</div><div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a2f7a49d2b3aae6cdb1cbc0e8ae18d1c2"> 220</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a2f7a49d2b3aae6cdb1cbc0e8ae18d1c2">addAddrTakenNodeTimeEnd</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"><a class="line" href="classSVF_1_1SVFGStat.html#a0a967faad014cdd53f5dddfdc59edbc3"> 222</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0a967faad014cdd53f5dddfdc59edbc3">connectDirSVFGEdgeTimeStart</a>;</div><div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ac243fababbb9d2f3efbea5411f947c21"> 223</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#ac243fababbb9d2f3efbea5411f947c21">connectDirSVFGEdgeTimeEnd</a>;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a2a697caecf23413187aef90a8097e0b0"> 225</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a2a697caecf23413187aef90a8097e0b0">connectIndSVFGEdgeTimeStart</a>;</div><div class="line"><a name="l00226"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a3210cc1283669129234aa2c3feb67654"> 226</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a3210cc1283669129234aa2c3feb67654">connectIndSVFGEdgeTimeEnd</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1e92f02d43f06ef31e107859d1bd8ac2"> 228</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a1e92f02d43f06ef31e107859d1bd8ac2">svfgOptTimeStart</a>;</div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ac06625b26e1aa1a0ed171c9f5cea0f35"> 229</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#ac06625b26e1aa1a0ed171c9f5cea0f35">svfgOptTimeEnd</a>;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1e5ec005dda8dc918422eaf33f3145f8"> 231</a></span>&#160; SVFGNodeSet <a class="code" href="classSVF_1_1SVFGStat.html#a1e5ec005dda8dc918422eaf33f3145f8">forwardSlice</a>;</div><div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1f93abeefa0c265f4945171255107725"> 232</a></span>&#160; SVFGNodeSet <a class="code" href="classSVF_1_1SVFGStat.html#a1f93abeefa0c265f4945171255107725">backwardSlice</a>;</div><div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a18a30f659c3a79d65b4ae7f3316c5f91"> 233</a></span>&#160; SVFGNodeSet <a class="code" href="classSVF_1_1SVFGStat.html#a18a30f659c3a79d65b4ae7f3316c5f91">sources</a>;</div><div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a332adbaad93a3077416c870f175a1202"> 234</a></span>&#160; SVFGNodeSet <a class="code" href="classSVF_1_1SVFGStat.html#a332adbaad93a3077416c870f175a1202">sinks</a>;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a59585ec387e8cc30a85eeec99a97e968"> 237</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a59585ec387e8cc30a85eeec99a97e968">addToSources</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; sources.insert(node);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div><div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#add8a63f5e0f0057ce07d3992355ce3fa"> 241</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#add8a63f5e0f0057ce07d3992355ce3fa">addToSinks</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; sinks.insert(node);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; }</div><div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aee8cb3fa54e882bba54bf557bbc5e1a3"> 245</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#aee8cb3fa54e882bba54bf557bbc5e1a3">addToForwardSlice</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; {</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; forwardSlice.insert(node);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a54e61121cdfac31e336cd79fa0513419"> 249</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a54e61121cdfac31e336cd79fa0513419">addToBackwardSlice</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; {</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; backwardSlice.insert(node);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#adc6a5c3e430bdf942f1462e101ac6917"> 253</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1SVFGStat.html#adc6a5c3e430bdf942f1462e101ac6917">inForwardSlice</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)<span class="keyword"> const</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">return</span> forwardSlice.find(node)!=forwardSlice.end();</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div><div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a6e68486e02db81cbbedc942ace3e9590"> 257</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1SVFGStat.html#a6e68486e02db81cbbedc942ace3e9590">inBackwardSlice</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)<span class="keyword"> const</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">return</span> backwardSlice.find(node)!=backwardSlice.end();</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div><div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a72c93b86e95bdbe32ade33f7264f4c0a"> 261</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1SVFGStat.html#a72c93b86e95bdbe32ade33f7264f4c0a">isSource</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)<span class="keyword"> const</span></div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="keywordflow">return</span> sources.find(node)!=sources.end();</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; }</div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ae905f0d64db3039f8fd3c117c4624e31"> 265</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1SVFGStat.html#ae905f0d64db3039f8fd3c117c4624e31">isSink</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)<span class="keyword"> const</span></div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">return</span> sinks.find(node)!=sinks.end();</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; }</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;};</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;} <span class="comment">// End namespace SVF</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SVFGSTAT_H_ */</span><span class="preprocessor"></span></div><div class="ttc" id="classSVF_1_1MemSSAStat_html_a8b4b9466a676d2391c71d38e8be16bc9"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#a8b4b9466a676d2391c71d38e8be16bc9">SVF::MemSSAStat::performStat</a></div><div class="ttdeci">virtual void performStat() override</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00073">SVFGStat.cpp:73</a></div></div>
69
+ <a href="SVFGStat_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//===- SVFGStat.h -- Statistics of SVFG---------------------------------------//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// SVF: Static Value-Flow Analysis</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">// Copyright (C) &lt;2013-2017&gt; &lt;Yulei Sui&gt;</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment">// This program is free software: you can redistribute it and/or modify</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">// it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">// the Free Software Foundation, either version 3 of the License, or</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment">// (at your option) any later version.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment">// This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment">// but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment">// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment">// GNU General Public License for more details.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment">// You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">// along with this program. If not, see &lt;http://www.gnu.org/licenses/&gt;.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment">//===----------------------------------------------------------------------===//</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * @file: SVFGStat.h</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * @author: yesen</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * @date: 10/12/2013</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * @version: 1.0</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * @section LICENSE</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * @section DESCRIPTION</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#ifndef SVFGSTAT_H_</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#define SVFGSTAT_H_</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="SVFG_8h.html">Graphs/SVFG.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="PTAStat_8h.html">Util/PTAStat.h</a>&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="SCC_8h.html">Util/SCC.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceSVF.html">SVF</a></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">class </span>MemSSA;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html"> 48</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1MemSSAStat.html">MemSSAStat</a> : <span class="keyword">public</span> <a class="code" href="classSVF_1_1PTAStat.html">PTAStat</a></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;{</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a7dd7e6af850b9d724ea580450bfd3afd"> 52</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a7dd7e6af850b9d724ea580450bfd3afd">TotalTimeOfConstructMemSSA</a>; </div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a74c36654b7452aa94aa241881f0a83c5"> 53</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a74c36654b7452aa94aa241881f0a83c5">TimeOfGeneratingMemRegions</a>; </div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a48c70f0ed1c7d031a3cd528035162e52"> 54</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a48c70f0ed1c7d031a3cd528035162e52">TimeOfCreateMUCHI</a>; </div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a0c24822c8549af6a96e82312954fab9b"> 55</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a0c24822c8549af6a96e82312954fab9b">TimeOfInsertingPHI</a>; </div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a887ff23a7ea1a18f08b1744ff30da773"> 56</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a887ff23a7ea1a18f08b1744ff30da773">TimeOfSSARenaming</a>; </div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#acf3732557238de882bf7f34c49bd6cee"> 58</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#acf3732557238de882bf7f34c49bd6cee">NumOfMaxRegion</a>; </div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a6e29fa9c935de324441c765e40faa2a5"> 59</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a6e29fa9c935de324441c765e40faa2a5">NumOfAveragePtsInRegion</a>; </div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a95695aa32886776804e192b4c4ddcc1d"> 60</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a95695aa32886776804e192b4c4ddcc1d">NumOfMemRegions</a>; </div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ad96437d0c28f8088c711a718d2f2730e"> 61</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#ad96437d0c28f8088c711a718d2f2730e">NumOfEntryChi</a>; </div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a1459465f0a76c09b5dd7d777467ac2e4"> 62</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a1459465f0a76c09b5dd7d777467ac2e4">NumOfRetMu</a>; </div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a921a0f4eba4b891ab9b7699ea0d3f91c"> 63</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a921a0f4eba4b891ab9b7699ea0d3f91c">NumOfCSChi</a>; </div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a7b07190a20361e30999cd9107749599d"> 64</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a7b07190a20361e30999cd9107749599d">NumOfCSMu</a>; </div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a284dbb01e051945a40179b315bdb112f"> 65</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a284dbb01e051945a40179b315bdb112f">NumOfLoadMu</a>; </div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a810965c025da84c58575c8066bc84056"> 66</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a810965c025da84c58575c8066bc84056">NumOfStoreChi</a>; </div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a4b598cb1d06c4c0963787036862b1c3d"> 67</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a4b598cb1d06c4c0963787036862b1c3d">NumOfMSSAPhi</a>; </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#aee2e0df55c40745a9b9aac415aa7a399"> 69</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#aee2e0df55c40745a9b9aac415aa7a399">NumOfFunHasEntryChi</a>; </div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ab1cdbd2ebe54dc5bb752a89d069423b7"> 70</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#ab1cdbd2ebe54dc5bb752a89d069423b7">NumOfFunHasRetMu</a>; </div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ae57c6e5b97581150b7561c93e0887569"> 71</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#ae57c6e5b97581150b7561c93e0887569">NumOfCSHasChi</a>; </div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#af5855348e45f50d16cd41cfa9c28f67c"> 72</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#af5855348e45f50d16cd41cfa9c28f67c">NumOfCSHasMu</a>; </div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ad3139d2643f5e79dcd4ca9569ebbe7df"> 73</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#ad3139d2643f5e79dcd4ca9569ebbe7df">NumOfLoadHasMu</a>; </div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a3bc14307bd0f986cbd8ba5970f1abf0f"> 74</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a3bc14307bd0f986cbd8ba5970f1abf0f">NumOfStoreHasChi</a>; </div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a67d9c55f52cb59168e89320c3264a15a"> 75</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classSVF_1_1MemSSAStat.html#a67d9c55f52cb59168e89320c3264a15a">NumOfBBHasMSSAPhi</a>; </div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classSVF_1_1MemSSAStat.html#a53f3d85a8eb63676d3dc47ee648efb66">MemSSAStat</a>(<a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>*);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#a7fa4428b4ec4d82de7ed4c8c4984bd86"> 79</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1MemSSAStat.html#a7fa4428b4ec4d82de7ed4c8c4984bd86">~MemSSAStat</a>()</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MemSSAStat.html#a8b4b9466a676d2391c71d38e8be16bc9">performStat</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MemSSAStat.html#ad5fbe23c3374e5b3a45ac5fa4900441a">printStat</a>(<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str = <span class="stringliteral">&quot;&quot;</span>) <span class="keyword">override</span>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classSVF_1_1MemSSAStat.html#ab29515f4e5b1f090c06a6e39761d3394"> 88</a></span>&#160; <a class="code" href="classSVF_1_1MemSSA.html">MemSSA</a>* <a class="code" href="classSVF_1_1MemSSAStat.html#ab29515f4e5b1f090c06a6e39761d3394">mssa</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;};</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html"> 92</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSVF_1_1SVFGStat.html">SVFGStat</a> : <span class="keyword">public</span> <a class="code" href="classSVF_1_1PTAStat.html">PTAStat</a></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;{</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aee5ecd6a92c40e1e27197869028689c4"> 95</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFGNode*&gt;</a> <a class="code" href="classSVF_1_1SVFGStat.html#aee5ecd6a92c40e1e27197869028689c4">SVFGNodeSet</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#afeddbe4020e9b3c928856c2dc86af838"> 96</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="namespaceSVF.html#a4f21e91ff8eaea5207afe5c60dbd78d7">OrderedSet&lt;const SVFGEdge*&gt;</a> <a class="code" href="classSVF_1_1SVFGStat.html#afeddbe4020e9b3c928856c2dc86af838">SVFGEdgeSet</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a149edd19cd5adafec13cbb49c590f0a8"> 97</a></span>&#160; <span class="keyword">typedef</span> <a class="code" href="classSVF_1_1SCCDetection.html">SCCDetection&lt;SVFG*&gt;</a> <a class="code" href="classSVF_1_1SVFGStat.html#a149edd19cd5adafec13cbb49c590f0a8">SVFGSCC</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html">SVFGStat</a>(<a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* g);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ad70617b64bb651c0c16943a8b016399e"> 101</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classSVF_1_1SVFGStat.html#ad70617b64bb651c0c16943a8b016399e">~SVFGStat</a>() {}</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MemSSAStat.html#a8b4b9466a676d2391c71d38e8be16bc9">performStat</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1MemSSAStat.html#ad5fbe23c3374e5b3a45ac5fa4900441a">printStat</a>(<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> str = <span class="stringliteral">&quot;&quot;</span>) <span class="keyword">override</span>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> performSCCStat(SVFGEdgeSet insensitiveCalRetEdges);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a169d75c0fd09f69d86939d84db67e590"> 109</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a169d75c0fd09f69d86939d84db67e590">dirVFEdgeStart</a>()</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; connectDirSVFGEdgeTimeStart = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#abef8f1d89413ed3c6e67dcd2b81729d8"> 114</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#abef8f1d89413ed3c6e67dcd2b81729d8">dirVFEdgeEnd</a>()</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; connectDirSVFGEdgeTimeEnd = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#adcb30427bb220dc122ad22030e10eb21"> 119</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#adcb30427bb220dc122ad22030e10eb21">indVFEdgeStart</a>()</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; connectIndSVFGEdgeTimeStart = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a8b3b9a211f410e67e8fd1a79d3db9023"> 124</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a8b3b9a211f410e67e8fd1a79d3db9023">indVFEdgeEnd</a>()</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; connectIndSVFGEdgeTimeEnd = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a2e4aac52fdc2fd119847afbeba634de9"> 129</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a2e4aac52fdc2fd119847afbeba634de9">TLVFNodeStart</a>()</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; addTopLevelNodeTimeStart = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a17e479f0258291998369a2eb325ba3d7"> 134</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a17e479f0258291998369a2eb325ba3d7">TLVFNodeEnd</a>()</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; addTopLevelNodeTimeEnd = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a4bf9a39b93b7254f627dd393b9f2b82c"> 139</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a4bf9a39b93b7254f627dd393b9f2b82c">ATVFNodeStart</a>()</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; {</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; addAddrTakenNodeTimeStart = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aa39231c3d81fa87cdb6089f17bc35af8"> 144</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#aa39231c3d81fa87cdb6089f17bc35af8">ATVFNodeEnd</a>()</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; addAddrTakenNodeTimeEnd = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#acb80953b39ce247679242df4f042ab79"> 149</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#acb80953b39ce247679242df4f042ab79">sfvgOptStart</a>()</div><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; svfgOptTimeStart = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aaec3a7f29b3ded0c971d57376d2779ff"> 154</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#aaec3a7f29b3ded0c971d57376d2779ff">sfvgOptEnd</a>()</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; svfgOptTimeEnd = <a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">PTAStat::getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordtype">void</span> clear();</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; <span class="keywordtype">void</span> processGraph();</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordtype">void</span> calculateNodeDegrees(<a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node, <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>&amp; nodeHasIndInEdge, <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>&amp; nodeHasIndOutEdge);</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="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> getSCCRep(SVFGSCC* scc, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeInCycle(SVFGSCC* scc, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a3d06ead4c3222ce8a0535d9f3d504c3d"> 170</a></span>&#160; <a class="code" href="classSVF_1_1SVFG.html">SVFG</a>* <a class="code" href="classSVF_1_1SVFGStat.html#a3d06ead4c3222ce8a0535d9f3d504c3d">graph</a>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302"> 172</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#ab499c24856a990dd4adb366107eb3302">numOfNodes</a>; </div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db"> 174</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#abc5e079242666bb55ec7dbc7f258b3db">numOfFormalIn</a>; </div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531"> 175</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#ab20900eb0ecb0d2e1e601755848ac531">numOfFormalOut</a>; </div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748"> 176</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748">numOfFormalParam</a>;</div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2"> 177</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">numOfFormalRet</a>;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a5365744d2ec3594e2255d274f7256569"> 179</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a5365744d2ec3594e2255d274f7256569">numOfActualIn</a>; </div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505"> 180</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a122555f5c4b9746cc2b7f38c7cd6b505">numOfActualOut</a>; </div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a0494c59483520b57acdca95952c93d76"> 181</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0494c59483520b57acdca95952c93d76">numOfActualParam</a>;</div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414"> 182</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#ad37e5b2e57e02f8e4319f6d038c51414">numOfActualRet</a>;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a"> 184</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a">numOfLoad</a>; </div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9"> 185</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">numOfStore</a>; </div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464"> 186</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#ac86d6d7cb0090ab665729b56111ca464">numOfCopy</a>;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905"> 187</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a862cd075a7c9d5019acfabe608ab7905">numOfGep</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aa6a39e0f1d41d67cb3441389a943bf5f"> 188</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#aa6a39e0f1d41d67cb3441389a943bf5f">numOfAddr</a>;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360"> 190</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a9fc87025af3b7e54442e78f46ebe0360">numOfMSSAPhi</a>; </div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020"> 191</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020">numOfPhi</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"><a class="line" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658"> 193</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">totalInEdge</a>; </div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a"> 194</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">totalOutEdge</a>; </div><div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a"> 195</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">totalIndInEdge</a>; </div><div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d"> 196</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d">totalIndOutEdge</a>;</div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8"> 197</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">totalIndEdgeLabels</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"><a class="line" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5"> 199</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0f37f7f530e3fd494c9d6bb477ca68d5">totalIndCallEdge</a>;</div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47"> 200</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#afd0f43a7d7138a8013930fd103ce7c47">totalIndRetEdge</a>;</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24"> 201</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">totalDirCallEdge</a>;</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6"> 202</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a63bd38fa93d665037932bcda3cc342c6">totalDirRetEdge</a>;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1"> 204</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">avgWeight</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"><a class="line" href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413"> 206</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413">avgInDegree</a>; </div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf"> 207</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">avgOutDegree</a>; </div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421"> 208</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1SVFGStat.html#a536b591b21756519262873462001f421">maxInDegree</a>; </div><div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf"> 209</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1SVFGStat.html#a6694ace7ee1b24b0c5ce42e06e4db2cf">maxOutDegree</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"><a class="line" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd"> 211</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">avgIndInDegree</a>; </div><div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826"> 212</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classSVF_1_1SVFGStat.html#a7854ee895f1965ea02f5d04f81589826">avgIndOutDegree</a>; </div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3"> 213</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1SVFGStat.html#a2f1bb17038de877fd1ccffdea3f3cde3">maxIndInDegree</a>; </div><div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683"> 214</a></span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1SVFGStat.html#ac7cb2228bd31e8ebdf33ae2bfd399683">maxIndOutDegree</a>; </div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ad72d8706cdc97443556c0d878a393727"> 216</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#ad72d8706cdc97443556c0d878a393727">addTopLevelNodeTimeStart</a>;</div><div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a89f40e0cb98fdb65a320686b1698d909"> 217</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a89f40e0cb98fdb65a320686b1698d909">addTopLevelNodeTimeEnd</a>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aa35ff9ddfc4f00be698a903adf3285f5"> 219</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#aa35ff9ddfc4f00be698a903adf3285f5">addAddrTakenNodeTimeStart</a>;</div><div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a2f7a49d2b3aae6cdb1cbc0e8ae18d1c2"> 220</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a2f7a49d2b3aae6cdb1cbc0e8ae18d1c2">addAddrTakenNodeTimeEnd</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"><a class="line" href="classSVF_1_1SVFGStat.html#a0a967faad014cdd53f5dddfdc59edbc3"> 222</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a0a967faad014cdd53f5dddfdc59edbc3">connectDirSVFGEdgeTimeStart</a>;</div><div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ac243fababbb9d2f3efbea5411f947c21"> 223</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#ac243fababbb9d2f3efbea5411f947c21">connectDirSVFGEdgeTimeEnd</a>;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div><div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a2a697caecf23413187aef90a8097e0b0"> 225</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a2a697caecf23413187aef90a8097e0b0">connectIndSVFGEdgeTimeStart</a>;</div><div class="line"><a name="l00226"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a3210cc1283669129234aa2c3feb67654"> 226</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a3210cc1283669129234aa2c3feb67654">connectIndSVFGEdgeTimeEnd</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1e92f02d43f06ef31e107859d1bd8ac2"> 228</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#a1e92f02d43f06ef31e107859d1bd8ac2">svfgOptTimeStart</a>;</div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ac06625b26e1aa1a0ed171c9f5cea0f35"> 229</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="classSVF_1_1SVFGStat.html#ac06625b26e1aa1a0ed171c9f5cea0f35">svfgOptTimeEnd</a>;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1e5ec005dda8dc918422eaf33f3145f8"> 231</a></span>&#160; SVFGNodeSet <a class="code" href="classSVF_1_1SVFGStat.html#a1e5ec005dda8dc918422eaf33f3145f8">forwardSlice</a>;</div><div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a1f93abeefa0c265f4945171255107725"> 232</a></span>&#160; SVFGNodeSet <a class="code" href="classSVF_1_1SVFGStat.html#a1f93abeefa0c265f4945171255107725">backwardSlice</a>;</div><div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a18a30f659c3a79d65b4ae7f3316c5f91"> 233</a></span>&#160; SVFGNodeSet <a class="code" href="classSVF_1_1SVFGStat.html#a18a30f659c3a79d65b4ae7f3316c5f91">sources</a>;</div><div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a332adbaad93a3077416c870f175a1202"> 234</a></span>&#160; SVFGNodeSet <a class="code" href="classSVF_1_1SVFGStat.html#a332adbaad93a3077416c870f175a1202">sinks</a>;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a59585ec387e8cc30a85eeec99a97e968"> 237</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a59585ec387e8cc30a85eeec99a97e968">addToSources</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; sources.insert(node);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }</div><div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#add8a63f5e0f0057ce07d3992355ce3fa"> 241</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#add8a63f5e0f0057ce07d3992355ce3fa">addToSinks</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; sinks.insert(node);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; }</div><div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#aee8cb3fa54e882bba54bf557bbc5e1a3"> 245</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#aee8cb3fa54e882bba54bf557bbc5e1a3">addToForwardSlice</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; {</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; forwardSlice.insert(node);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a54e61121cdfac31e336cd79fa0513419"> 249</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1SVFGStat.html#a54e61121cdfac31e336cd79fa0513419">addToBackwardSlice</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; {</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; backwardSlice.insert(node);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#adc6a5c3e430bdf942f1462e101ac6917"> 253</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1SVFGStat.html#adc6a5c3e430bdf942f1462e101ac6917">inForwardSlice</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)<span class="keyword"> const</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">return</span> forwardSlice.find(node)!=forwardSlice.end();</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div><div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a6e68486e02db81cbbedc942ace3e9590"> 257</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1SVFGStat.html#a6e68486e02db81cbbedc942ace3e9590">inBackwardSlice</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)<span class="keyword"> const</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">return</span> backwardSlice.find(node)!=backwardSlice.end();</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div><div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#a72c93b86e95bdbe32ade33f7264f4c0a"> 261</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1SVFGStat.html#a72c93b86e95bdbe32ade33f7264f4c0a">isSource</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)<span class="keyword"> const</span></div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="keywordflow">return</span> sources.find(node)!=sources.end();</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; }</div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="classSVF_1_1SVFGStat.html#ae905f0d64db3039f8fd3c117c4624e31"> 265</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1SVFGStat.html#ae905f0d64db3039f8fd3c117c4624e31">isSink</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGNode.html">SVFGNode</a>* node)<span class="keyword"> const</span></div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="keyword"> </span>{</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">return</span> sinks.find(node)!=sinks.end();</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; }</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;};</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;} <span class="comment">// End namespace SVF</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SVFGSTAT_H_ */</span><span class="preprocessor"></span></div><div class="ttc" id="classSVF_1_1MemSSAStat_html_a8b4b9466a676d2391c71d38e8be16bc9"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#a8b4b9466a676d2391c71d38e8be16bc9">SVF::MemSSAStat::performStat</a></div><div class="ttdeci">virtual void performStat() override</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00074">SVFGStat.cpp:74</a></div></div>
70
70
  <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>
71
71
  <div class="ttc" id="classSVF_1_1MemSSAStat_html_a95695aa32886776804e192b4c4ddcc1d"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#a95695aa32886776804e192b4c4ddcc1d">SVF::MemSSAStat::NumOfMemRegions</a></div><div class="ttdeci">static const char * NumOfMemRegions</div><div class="ttdoc">Number of memory regions. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00060">SVFGStat.h:60</a></div></div>
72
72
  <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>
@@ -133,6 +133,7 @@ $(function() {
133
133
  <div class="ttc" id="classSVF_1_1MemSSAStat_html_ad3139d2643f5e79dcd4ca9569ebbe7df"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#ad3139d2643f5e79dcd4ca9569ebbe7df">SVF::MemSSAStat::NumOfLoadHasMu</a></div><div class="ttdeci">static const char * NumOfLoadHasMu</div><div class="ttdoc">Number of loads which have mu. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00073">SVFGStat.h:73</a></div></div>
134
134
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a7c80f2332b97a3228e2ad7621162167a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a7c80f2332b97a3228e2ad7621162167a">SVF::SVFGStat::numOfLoad</a></div><div class="ttdeci">int numOfLoad</div><div class="ttdoc">number of load svfg nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00184">SVFGStat.h:184</a></div></div>
135
135
  <div class="ttc" id="classSVF_1_1SVFGStat_html_aee8cb3fa54e882bba54bf557bbc5e1a3"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#aee8cb3fa54e882bba54bf557bbc5e1a3">SVF::SVFGStat::addToForwardSlice</a></div><div class="ttdeci">void addToForwardSlice(const SVFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00245">SVFGStat.h:245</a></div></div>
136
+ <div class="ttc" id="classSVF_1_1SVFStat_html_ac9d390c417df6f6af6b274618b87010d"><div class="ttname"><a href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">SVF::SVFStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8cpp_source.html#l00041">SVFStat.cpp:41</a></div></div>
136
137
  <div class="ttc" id="classSVF_1_1SVFGStat_html_aaec3a7f29b3ded0c971d57376d2779ff"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#aaec3a7f29b3ded0c971d57376d2779ff">SVF::SVFGStat::sfvgOptEnd</a></div><div class="ttdeci">void sfvgOptEnd()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00154">SVFGStat.h:154</a></div></div>
137
138
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a1e9ddd5678b05e145af41a6d53f47748"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a1e9ddd5678b05e145af41a6d53f47748">SVF::SVFGStat::numOfFormalParam</a></div><div class="ttdeci">int numOfFormalParam</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00176">SVFGStat.h:176</a></div></div>
138
139
  <div class="ttc" id="classSVF_1_1MemSSAStat_html_a4b598cb1d06c4c0963787036862b1c3d"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#a4b598cb1d06c4c0963787036862b1c3d">SVF::MemSSAStat::NumOfMSSAPhi</a></div><div class="ttdeci">static const char * NumOfMSSAPhi</div><div class="ttdoc">Number of mssa phi. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00067">SVFGStat.h:67</a></div></div>
@@ -140,11 +141,11 @@ $(function() {
140
141
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a4d15f2de3f226c26cb2af57176444ec9"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">SVF::SVFGStat::numOfStore</a></div><div class="ttdeci">int numOfStore</div><div class="ttdoc">number of store svfg nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00185">SVFGStat.h:185</a></div></div>
141
142
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a3210cc1283669129234aa2c3feb67654"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a3210cc1283669129234aa2c3feb67654">SVF::SVFGStat::connectIndSVFGEdgeTimeEnd</a></div><div class="ttdeci">double connectIndSVFGEdgeTimeEnd</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00226">SVFGStat.h:226</a></div></div>
142
143
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a54e61121cdfac31e336cd79fa0513419"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a54e61121cdfac31e336cd79fa0513419">SVF::SVFGStat::addToBackwardSlice</a></div><div class="ttdeci">void addToBackwardSlice(const SVFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00249">SVFGStat.h:249</a></div></div>
143
- <div class="ttc" id="classSVF_1_1PTAStat_html"><div class="ttname"><a href="classSVF_1_1PTAStat.html">SVF::PTAStat</a></div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00049">PTAStat.h:49</a></div></div>
144
+ <div class="ttc" id="classSVF_1_1PTAStat_html"><div class="ttname"><a href="classSVF_1_1PTAStat.html">SVF::PTAStat</a></div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00048">PTAStat.h:48</a></div></div>
144
145
  <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>
145
146
  <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>
146
147
  <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>
147
- <div class="ttc" id="classSVF_1_1MemSSAStat_html_a53f3d85a8eb63676d3dc47ee648efb66"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#a53f3d85a8eb63676d3dc47ee648efb66">SVF::MemSSAStat::MemSSAStat</a></div><div class="ttdeci">MemSSAStat(MemSSA *)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00064">SVFGStat.cpp:64</a></div></div>
148
+ <div class="ttc" id="classSVF_1_1MemSSAStat_html_a53f3d85a8eb63676d3dc47ee648efb66"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#a53f3d85a8eb63676d3dc47ee648efb66">SVF::MemSSAStat::MemSSAStat</a></div><div class="ttdeci">MemSSAStat(MemSSA *)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00065">SVFGStat.cpp:65</a></div></div>
148
149
  <div class="ttc" id="classSVF_1_1SVFGStat_html_aa39231c3d81fa87cdb6089f17bc35af8"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#aa39231c3d81fa87cdb6089f17bc35af8">SVF::SVFGStat::ATVFNodeEnd</a></div><div class="ttdeci">void ATVFNodeEnd()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00144">SVFGStat.h:144</a></div></div>
149
150
  <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>
150
151
  <div class="ttc" id="classSVF_1_1MemSSAStat_html_a810965c025da84c58575c8066bc84056"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#a810965c025da84c58575c8066bc84056">SVF::MemSSAStat::NumOfStoreChi</a></div><div class="ttdeci">static const char * NumOfStoreChi</div><div class="ttdoc">Number of store chi. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00066">SVFGStat.h:66</a></div></div>
@@ -175,13 +176,12 @@ $(function() {
175
176
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a5f0c72186ee16f5e88782b5edc9fa5b1"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a5f0c72186ee16f5e88782b5edc9fa5b1">SVF::SVFGStat::avgWeight</a></div><div class="ttdeci">int avgWeight</div><div class="ttdoc">average weight. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00204">SVFGStat.h:204</a></div></div>
176
177
  <div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
177
178
  <div class="ttc" id="PTAStat_8h_html"><div class="ttname"><a href="PTAStat_8h.html">PTAStat.h</a></div></div>
178
- <div class="ttc" id="classSVF_1_1MemSSAStat_html_ad5fbe23c3374e5b3a45ac5fa4900441a"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#ad5fbe23c3374e5b3a45ac5fa4900441a">SVF::MemSSAStat::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#l00127">SVFGStat.cpp:127</a></div></div>
179
+ <div class="ttc" id="classSVF_1_1MemSSAStat_html_ad5fbe23c3374e5b3a45ac5fa4900441a"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#ad5fbe23c3374e5b3a45ac5fa4900441a">SVF::MemSSAStat::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#l00128">SVFGStat.cpp:128</a></div></div>
179
180
  <div class="ttc" id="classSVF_1_1SVFGStat_html_adcb30427bb220dc122ad22030e10eb21"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#adcb30427bb220dc122ad22030e10eb21">SVF::SVFGStat::indVFEdgeStart</a></div><div class="ttdeci">void indVFEdgeStart()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00119">SVFGStat.h:119</a></div></div>
180
181
  <div class="ttc" id="classSVF_1_1MemSSAStat_html_ae57c6e5b97581150b7561c93e0887569"><div class="ttname"><a href="classSVF_1_1MemSSAStat.html#ae57c6e5b97581150b7561c93e0887569">SVF::MemSSAStat::NumOfCSHasChi</a></div><div class="ttdeci">static const char * NumOfCSHasChi</div><div class="ttdoc">Number of call sites which have chi. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00071">SVFGStat.h:71</a></div></div>
181
182
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0e1fcb9154aad266406c4da4861ba020"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0e1fcb9154aad266406c4da4861ba020">SVF::SVFGStat::numOfPhi</a></div><div class="ttdeci">int numOfPhi</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00191">SVFGStat.h:191</a></div></div>
182
183
  <div class="ttc" id="classSVF_1_1SVFGStat_html_adc6a5c3e430bdf942f1462e101ac6917"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#adc6a5c3e430bdf942f1462e101ac6917">SVF::SVFGStat::inForwardSlice</a></div><div class="ttdeci">bool inForwardSlice(const SVFGNode *node) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00253">SVFGStat.h:253</a></div></div>
183
184
  <div class="ttc" id="classSVF_1_1VFGNode_html"><div class="ttname"><a href="classSVF_1_1VFGNode.html">SVF::VFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00046">VFGNode.h:46</a></div></div>
184
- <div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
185
185
  </div><!-- fragment --></div><!-- contents -->
186
186
  <!-- start footer part -->
187
187
  <hr class="footer"/><address class="footer"><small>