svf-tools 1.0.560 → 1.0.561

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 (272) hide show
  1. package/README.md +1 -1
  2. package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +43 -43
  3. package/SVF-doxygen/html/html/AndersenPWC_8h_source.html +2 -2
  4. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +16 -16
  6. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +2 -2
  7. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +18 -18
  8. package/SVF-doxygen/html/html/Andersen_8h_source.html +56 -56
  9. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
  10. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +44 -44
  11. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +43 -43
  12. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +12 -12
  13. package/SVF-doxygen/html/html/DDAClient_8h_source.html +36 -36
  14. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +19 -19
  15. package/SVF-doxygen/html/html/DDAPass_8h_source.html +21 -21
  16. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +51 -51
  17. package/SVF-doxygen/html/html/DDAStat_8h_source.html +51 -51
  18. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +111 -111
  19. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
  20. package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +2 -2
  21. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +40 -40
  22. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +52 -52
  23. package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +2 -2
  24. package/SVF-doxygen/html/html/FileChecker_8h_source.html +2 -2
  25. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
  26. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +42 -42
  27. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +3 -3
  28. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +6 -6
  29. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +4 -4
  30. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +3 -3
  31. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +1 -1
  32. package/SVF-doxygen/html/html/LocationSet_8h_source.html +1 -1
  33. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +34 -34
  34. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +114 -114
  35. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +2 -2
  36. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +7 -7
  37. package/SVF-doxygen/html/html/MHP_8cpp.html +2 -2
  38. package/SVF-doxygen/html/html/MHP_8cpp_source.html +94 -94
  39. package/SVF-doxygen/html/html/MHP_8h_source.html +135 -135
  40. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +6 -6
  41. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +2 -2
  42. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +2 -2
  43. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +10 -10
  44. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +6 -6
  45. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +33 -33
  46. package/SVF-doxygen/html/html/MTAStat_8h_source.html +14 -14
  47. package/SVF-doxygen/html/html/MTA_8cpp_source.html +28 -28
  48. package/SVF-doxygen/html/html/MTA_8h_source.html +24 -24
  49. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +6 -6
  50. package/SVF-doxygen/html/html/MemPartition_8h_source.html +4 -4
  51. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +50 -50
  52. package/SVF-doxygen/html/html/MemRegion_8h_source.html +93 -93
  53. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +59 -59
  54. package/SVF-doxygen/html/html/MemSSA_8h_source.html +103 -103
  55. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +185 -185
  56. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +1 -1
  57. package/SVF-doxygen/html/html/PAGBuilderFromFile_8h_source.html +1 -1
  58. package/SVF-doxygen/html/html/PCG_8cpp_source.html +14 -14
  59. package/SVF-doxygen/html/html/PCG_8h_source.html +52 -52
  60. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +40 -40
  61. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +181 -181
  62. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +15 -15
  63. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +30 -30
  64. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +1 -1
  65. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
  66. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +2 -2
  67. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +60 -60
  68. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +2 -2
  69. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
  70. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
  71. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +1 -1
  72. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +2 -2
  73. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +19 -19
  74. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +1 -1
  75. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +12 -12
  76. package/SVF-doxygen/html/html/SVFG_8h_source.html +5 -5
  77. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +1 -1
  78. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +3 -3
  79. package/SVF-doxygen/html/html/SaberAnnotator_8h_source.html +2 -2
  80. package/SVF-doxygen/html/html/SaberCheckerAPI_8cpp_source.html +1 -1
  81. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
  82. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +1 -1
  83. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +1 -1
  84. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +3 -3
  85. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +1 -1
  86. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +13 -13
  87. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +66 -66
  88. package/SVF-doxygen/html/html/SrcSnkSolver_8h_source.html +1 -1
  89. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +4 -4
  90. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +6 -6
  91. package/SVF-doxygen/html/html/TCT_8cpp_source.html +44 -44
  92. package/SVF-doxygen/html/html/TCT_8h_source.html +93 -93
  93. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
  94. package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +2 -2
  95. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +2 -2
  96. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +25 -25
  97. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +38 -38
  98. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +5 -5
  99. package/SVF-doxygen/html/html/WPAStat_8h_source.html +2 -2
  100. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +2 -2
  101. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +2 -2
  102. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +22 -22
  103. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +102 -102
  104. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +43 -43
  105. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +20 -20
  106. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +6 -6
  107. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +16 -16
  108. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +19 -19
  109. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +39 -39
  110. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +1 -1
  111. package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +2 -2
  112. package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +2 -2
  113. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
  114. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +100 -100
  115. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +51 -51
  116. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +58 -58
  117. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +165 -165
  118. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +286 -286
  119. package/SVF-doxygen/html/html/classSVF_1_1DFPTData.html +26 -26
  120. package/SVF-doxygen/html/html/classSVF_1_1DiffPTData.html +11 -11
  121. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +4 -4
  122. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +4 -4
  123. package/SVF-doxygen/html/html/classSVF_1_1EntryCHI.html +2 -2
  124. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +30 -30
  125. package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +3 -3
  126. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +71 -71
  127. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +7 -7
  128. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
  129. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +218 -218
  130. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +2 -2
  131. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +2 -2
  132. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +19 -19
  133. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  134. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +7 -7
  135. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +17 -17
  136. package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +2 -2
  137. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +334 -334
  138. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +9 -9
  139. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +246 -246
  140. package/SVF-doxygen/html/html/classSVF_1_1MHPValidator.html +7 -7
  141. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +200 -200
  142. package/SVF-doxygen/html/html/classSVF_1_1MSSACHI.html +2 -2
  143. package/SVF-doxygen/html/html/classSVF_1_1MSSADEF.html +1 -1
  144. package/SVF-doxygen/html/html/classSVF_1_1MSSAMU.html +2 -2
  145. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHI.html +1 -1
  146. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +2 -2
  147. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +53 -53
  148. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +4 -4
  149. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +22 -22
  150. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +181 -181
  151. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +44 -44
  152. package/SVF-doxygen/html/html/classSVF_1_1MemRegion.html +23 -23
  153. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +267 -267
  154. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +18 -18
  155. package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +128 -128
  156. package/SVF-doxygen/html/html/classSVF_1_1MutableDiffPTData.html +55 -55
  157. package/SVF-doxygen/html/html/classSVF_1_1MutableIncDFPTData.html +88 -88
  158. package/SVF-doxygen/html/html/classSVF_1_1MutablePTData.html +78 -78
  159. package/SVF-doxygen/html/html/classSVF_1_1MutableVersionedPTData.html +77 -77
  160. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +131 -131
  161. package/SVF-doxygen/html/html/classSVF_1_1PTData.html +32 -32
  162. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +107 -107
  163. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +66 -66
  164. package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +84 -84
  165. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +77 -77
  166. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +134 -134
  167. package/SVF-doxygen/html/html/classSVF_1_1PersistentVersionedPTData.html +77 -77
  168. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +3 -3
  169. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +161 -161
  170. package/SVF-doxygen/html/html/classSVF_1_1RaceValidator.html +7 -7
  171. package/SVF-doxygen/html/html/classSVF_1_1RetMU.html +2 -2
  172. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +22 -22
  173. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +4 -4
  174. package/SVF-doxygen/html/html/classSVF_1_1SVFGNodeLockSpan.html +23 -23
  175. package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +5 -5
  176. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +2 -2
  177. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +157 -157
  178. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +15 -15
  179. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +2 -2
  180. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +264 -264
  181. package/SVF-doxygen/html/html/classSVF_1_1TCTEdge.html +13 -13
  182. package/SVF-doxygen/html/html/classSVF_1_1TCTNode.html +20 -20
  183. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +1 -1
  184. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +100 -100
  185. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +8 -8
  186. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +1 -1
  187. package/SVF-doxygen/html/html/classSVF_1_1VersionedPTData.html +11 -11
  188. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +6 -6
  189. package/SVF-doxygen/html/html/dda_8cpp.html +2 -2
  190. package/SVF-doxygen/html/html/dda_8cpp_source.html +2 -2
  191. package/SVF-doxygen/html/html/mta_8cpp.html +2 -2
  192. package/SVF-doxygen/html/html/mta_8cpp_source.html +2 -2
  193. package/SVF-doxygen/html/html/namespaceSVF.html +11 -11
  194. package/SVF-doxygen/html/html/structSVF_1_1MemRegion_1_1equalMemRegion.html +3 -3
  195. package/SVF-doxygen/html/html/structSVF_1_1VersionedFlowSensitive_1_1SCC_1_1NodeData.html +4 -4
  196. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +15 -15
  197. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1TCTNode_01_5_01_4_01_4.html +1 -1
  198. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1TCTNode_01_5_01_4.html +1 -1
  199. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1TCT_01_5_01_4.html +2 -2
  200. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SVFGNodeLockSpan_01_4.html +3 -3
  201. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  202. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  203. package/include/DDA/ContextDDA.h +29 -0
  204. package/include/DDA/DDAClient.h +23 -0
  205. package/include/DDA/DDAPass.h +22 -0
  206. package/include/DDA/DDAStat.h +22 -0
  207. package/include/DDA/DDAVFSolver.h +22 -0
  208. package/include/DDA/FlowDDA.h +29 -0
  209. package/include/MSSA/MSSAMuChi.h +1 -1
  210. package/include/MSSA/MemPartition.h +1 -1
  211. package/include/MSSA/MemRegion.h +5 -1
  212. package/include/MSSA/MemSSA.h +7 -1
  213. package/include/MSSA/SVFGBuilder.h +1 -1
  214. package/include/MTA/FSMPTA.h +26 -0
  215. package/include/MTA/LockAnalysis.h +22 -0
  216. package/include/MTA/MHP.h +22 -0
  217. package/include/MTA/MTA.h +27 -1
  218. package/include/MTA/MTAStat.h +22 -0
  219. package/include/MTA/PCG.h +22 -0
  220. package/include/MTA/TCT.h +22 -0
  221. package/include/MemoryModel/AbstractPointsToDS.h +34 -0
  222. package/include/MemoryModel/ConditionalPT.h +1 -1
  223. package/include/MemoryModel/LocationSet.h +1 -1
  224. package/include/MemoryModel/MutablePointsToDS.h +32 -0
  225. package/include/MemoryModel/PAGBuilderFromFile.h +2 -2
  226. package/include/MemoryModel/PersistentPointsToCache.h +3 -1
  227. package/include/MemoryModel/PersistentPointsToDS.h +10 -0
  228. package/include/MemoryModel/PointerAnalysis.h +1 -1
  229. package/include/MemoryModel/PointerAnalysisImpl.h +1 -1
  230. package/include/MemoryModel/SVFStatements.h +1 -1
  231. package/include/SABER/DoubleFreeChecker.h +1 -1
  232. package/include/SABER/FileChecker.h +1 -1
  233. package/include/SABER/LeakChecker.h +1 -1
  234. package/include/SABER/ProgSlice.h +8 -1
  235. package/include/SABER/SaberAnnotator.h +1 -1
  236. package/include/SABER/SaberCheckerAPI.h +1 -1
  237. package/include/SABER/SaberCondAllocator.h +1 -1
  238. package/include/SABER/SaberSVFGBuilder.h +1 -1
  239. package/include/SABER/SrcSnkDDA.h +8 -1
  240. package/include/SABER/SrcSnkSolver.h +1 -1
  241. package/include/WPA/Andersen.h +5 -0
  242. package/include/WPA/TypeAnalysis.h +1 -1
  243. package/include/WPA/VersionedFlowSensitive.h +4 -0
  244. package/lib/DDA/ContextDDA.cpp +22 -0
  245. package/lib/DDA/DDAClient.cpp +22 -0
  246. package/lib/DDA/DDAPass.cpp +23 -0
  247. package/lib/DDA/DDAStat.cpp +22 -0
  248. package/lib/DDA/FlowDDA.cpp +22 -0
  249. package/lib/MTA/FSMPTA.cpp +22 -0
  250. package/lib/MTA/LockAnalysis.cpp +22 -0
  251. package/lib/MTA/MHP.cpp +23 -1
  252. package/lib/MTA/MTA.cpp +23 -0
  253. package/lib/MTA/MTAStat.cpp +22 -0
  254. package/lib/MTA/PCG.cpp +22 -0
  255. package/lib/MTA/TCT.cpp +23 -0
  256. package/lib/MemoryModel/LocationSet.cpp +1 -1
  257. package/lib/MemoryModel/PAGBuilderFromFile.cpp +1 -1
  258. package/lib/MemoryModel/PointerAnalysis.cpp +1 -1
  259. package/lib/MemoryModel/PointerAnalysisImpl.cpp +23 -0
  260. package/lib/SABER/DoubleFreeChecker.cpp +1 -1
  261. package/lib/SABER/FileChecker.cpp +1 -1
  262. package/lib/SABER/LeakChecker.cpp +1 -1
  263. package/lib/SABER/ProgSlice.cpp +1 -1
  264. package/lib/SABER/SaberAnnotator.cpp +1 -1
  265. package/lib/SABER/SaberCheckerAPI.cpp +1 -1
  266. package/lib/SABER/SaberCondAllocator.cpp +1 -1
  267. package/lib/SABER/SaberSVFGBuilder.cpp +1 -1
  268. package/lib/SABER/SrcSnkDDA.cpp +1 -1
  269. package/lib/WPA/Steensgaard.cpp +22 -0
  270. package/lib/WPA/TypeAnalysis.cpp +1 -1
  271. package/lib/WPA/WPAPass.cpp +1 -1
  272. package/package.json +1 -1
@@ -335,7 +335,7 @@ Additional Inherited Members</h2></td></tr>
335
335
  <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
336
336
  <div class="textblock"><p>Statistics for <a class="el" href="classSVF_1_1MTA.html">MTA</a> </p>
337
337
 
338
- <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00024">24</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
338
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00046">46</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
339
339
  </div><h2 class="groupheader">Member Typedef Documentation</h2>
340
340
  <a id="a424ec97192aa5681f9f92a0a6f3ee8a8"></a>
341
341
  <h2 class="memtitle"><span class="permalink"><a href="#a424ec97192aa5681f9f92a0a6f3ee8a8">&#9670;&nbsp;</a></span>InstSet</h2>
@@ -349,7 +349,7 @@ Additional Inherited Members</h2></td></tr>
349
349
  </table>
350
350
  </div><div class="memdoc">
351
351
 
352
- <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00028">28</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
352
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00050">50</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
353
353
 
354
354
  </div>
355
355
  </div>
@@ -379,11 +379,11 @@ Additional Inherited Members</h2></td></tr>
379
379
 
380
380
  <p>Constructor. </p>
381
381
 
382
- <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00031">31</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
383
- <div class="fragment"><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; :<a class="code" href="classSVF_1_1PTAStat.html#ac9b65b591200c16c420fbd26710b448f">PTAStat</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1MTAStat.html#a3298dd910e731fdabc87bbcf65371a4a">TCTTime</a>(0),<a class="code" href="classSVF_1_1MTAStat.html#a56411f7e64febab8aab94a4a9207e5d8">MHPTime</a>(0),<a class="code" href="classSVF_1_1MTAStat.html#a030671ec358a93e3c2887f048dcfcce8">FSMPTATime</a>(0),<a class="code" href="classSVF_1_1MTAStat.html#a51e1ba35f81d89e210a937942f516839">AnnotationTime</a>(0)</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; {</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; }</div><div class="ttc" id="classSVF_1_1MTAStat_html_a030671ec358a93e3c2887f048dcfcce8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a030671ec358a93e3c2887f048dcfcce8">SVF::MTAStat::FSMPTATime</a></div><div class="ttdeci">double FSMPTATime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00045">MTAStat.h:45</a></div></div>
384
- <div class="ttc" id="classSVF_1_1MTAStat_html_a3298dd910e731fdabc87bbcf65371a4a"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a3298dd910e731fdabc87bbcf65371a4a">SVF::MTAStat::TCTTime</a></div><div class="ttdeci">double TCTTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00043">MTAStat.h:43</a></div></div>
385
- <div class="ttc" id="classSVF_1_1MTAStat_html_a51e1ba35f81d89e210a937942f516839"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a51e1ba35f81d89e210a937942f516839">SVF::MTAStat::AnnotationTime</a></div><div class="ttdeci">double AnnotationTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00046">MTAStat.h:46</a></div></div>
386
- <div class="ttc" id="classSVF_1_1MTAStat_html_a56411f7e64febab8aab94a4a9207e5d8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a56411f7e64febab8aab94a4a9207e5d8">SVF::MTAStat::MHPTime</a></div><div class="ttdeci">double MHPTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00044">MTAStat.h:44</a></div></div>
382
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00053">53</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
383
+ <div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; :<a class="code" href="classSVF_1_1PTAStat.html#ac9b65b591200c16c420fbd26710b448f">PTAStat</a>(<span class="keyword">nullptr</span>),<a class="code" href="classSVF_1_1MTAStat.html#a3298dd910e731fdabc87bbcf65371a4a">TCTTime</a>(0),<a class="code" href="classSVF_1_1MTAStat.html#a56411f7e64febab8aab94a4a9207e5d8">MHPTime</a>(0),<a class="code" href="classSVF_1_1MTAStat.html#a030671ec358a93e3c2887f048dcfcce8">FSMPTATime</a>(0),<a class="code" href="classSVF_1_1MTAStat.html#a51e1ba35f81d89e210a937942f516839">AnnotationTime</a>(0)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div><div class="ttc" id="classSVF_1_1MTAStat_html_a030671ec358a93e3c2887f048dcfcce8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a030671ec358a93e3c2887f048dcfcce8">SVF::MTAStat::FSMPTATime</a></div><div class="ttdeci">double FSMPTATime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00067">MTAStat.h:67</a></div></div>
384
+ <div class="ttc" id="classSVF_1_1MTAStat_html_a3298dd910e731fdabc87bbcf65371a4a"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a3298dd910e731fdabc87bbcf65371a4a">SVF::MTAStat::TCTTime</a></div><div class="ttdeci">double TCTTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00065">MTAStat.h:65</a></div></div>
385
+ <div class="ttc" id="classSVF_1_1MTAStat_html_a51e1ba35f81d89e210a937942f516839"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a51e1ba35f81d89e210a937942f516839">SVF::MTAStat::AnnotationTime</a></div><div class="ttdeci">double AnnotationTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00068">MTAStat.h:68</a></div></div>
386
+ <div class="ttc" id="classSVF_1_1MTAStat_html_a56411f7e64febab8aab94a4a9207e5d8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a56411f7e64febab8aab94a4a9207e5d8">SVF::MTAStat::MHPTime</a></div><div class="ttdeci">double MHPTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00066">MTAStat.h:66</a></div></div>
387
387
  <div class="ttc" id="classSVF_1_1PTAStat_html_ac9b65b591200c16c420fbd26710b448f"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ac9b65b591200c16c420fbd26710b448f">SVF::PTAStat::PTAStat</a></div><div class="ttdeci">PTAStat(PointerAnalysis *p)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00109">PTAStat.cpp:109</a></div></div>
388
388
  </div><!-- fragment -->
389
389
  </div>
@@ -407,13 +407,13 @@ Additional Inherited Members</h2></td></tr>
407
407
 
408
408
  <p>Statistics for annotation. </p>
409
409
 
410
- <p class="definition">Definition at line <a class="el" href="MTAStat_8cpp_source.html#l00156">156</a> of file <a class="el" href="MTAStat_8cpp_source.html">MTAStat.cpp</a>.</p>
411
- <div class="fragment"><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; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.clear();</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalNumOfStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b">numOfAllSt</a>;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalNumOfLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608">numOfAllLd</a>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfNonLocalStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb">numOfNonLocalSt</a>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfNonLocalLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#ad53ac0cec797f84d3bc14bdb6bab1ab3">numOfNonLocalLd</a>;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfAliasStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d">numOfAliasSt</a>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfAliasLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f">numOfAliasLd</a>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfMHPStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2">numOfMHPSt</a>;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfMHPLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8">numOfMHPLd</a>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfAnnotatedStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee">numOfAnnotatedSt</a>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfAnnotatedLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a57df091dbdd4fc947cc5e7aaec123700">numOfAnnotatedLd</a>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;AnnotationTime&quot;</span>] = <a class="code" href="classSVF_1_1MTAStat.html#a51e1ba35f81d89e210a937942f516839">AnnotationTime</a>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****Annotation Statistics****\n&quot;</span>;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>();</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;}</div><div class="ttc" id="classSVF_1_1PTAStat_html_aca3e99ad83bddabee1dd565522691c78"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(std::string str=&quot;&quot;) override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00273">PTAStat.cpp:273</a></div></div>
410
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8cpp_source.html#l00178">178</a> of file <a class="el" href="MTAStat_8cpp_source.html">MTAStat.cpp</a>.</p>
411
+ <div class="fragment"><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;{</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.clear();</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalNumOfStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#aa0149b932b4148b14b36e2c5cf9b614b">numOfAllSt</a>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalNumOfLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608">numOfAllLd</a>;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfNonLocalStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb">numOfNonLocalSt</a>;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfNonLocalLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#ad53ac0cec797f84d3bc14bdb6bab1ab3">numOfNonLocalLd</a>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfAliasStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d">numOfAliasSt</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfAliasLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f">numOfAliasLd</a>;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfMHPStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a3a53e90b4f361d1298983bc89795b3d2">numOfMHPSt</a>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfMHPLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8">numOfMHPLd</a>;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfAnnotatedStore&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee">numOfAnnotatedSt</a>;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfAnnotatedLoad&quot;</span>] = anno-&gt;<a class="code" href="classSVF_1_1MTAAnnotator.html#a57df091dbdd4fc947cc5e7aaec123700">numOfAnnotatedLd</a>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;AnnotationTime&quot;</span>] = <a class="code" href="classSVF_1_1MTAStat.html#a51e1ba35f81d89e210a937942f516839">AnnotationTime</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****Annotation Statistics****\n&quot;</span>;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>();</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;}</div><div class="ttc" id="classSVF_1_1PTAStat_html_aca3e99ad83bddabee1dd565522691c78"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(std::string str=&quot;&quot;) override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00273">PTAStat.cpp:273</a></div></div>
412
412
  <div class="ttc" id="classSVF_1_1MTAAnnotator_html_a29e0123620ab072fddc45331c6aa46e8"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#a29e0123620ab072fddc45331c6aa46e8">SVF::MTAAnnotator::numOfMHPLd</a></div><div class="ttdeci">u32_t numOfMHPLd</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00102">MTAAnnotator.h:102</a></div></div>
413
413
  <div class="ttc" id="classSVF_1_1MTAAnnotator_html_aa1572c2a9f260ff66c9da661fd669a5f"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#aa1572c2a9f260ff66c9da661fd669a5f">SVF::MTAAnnotator::numOfAliasLd</a></div><div class="ttdeci">u32_t numOfAliasLd</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00100">MTAAnnotator.h:100</a></div></div>
414
414
  <div class="ttc" id="classSVF_1_1MTAAnnotator_html_a3c07f9964623b3895b1bab59a63dccfb"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#a3c07f9964623b3895b1bab59a63dccfb">SVF::MTAAnnotator::numOfNonLocalSt</a></div><div class="ttdeci">u32_t numOfNonLocalSt</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00097">MTAAnnotator.h:97</a></div></div>
415
415
  <div class="ttc" id="classSVF_1_1MTAAnnotator_html_a5c1743a40d54fdbde2f9dadb612de608"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#a5c1743a40d54fdbde2f9dadb612de608">SVF::MTAAnnotator::numOfAllLd</a></div><div class="ttdeci">u32_t numOfAllLd</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00096">MTAAnnotator.h:96</a></div></div>
416
- <div class="ttc" id="classSVF_1_1MTAStat_html_a51e1ba35f81d89e210a937942f516839"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a51e1ba35f81d89e210a937942f516839">SVF::MTAStat::AnnotationTime</a></div><div class="ttdeci">double AnnotationTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00046">MTAStat.h:46</a></div></div>
416
+ <div class="ttc" id="classSVF_1_1MTAStat_html_a51e1ba35f81d89e210a937942f516839"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a51e1ba35f81d89e210a937942f516839">SVF::MTAStat::AnnotationTime</a></div><div class="ttdeci">double AnnotationTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00068">MTAStat.h:68</a></div></div>
417
417
  <div class="ttc" id="classSVF_1_1MTAAnnotator_html_a71178ddc585c9ca7c9e5c3b52378cd7d"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#a71178ddc585c9ca7c9e5c3b52378cd7d">SVF::MTAAnnotator::numOfAliasSt</a></div><div class="ttdeci">u32_t numOfAliasSt</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00099">MTAAnnotator.h:99</a></div></div>
418
418
  <div class="ttc" id="classSVF_1_1MTAAnnotator_html_afbb8c25a126362ab0a4101866b4fc0ee"><div class="ttname"><a href="classSVF_1_1MTAAnnotator.html#afbb8c25a126362ab0a4101866b4fc0ee">SVF::MTAAnnotator::numOfAnnotatedSt</a></div><div class="ttdeci">u32_t numOfAnnotatedSt</div><div class="ttdef"><b>Definition:</b> <a href="MTAAnnotator_8h_source.html#l00103">MTAAnnotator.h:103</a></div></div>
419
419
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
@@ -455,40 +455,40 @@ Additional Inherited Members</h2></td></tr>
455
455
  <p>Statistics for <a class="el" href="classSVF_1_1MHP.html">MHP</a> statement pairs. </p>
456
456
  <p>Iterate every memory access pairs write vs read write vs write </p>
457
457
 
458
- <p class="definition">Definition at line <a class="el" href="MTAStat_8cpp_source.html#l00092">92</a> of file <a class="el" href="MTAStat_8cpp_source.html">MTAStat.cpp</a>.</p>
459
- <div class="fragment"><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;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#aa78f442ee8d7272e98396fd86dea4993">Options::AllPairMHP</a>)</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classSVF_1_1MTAStat.html#a424ec97192aa5681f9f92a0a6f3ee8a8">InstSet</a> instSet1;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classSVF_1_1MTAStat.html#a424ec97192aa5681f9f92a0a6f3ee8a8">InstSet</a> instSet2;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* mod = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#a033936547612c54326a604f0ff1e39a6">getTCT</a>()-&gt;<a class="code" href="classSVF_1_1TCT.html#aabc2c84e951ed9ae64207e379acb3074">getSVFModule</a>();</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#a709371b13dcf500277f8bc275bdb23c7">SVFModule::iterator</a> <a class="code" href="CFLGrammar_8txt.html#a00967427d1c110ffcc82ea2a966f4564">F</a> = mod-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">begin</a>(), E = mod-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">end</a>(); <a class="code" href="CFLGrammar_8txt.html#a00967427d1c110ffcc82ea2a966f4564">F</a> != E; ++<a class="code" href="CFLGrammar_8txt.html#a00967427d1c110ffcc82ea2a966f4564">F</a>)</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; {</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = (*F);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* llvmfun = fun-&gt;<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVFUtil::isExtCall</a>(fun))</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span>(!mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#a1cfec64cc65abcbc5ba32695850bfb48">isConnectedfromMain</a>(llvmfun))</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a032e8478a7b6a8bb0b7755c98a7bce91">const_inst_iterator</a> II = inst_begin(llvmfun), E = inst_end(llvmfun); II != E; ++II)</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *inst = &amp;*II;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;LoadInst&gt;(inst))</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; instSet1.insert(inst);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; }</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa&lt;StoreInst&gt;(inst))</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; instSet1.insert(inst);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; instSet2.insert(inst);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</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; }</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"> 124</span>&#160; <span class="keywordflow">for</span>(InstSet::const_iterator it1 = instSet1.begin(), eit1 = instSet1.end(); it1!=eit1; ++it1)</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; <span class="keywordflow">for</span>(InstSet::const_iterator it2 = instSet2.begin(), eit2 = instSet2.end(); it2!=eit2; ++it2)</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; mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#a9989f2d200cec6c387d63f452b8eac6b">mayHappenInParallel</a>(*it1,*it2);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</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; }</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"> 134</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>.clear();</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.clear();</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalMHPQueries&quot;</span>] = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#a26ae18993915d76b704232cded9811c2">numOfTotalQueries</a>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfMHPPairs&quot;</span>] = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#ab8bd382e0c70b0feb2a291ecc4043106">numOfMHPQueries</a>;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalLockQueries&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#ad648ad9cda4070f9aec1addef0067627">numOfTotalQueries</a>;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfLockedPairs&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#a80c56ebc6b9b594e97b56767f451ff8b">numOfLockedQueries</a>;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfCxtLocks&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#a3df63f936d488166109d73bdcf0437d5">getNumOfCxtLocks</a>();</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfNewSVFGEdges&quot;</span>] = <a class="code" href="classSVF_1_1MTASVFGBuilder.html#a019a4597074fdad6e51d936ed4ead0d9">MTASVFGBuilder::numOfNewSVFGEdges</a>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfRemovedEdges&quot;</span>] = <a class="code" href="classSVF_1_1MTASVFGBuilder.html#a0319d1d2e78c79f9943f2e2f65da26ed">MTASVFGBuilder::numOfRemovedSVFGEdges</a>;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfRemovedPTS&quot;</span>] = <a class="code" href="classSVF_1_1MTASVFGBuilder.html#a07c3f5fa2e0092dac28521cf901a26cf">MTASVFGBuilder::numOfRemovedPTS</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;InterlevAnaTime&quot;</span>] = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#aca306b97c6dcd47a8f407038436473a2">interleavingTime</a>;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;LockAnaTime&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#adadee129c04b82576b4ca3c7594cdcb2">lockTime</a>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;InterlevQueryTime&quot;</span>] = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#ab7d9fe837844197b7acdc0493a50aaa5">interleavingQueriesTime</a>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;LockQueryTime&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#a853ab1a953ddcf76841016a833e43f3d">lockQueriesTime</a>;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;MHPAnalysisTime&quot;</span>] = <a class="code" href="classSVF_1_1MTAStat.html#a56411f7e64febab8aab94a4a9207e5d8">MHPTime</a>;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;MFSPTATime&quot;</span>] = <a class="code" href="classSVF_1_1MTAStat.html#a030671ec358a93e3c2887f048dcfcce8">FSMPTATime</a>;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****MHP Stmt Pairs Statistics****\n&quot;</span>;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>();</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;}</div><div class="ttc" id="classSVF_1_1MTASVFGBuilder_html_a019a4597074fdad6e51d936ed4ead0d9"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a019a4597074fdad6e51d936ed4ead0d9">SVF::MTASVFGBuilder::numOfNewSVFGEdges</a></div><div class="ttdeci">static u32_t numOfNewSVFGEdges</div><div class="ttdoc">Number of newly added SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00094">FSMPTA.h:94</a></div></div>
458
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8cpp_source.html#l00114">114</a> of file <a class="el" href="MTAStat_8cpp_source.html">MTAStat.cpp</a>.</p>
459
+ <div class="fragment"><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;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Options.html#aa78f442ee8d7272e98396fd86dea4993">Options::AllPairMHP</a>)</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"> 119</span>&#160; <a class="code" href="classSVF_1_1MTAStat.html#a424ec97192aa5681f9f92a0a6f3ee8a8">InstSet</a> instSet1;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="classSVF_1_1MTAStat.html#a424ec97192aa5681f9f92a0a6f3ee8a8">InstSet</a> instSet2;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* mod = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#a033936547612c54326a604f0ff1e39a6">getTCT</a>()-&gt;<a class="code" href="classSVF_1_1TCT.html#aabc2c84e951ed9ae64207e379acb3074">getSVFModule</a>();</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#a709371b13dcf500277f8bc275bdb23c7">SVFModule::iterator</a> <a class="code" href="CFLGrammar_8txt.html#a00967427d1c110ffcc82ea2a966f4564">F</a> = mod-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">begin</a>(), E = mod-&gt;<a class="code" href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">end</a>(); <a class="code" href="CFLGrammar_8txt.html#a00967427d1c110ffcc82ea2a966f4564">F</a> != E; ++<a class="code" href="CFLGrammar_8txt.html#a00967427d1c110ffcc82ea2a966f4564">F</a>)</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"> 124</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = (*F);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* llvmfun = fun-&gt;<a class="code" href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">getLLVMFun</a>();</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVFUtil::isExtCall</a>(fun))</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">if</span>(!mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#a1cfec64cc65abcbc5ba32695850bfb48">isConnectedfromMain</a>(llvmfun))</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#a032e8478a7b6a8bb0b7755c98a7bce91">const_inst_iterator</a> II = inst_begin(llvmfun), E = inst_end(llvmfun); II != E; ++II)</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; {</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">Instruction</a> *inst = &amp;*II;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;LoadInst&gt;(inst))</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; instSet1.insert(inst);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(SVFUtil::isa&lt;StoreInst&gt;(inst))</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"> 139</span>&#160; instSet1.insert(inst);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; instSet2.insert(inst);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</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"> 144</span>&#160;</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; <span class="keywordflow">for</span>(InstSet::const_iterator it1 = instSet1.begin(), eit1 = instSet1.end(); it1!=eit1; ++it1)</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; <span class="keywordflow">for</span>(InstSet::const_iterator it2 = instSet2.begin(), eit2 = instSet2.end(); it2!=eit2; ++it2)</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#a9989f2d200cec6c387d63f452b8eac6b">mayHappenInParallel</a>(*it1,*it2);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }</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"> 154</span>&#160;</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; <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>.clear();</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.clear();</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalMHPQueries&quot;</span>] = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#a26ae18993915d76b704232cded9811c2">numOfTotalQueries</a>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfMHPPairs&quot;</span>] = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#ab8bd382e0c70b0feb2a291ecc4043106">numOfMHPQueries</a>;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalLockQueries&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#ad648ad9cda4070f9aec1addef0067627">numOfTotalQueries</a>;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfLockedPairs&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#a80c56ebc6b9b594e97b56767f451ff8b">numOfLockedQueries</a>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfCxtLocks&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#a3df63f936d488166109d73bdcf0437d5">getNumOfCxtLocks</a>();</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfNewSVFGEdges&quot;</span>] = <a class="code" href="classSVF_1_1MTASVFGBuilder.html#a019a4597074fdad6e51d936ed4ead0d9">MTASVFGBuilder::numOfNewSVFGEdges</a>;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfRemovedEdges&quot;</span>] = <a class="code" href="classSVF_1_1MTASVFGBuilder.html#a0319d1d2e78c79f9943f2e2f65da26ed">MTASVFGBuilder::numOfRemovedSVFGEdges</a>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfRemovedPTS&quot;</span>] = <a class="code" href="classSVF_1_1MTASVFGBuilder.html#a07c3f5fa2e0092dac28521cf901a26cf">MTASVFGBuilder::numOfRemovedPTS</a>;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;InterlevAnaTime&quot;</span>] = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#aca306b97c6dcd47a8f407038436473a2">interleavingTime</a>;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;LockAnaTime&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#adadee129c04b82576b4ca3c7594cdcb2">lockTime</a>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;InterlevQueryTime&quot;</span>] = mhp-&gt;<a class="code" href="classSVF_1_1MHP.html#ab7d9fe837844197b7acdc0493a50aaa5">interleavingQueriesTime</a>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;LockQueryTime&quot;</span>] = lsa-&gt;<a class="code" href="classSVF_1_1LockAnalysis.html#a853ab1a953ddcf76841016a833e43f3d">lockQueriesTime</a>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;MHPAnalysisTime&quot;</span>] = <a class="code" href="classSVF_1_1MTAStat.html#a56411f7e64febab8aab94a4a9207e5d8">MHPTime</a>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;MFSPTATime&quot;</span>] = <a class="code" href="classSVF_1_1MTAStat.html#a030671ec358a93e3c2887f048dcfcce8">FSMPTATime</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"> 174</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****MHP Stmt Pairs Statistics****\n&quot;</span>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>();</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;}</div><div class="ttc" id="classSVF_1_1MTASVFGBuilder_html_a019a4597074fdad6e51d936ed4ead0d9"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a019a4597074fdad6e51d936ed4ead0d9">SVF::MTASVFGBuilder::numOfNewSVFGEdges</a></div><div class="ttdeci">static u32_t numOfNewSVFGEdges</div><div class="ttdoc">Number of newly added SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00120">FSMPTA.h:120</a></div></div>
460
460
  <div class="ttc" id="namespaceSVF_html_a032e8478a7b6a8bb0b7755c98a7bce91"><div class="ttname"><a href="namespaceSVF.html#a032e8478a7b6a8bb0b7755c98a7bce91">SVF::const_inst_iterator</a></div><div class="ttdeci">llvm::const_inst_iterator const_inst_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVF-FE_2BasicTypes_8h_source.html#l00161">BasicTypes.h:161</a></div></div>
461
461
  <div class="ttc" id="classSVF_1_1PTAStat_html_aca3e99ad83bddabee1dd565522691c78"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(std::string str=&quot;&quot;) override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00273">PTAStat.cpp:273</a></div></div>
462
- <div class="ttc" id="classSVF_1_1MHP_html_ab7d9fe837844197b7acdc0493a50aaa5"><div class="ttname"><a href="classSVF_1_1MHP.html#ab7d9fe837844197b7acdc0493a50aaa5">SVF::MHP::interleavingQueriesTime</a></div><div class="ttdeci">double interleavingQueriesTime</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00264">MHP.h:264</a></div></div>
462
+ <div class="ttc" id="classSVF_1_1MHP_html_ab7d9fe837844197b7acdc0493a50aaa5"><div class="ttname"><a href="classSVF_1_1MHP.html#ab7d9fe837844197b7acdc0493a50aaa5">SVF::MHP::interleavingQueriesTime</a></div><div class="ttdeci">double interleavingQueriesTime</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00286">MHP.h:286</a></div></div>
463
463
  <div class="ttc" id="classSVF_1_1SVFModule_html_a5486697889c6cca4f9f426650defc255"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a5486697889c6cca4f9f426650defc255">SVF::SVFModule::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00156">SVFModule.h:156</a></div></div>
464
- <div class="ttc" id="classSVF_1_1MHP_html_aca306b97c6dcd47a8f407038436473a2"><div class="ttname"><a href="classSVF_1_1MHP.html#aca306b97c6dcd47a8f407038436473a2">SVF::MHP::interleavingTime</a></div><div class="ttdeci">double interleavingTime</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00263">MHP.h:263</a></div></div>
464
+ <div class="ttc" id="classSVF_1_1MHP_html_aca306b97c6dcd47a8f407038436473a2"><div class="ttname"><a href="classSVF_1_1MHP.html#aca306b97c6dcd47a8f407038436473a2">SVF::MHP::interleavingTime</a></div><div class="ttdeci">double interleavingTime</div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00285">MHP.h:285</a></div></div>
465
465
  <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
466
- <div class="ttc" id="classSVF_1_1MHP_html_a1cfec64cc65abcbc5ba32695850bfb48"><div class="ttname"><a href="classSVF_1_1MHP.html#a1cfec64cc65abcbc5ba32695850bfb48">SVF::MHP::isConnectedfromMain</a></div><div class="ttdeci">bool isConnectedfromMain(const Function *fun)</div><div class="ttdoc">Whether the function is connected from main function in thread call graph. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00509">MHP.cpp:509</a></div></div>
467
- <div class="ttc" id="classSVF_1_1MTAStat_html_a030671ec358a93e3c2887f048dcfcce8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a030671ec358a93e3c2887f048dcfcce8">SVF::MTAStat::FSMPTATime</a></div><div class="ttdeci">double FSMPTATime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00045">MTAStat.h:45</a></div></div>
466
+ <div class="ttc" id="classSVF_1_1MHP_html_a1cfec64cc65abcbc5ba32695850bfb48"><div class="ttname"><a href="classSVF_1_1MHP.html#a1cfec64cc65abcbc5ba32695850bfb48">SVF::MHP::isConnectedfromMain</a></div><div class="ttdeci">bool isConnectedfromMain(const Function *fun)</div><div class="ttdoc">Whether the function is connected from main function in thread call graph. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00531">MHP.cpp:531</a></div></div>
467
+ <div class="ttc" id="classSVF_1_1MTAStat_html_a030671ec358a93e3c2887f048dcfcce8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a030671ec358a93e3c2887f048dcfcce8">SVF::MTAStat::FSMPTATime</a></div><div class="ttdeci">double FSMPTATime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00067">MTAStat.h:67</a></div></div>
468
468
  <div class="ttc" id="classSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00041">SVFModule.h:41</a></div></div>
469
- <div class="ttc" id="classSVF_1_1LockAnalysis_html_a3df63f936d488166109d73bdcf0437d5"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#a3df63f936d488166109d73bdcf0437d5">SVF::LockAnalysis::getNumOfCxtLocks</a></div><div class="ttdeci">u32_t getNumOfCxtLocks()</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00295">LockAnalysis.h:295</a></div></div>
470
- <div class="ttc" id="classSVF_1_1MHP_html_ab8bd382e0c70b0feb2a291ecc4043106"><div class="ttname"><a href="classSVF_1_1MHP.html#ab8bd382e0c70b0feb2a291ecc4043106">SVF::MHP::numOfMHPQueries</a></div><div class="ttdeci">u32_t numOfMHPQueries</div><div class="ttdoc">Number of queries are answered as may-happen-in-parallel. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00262">MHP.h:262</a></div></div>
471
- <div class="ttc" id="classSVF_1_1MTASVFGBuilder_html_a07c3f5fa2e0092dac28521cf901a26cf"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a07c3f5fa2e0092dac28521cf901a26cf">SVF::MTASVFGBuilder::numOfRemovedPTS</a></div><div class="ttdeci">static u32_t numOfRemovedPTS</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00096">FSMPTA.h:96</a></div></div>
472
- <div class="ttc" id="classSVF_1_1MHP_html_a9989f2d200cec6c387d63f452b8eac6b"><div class="ttname"><a href="classSVF_1_1MHP.html#a9989f2d200cec6c387d63f452b8eac6b">SVF::MHP::mayHappenInParallel</a></div><div class="ttdeci">virtual bool mayHappenInParallel(const Instruction *i1, const Instruction *i2)</div><div class="ttdoc">Interface to query whether two instructions may happen-in-parallel. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00604">MHP.cpp:604</a></div></div>
469
+ <div class="ttc" id="classSVF_1_1LockAnalysis_html_a3df63f936d488166109d73bdcf0437d5"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#a3df63f936d488166109d73bdcf0437d5">SVF::LockAnalysis::getNumOfCxtLocks</a></div><div class="ttdeci">u32_t getNumOfCxtLocks()</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00317">LockAnalysis.h:317</a></div></div>
470
+ <div class="ttc" id="classSVF_1_1MHP_html_ab8bd382e0c70b0feb2a291ecc4043106"><div class="ttname"><a href="classSVF_1_1MHP.html#ab8bd382e0c70b0feb2a291ecc4043106">SVF::MHP::numOfMHPQueries</a></div><div class="ttdeci">u32_t numOfMHPQueries</div><div class="ttdoc">Number of queries are answered as may-happen-in-parallel. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00284">MHP.h:284</a></div></div>
471
+ <div class="ttc" id="classSVF_1_1MTASVFGBuilder_html_a07c3f5fa2e0092dac28521cf901a26cf"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a07c3f5fa2e0092dac28521cf901a26cf">SVF::MTASVFGBuilder::numOfRemovedPTS</a></div><div class="ttdeci">static u32_t numOfRemovedPTS</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00122">FSMPTA.h:122</a></div></div>
472
+ <div class="ttc" id="classSVF_1_1MHP_html_a9989f2d200cec6c387d63f452b8eac6b"><div class="ttname"><a href="classSVF_1_1MHP.html#a9989f2d200cec6c387d63f452b8eac6b">SVF::MHP::mayHappenInParallel</a></div><div class="ttdeci">virtual bool mayHappenInParallel(const Instruction *i1, const Instruction *i2)</div><div class="ttdoc">Interface to query whether two instructions may happen-in-parallel. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8cpp_source.html#l00626">MHP.cpp:626</a></div></div>
473
473
  <div class="ttc" id="classSVF_1_1SVFStat_html_a07b6f8cb424b84b468c4518140fa3a41"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">SVF::SVFStat::generalNumMap</a></div><div class="ttdeci">NUMStatMap generalNumMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00073">SVFStat.h:73</a></div></div>
474
474
  <div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00070">BasicTypes.h:70</a></div></div>
475
475
  <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
476
- <div class="ttc" id="classSVF_1_1LockAnalysis_html_ad648ad9cda4070f9aec1addef0067627"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#ad648ad9cda4070f9aec1addef0067627">SVF::LockAnalysis::numOfTotalQueries</a></div><div class="ttdeci">u32_t numOfTotalQueries</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00493">LockAnalysis.h:493</a></div></div>
477
- <div class="ttc" id="classSVF_1_1LockAnalysis_html_a853ab1a953ddcf76841016a833e43f3d"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#a853ab1a953ddcf76841016a833e43f3d">SVF::LockAnalysis::lockQueriesTime</a></div><div class="ttdeci">double lockQueriesTime</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00495">LockAnalysis.h:495</a></div></div>
478
- <div class="ttc" id="classSVF_1_1MTASVFGBuilder_html_a0319d1d2e78c79f9943f2e2f65da26ed"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a0319d1d2e78c79f9943f2e2f65da26ed">SVF::MTASVFGBuilder::numOfRemovedSVFGEdges</a></div><div class="ttdeci">static u32_t numOfRemovedSVFGEdges</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00095">FSMPTA.h:95</a></div></div>
479
- <div class="ttc" id="classSVF_1_1MTAStat_html_a424ec97192aa5681f9f92a0a6f3ee8a8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a424ec97192aa5681f9f92a0a6f3ee8a8">SVF::MTAStat::InstSet</a></div><div class="ttdeci">Set&lt; const Instruction * &gt; InstSet</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00028">MTAStat.h:28</a></div></div>
476
+ <div class="ttc" id="classSVF_1_1LockAnalysis_html_ad648ad9cda4070f9aec1addef0067627"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#ad648ad9cda4070f9aec1addef0067627">SVF::LockAnalysis::numOfTotalQueries</a></div><div class="ttdeci">u32_t numOfTotalQueries</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00515">LockAnalysis.h:515</a></div></div>
477
+ <div class="ttc" id="classSVF_1_1LockAnalysis_html_a853ab1a953ddcf76841016a833e43f3d"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#a853ab1a953ddcf76841016a833e43f3d">SVF::LockAnalysis::lockQueriesTime</a></div><div class="ttdeci">double lockQueriesTime</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00517">LockAnalysis.h:517</a></div></div>
478
+ <div class="ttc" id="classSVF_1_1MTASVFGBuilder_html_a0319d1d2e78c79f9943f2e2f65da26ed"><div class="ttname"><a href="classSVF_1_1MTASVFGBuilder.html#a0319d1d2e78c79f9943f2e2f65da26ed">SVF::MTASVFGBuilder::numOfRemovedSVFGEdges</a></div><div class="ttdeci">static u32_t numOfRemovedSVFGEdges</div><div class="ttdef"><b>Definition:</b> <a href="FSMPTA_8h_source.html#l00121">FSMPTA.h:121</a></div></div>
479
+ <div class="ttc" id="classSVF_1_1MTAStat_html_a424ec97192aa5681f9f92a0a6f3ee8a8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a424ec97192aa5681f9f92a0a6f3ee8a8">SVF::MTAStat::InstSet</a></div><div class="ttdeci">Set&lt; const Instruction * &gt; InstSet</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00050">MTAStat.h:50</a></div></div>
480
480
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
481
- <div class="ttc" id="classSVF_1_1MTAStat_html_a56411f7e64febab8aab94a4a9207e5d8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a56411f7e64febab8aab94a4a9207e5d8">SVF::MTAStat::MHPTime</a></div><div class="ttdeci">double MHPTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00044">MTAStat.h:44</a></div></div>
482
- <div class="ttc" id="classSVF_1_1TCT_html_aabc2c84e951ed9ae64207e379acb3074"><div class="ttname"><a href="classSVF_1_1TCT.html#aabc2c84e951ed9ae64207e379acb3074">SVF::TCT::getSVFModule</a></div><div class="ttdeci">SVFModule * getSVFModule() const</div><div class="ttdoc">Get SVFFModule. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00160">TCT.h:160</a></div></div>
483
- <div class="ttc" id="classSVF_1_1LockAnalysis_html_a80c56ebc6b9b594e97b56767f451ff8b"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#a80c56ebc6b9b594e97b56767f451ff8b">SVF::LockAnalysis::numOfLockedQueries</a></div><div class="ttdeci">u32_t numOfLockedQueries</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00494">LockAnalysis.h:494</a></div></div>
481
+ <div class="ttc" id="classSVF_1_1MTAStat_html_a56411f7e64febab8aab94a4a9207e5d8"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a56411f7e64febab8aab94a4a9207e5d8">SVF::MTAStat::MHPTime</a></div><div class="ttdeci">double MHPTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00066">MTAStat.h:66</a></div></div>
482
+ <div class="ttc" id="classSVF_1_1TCT_html_aabc2c84e951ed9ae64207e379acb3074"><div class="ttname"><a href="classSVF_1_1TCT.html#aabc2c84e951ed9ae64207e379acb3074">SVF::TCT::getSVFModule</a></div><div class="ttdeci">SVFModule * getSVFModule() const</div><div class="ttdoc">Get SVFFModule. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00182">TCT.h:182</a></div></div>
483
+ <div class="ttc" id="classSVF_1_1LockAnalysis_html_a80c56ebc6b9b594e97b56767f451ff8b"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#a80c56ebc6b9b594e97b56767f451ff8b">SVF::LockAnalysis::numOfLockedQueries</a></div><div class="ttdeci">u32_t numOfLockedQueries</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00516">LockAnalysis.h:516</a></div></div>
484
484
  <div class="ttc" id="classSVF_1_1SVFStat_html_a5383691a34426a1a997b5eed387f1831"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">SVF::SVFStat::timeStatMap</a></div><div class="ttdeci">TIMEStatMap timeStatMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00074">SVFStat.h:74</a></div></div>
485
- <div class="ttc" id="classSVF_1_1MHP_html_a26ae18993915d76b704232cded9811c2"><div class="ttname"><a href="classSVF_1_1MHP.html#a26ae18993915d76b704232cded9811c2">SVF::MHP::numOfTotalQueries</a></div><div class="ttdeci">u32_t numOfTotalQueries</div><div class="ttdoc">Total number of queries. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00261">MHP.h:261</a></div></div>
486
- <div class="ttc" id="classSVF_1_1MHP_html_a033936547612c54326a604f0ff1e39a6"><div class="ttname"><a href="classSVF_1_1MHP.html#a033936547612c54326a604f0ff1e39a6">SVF::MHP::getTCT</a></div><div class="ttdeci">TCT * getTCT() const</div><div class="ttdoc">Get Thread Creation Tree. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00060">MHP.h:60</a></div></div>
485
+ <div class="ttc" id="classSVF_1_1MHP_html_a26ae18993915d76b704232cded9811c2"><div class="ttname"><a href="classSVF_1_1MHP.html#a26ae18993915d76b704232cded9811c2">SVF::MHP::numOfTotalQueries</a></div><div class="ttdeci">u32_t numOfTotalQueries</div><div class="ttdoc">Total number of queries. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00283">MHP.h:283</a></div></div>
486
+ <div class="ttc" id="classSVF_1_1MHP_html_a033936547612c54326a604f0ff1e39a6"><div class="ttname"><a href="classSVF_1_1MHP.html#a033936547612c54326a604f0ff1e39a6">SVF::MHP::getTCT</a></div><div class="ttdeci">TCT * getTCT() const</div><div class="ttdoc">Get Thread Creation Tree. </div><div class="ttdef"><b>Definition:</b> <a href="MHP_8h_source.html#l00082">MHP.h:82</a></div></div>
487
487
  <div class="ttc" id="classSVF_1_1SVFFunction_html_ac4ae917ae35ac6fca652fe2dd90a8ac2"><div class="ttname"><a href="classSVF_1_1SVFFunction.html#ac4ae917ae35ac6fca652fe2dd90a8ac2">SVF::SVFFunction::getLLVMFun</a></div><div class="ttdeci">Function * getLLVMFun() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00151">BasicTypes.h:151</a></div></div>
488
488
  <div class="ttc" id="CFLGrammar_8txt_html_a00967427d1c110ffcc82ea2a966f4564"><div class="ttname"><a href="CFLGrammar_8txt.html#a00967427d1c110ffcc82ea2a966f4564">F</a></div><div class="ttdeci">V Fbar V F</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8txt_source.html#l00016">CFLGrammar.txt:16</a></div></div>
489
489
  <div class="ttc" id="classSVF_1_1Options_html_aa78f442ee8d7272e98396fd86dea4993"><div class="ttname"><a href="classSVF_1_1Options.html#aa78f442ee8d7272e98396fd86dea4993">SVF::Options::AllPairMHP</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; AllPairMHP</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00189">Options.h:189</a></div></div>
490
490
  <div class="ttc" id="classSVF_1_1SVFModule_html_a58d03edb6ff85f4943135478f113df31"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a58d03edb6ff85f4943135478f113df31">SVF::SVFModule::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00164">SVFModule.h:164</a></div></div>
491
- <div class="ttc" id="classSVF_1_1LockAnalysis_html_adadee129c04b82576b4ca3c7594cdcb2"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#adadee129c04b82576b4ca3c7594cdcb2">SVF::LockAnalysis::lockTime</a></div><div class="ttdeci">double lockTime</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00492">LockAnalysis.h:492</a></div></div>
491
+ <div class="ttc" id="classSVF_1_1LockAnalysis_html_adadee129c04b82576b4ca3c7594cdcb2"><div class="ttname"><a href="classSVF_1_1LockAnalysis.html#adadee129c04b82576b4ca3c7594cdcb2">SVF::LockAnalysis::lockTime</a></div><div class="ttdeci">double lockTime</div><div class="ttdef"><b>Definition:</b> <a href="LockAnalysis_8h_source.html#l00514">LockAnalysis.h:514</a></div></div>
492
492
  <div class="ttc" id="classSVF_1_1SVFModule_html_a709371b13dcf500277f8bc275bdb23c7"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a709371b13dcf500277f8bc275bdb23c7">SVF::SVFModule::iterator</a></div><div class="ttdeci">FunctionSetType::iterator iterator</div><div class="ttdoc">Iterators type def. </div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00051">SVFModule.h:51</a></div></div>
493
493
  <div class="ttc" id="classSVF_1_1PTAStat_html_afdb975520329be0c33cc7bdd51ba7031"><div class="ttname"><a href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">SVF::PTAStat::PTNumStatMap</a></div><div class="ttdeci">NUMStatMap PTNumStatMap</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00123">PTAStat.h:123</a></div></div>
494
494
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a22ef185e767ff76c098e75126c885400"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a22ef185e767ff76c098e75126c885400">SVF::SVFUtil::isExtCall</a></div><div class="ttdeci">bool isExtCall(const SVFFunction *fun)</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00346">SVFUtil.h:346</a></div></div>
@@ -513,18 +513,18 @@ Additional Inherited Members</h2></td></tr>
513
513
 
514
514
  <p>Statistics for thread creation tree. </p>
515
515
 
516
- <p class="definition">Definition at line <a class="el" href="MTAStat_8cpp_source.html#l00072">72</a> of file <a class="el" href="MTAStat_8cpp_source.html">MTAStat.cpp</a>.</p>
517
- <div class="fragment"><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;{</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.clear();</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfCandidateFun&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#a54cceb577b4fb89c1d84011ec4d2fe2c">getMakredProcs</a>().size();</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfTotalFun&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#a1602d02773578bca73dcbd29b95c67d0">getThreadCallGraph</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a8c8d16036008f87c7811586047599858">getTotalNodeNum</a>();</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfTCTNode&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#af03bfeae7e09a9f62d96ba59632e588f">getTCTNodeNum</a>();</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfTCTEdge&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#a6ac3c91742a6e9088c4e9cf1b7d2f42e">getTCTEdgeNum</a>();</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxCxtSize&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#a49f0672760c29b9be7b6f99a4c82ab7e">getMaxCxtSize</a>();</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;BuildingTCTTime&quot;</span>] = <a class="code" href="classSVF_1_1MTAStat.html#a3298dd910e731fdabc87bbcf65371a4a">TCTTime</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****Thread Creation Tree Statistics****\n&quot;</span>;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>();</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a8c8d16036008f87c7811586047599858"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a8c8d16036008f87c7811586047599858">SVF::GenericGraph::getTotalNodeNum</a></div><div class="ttdeci">u32_t getTotalNodeNum() const</div><div class="ttdoc">Get total number of node/edge. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00418">GenericGraph.h:418</a></div></div>
516
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8cpp_source.html#l00094">94</a> of file <a class="el" href="MTAStat_8cpp_source.html">MTAStat.cpp</a>.</p>
517
+ <div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;{</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.clear();</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfCandidateFun&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#a54cceb577b4fb89c1d84011ec4d2fe2c">getMakredProcs</a>().size();</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfTotalFun&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#a1602d02773578bca73dcbd29b95c67d0">getThreadCallGraph</a>()-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a8c8d16036008f87c7811586047599858">getTotalNodeNum</a>();</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfTCTNode&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#af03bfeae7e09a9f62d96ba59632e588f">getTCTNodeNum</a>();</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfTCTEdge&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#a6ac3c91742a6e9088c4e9cf1b7d2f42e">getTCTEdgeNum</a>();</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxCxtSize&quot;</span>] = tct-&gt;<a class="code" href="classSVF_1_1TCT.html#a49f0672760c29b9be7b6f99a4c82ab7e">getMaxCxtSize</a>();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>[<span class="stringliteral">&quot;BuildingTCTTime&quot;</span>] = <a class="code" href="classSVF_1_1MTAStat.html#a3298dd910e731fdabc87bbcf65371a4a">TCTTime</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****Thread Creation Tree Statistics****\n&quot;</span>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>();</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a8c8d16036008f87c7811586047599858"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a8c8d16036008f87c7811586047599858">SVF::GenericGraph::getTotalNodeNum</a></div><div class="ttdeci">u32_t getTotalNodeNum() const</div><div class="ttdoc">Get total number of node/edge. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00418">GenericGraph.h:418</a></div></div>
518
518
  <div class="ttc" id="classSVF_1_1PTAStat_html_aca3e99ad83bddabee1dd565522691c78"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(std::string str=&quot;&quot;) override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00273">PTAStat.cpp:273</a></div></div>
519
- <div class="ttc" id="classSVF_1_1TCT_html_a54cceb577b4fb89c1d84011ec4d2fe2c"><div class="ttname"><a href="classSVF_1_1TCT.html#a54cceb577b4fb89c1d84011ec4d2fe2c">SVF::TCT::getMakredProcs</a></div><div class="ttdeci">const FunSet &amp; getMakredProcs() const</div><div class="ttdoc">Get marked candidate functions. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00206">TCT.h:206</a></div></div>
520
- <div class="ttc" id="classSVF_1_1TCT_html_af03bfeae7e09a9f62d96ba59632e588f"><div class="ttname"><a href="classSVF_1_1TCT.html#af03bfeae7e09a9f62d96ba59632e588f">SVF::TCT::getTCTNodeNum</a></div><div class="ttdeci">u32_t getTCTNodeNum() const</div><div class="ttdoc">Get Statistics. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00219">TCT.h:219</a></div></div>
521
- <div class="ttc" id="classSVF_1_1MTAStat_html_a3298dd910e731fdabc87bbcf65371a4a"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a3298dd910e731fdabc87bbcf65371a4a">SVF::MTAStat::TCTTime</a></div><div class="ttdeci">double TCTTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00043">MTAStat.h:43</a></div></div>
522
- <div class="ttc" id="classSVF_1_1TCT_html_a6ac3c91742a6e9088c4e9cf1b7d2f42e"><div class="ttname"><a href="classSVF_1_1TCT.html#a6ac3c91742a6e9088c4e9cf1b7d2f42e">SVF::TCT::getTCTEdgeNum</a></div><div class="ttdeci">u32_t getTCTEdgeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00223">TCT.h:223</a></div></div>
519
+ <div class="ttc" id="classSVF_1_1TCT_html_a54cceb577b4fb89c1d84011ec4d2fe2c"><div class="ttname"><a href="classSVF_1_1TCT.html#a54cceb577b4fb89c1d84011ec4d2fe2c">SVF::TCT::getMakredProcs</a></div><div class="ttdeci">const FunSet &amp; getMakredProcs() const</div><div class="ttdoc">Get marked candidate functions. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00228">TCT.h:228</a></div></div>
520
+ <div class="ttc" id="classSVF_1_1TCT_html_af03bfeae7e09a9f62d96ba59632e588f"><div class="ttname"><a href="classSVF_1_1TCT.html#af03bfeae7e09a9f62d96ba59632e588f">SVF::TCT::getTCTNodeNum</a></div><div class="ttdeci">u32_t getTCTNodeNum() const</div><div class="ttdoc">Get Statistics. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00241">TCT.h:241</a></div></div>
521
+ <div class="ttc" id="classSVF_1_1MTAStat_html_a3298dd910e731fdabc87bbcf65371a4a"><div class="ttname"><a href="classSVF_1_1MTAStat.html#a3298dd910e731fdabc87bbcf65371a4a">SVF::MTAStat::TCTTime</a></div><div class="ttdeci">double TCTTime</div><div class="ttdef"><b>Definition:</b> <a href="MTAStat_8h_source.html#l00065">MTAStat.h:65</a></div></div>
522
+ <div class="ttc" id="classSVF_1_1TCT_html_a6ac3c91742a6e9088c4e9cf1b7d2f42e"><div class="ttname"><a href="classSVF_1_1TCT.html#a6ac3c91742a6e9088c4e9cf1b7d2f42e">SVF::TCT::getTCTEdgeNum</a></div><div class="ttdeci">u32_t getTCTEdgeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00245">TCT.h:245</a></div></div>
523
523
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
524
524
  <div class="ttc" id="classSVF_1_1SVFStat_html_a5383691a34426a1a997b5eed387f1831"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">SVF::SVFStat::timeStatMap</a></div><div class="ttdeci">TIMEStatMap timeStatMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00074">SVFStat.h:74</a></div></div>
525
- <div class="ttc" id="classSVF_1_1TCT_html_a1602d02773578bca73dcbd29b95c67d0"><div class="ttname"><a href="classSVF_1_1TCT.html#a1602d02773578bca73dcbd29b95c67d0">SVF::TCT::getThreadCallGraph</a></div><div class="ttdeci">ThreadCallGraph * getThreadCallGraph() const</div><div class="ttdoc">Get TCG. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00166">TCT.h:166</a></div></div>
525
+ <div class="ttc" id="classSVF_1_1TCT_html_a1602d02773578bca73dcbd29b95c67d0"><div class="ttname"><a href="classSVF_1_1TCT.html#a1602d02773578bca73dcbd29b95c67d0">SVF::TCT::getThreadCallGraph</a></div><div class="ttdeci">ThreadCallGraph * getThreadCallGraph() const</div><div class="ttdoc">Get TCG. </div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00188">TCT.h:188</a></div></div>
526
526
  <div class="ttc" id="classSVF_1_1PTAStat_html_afdb975520329be0c33cc7bdd51ba7031"><div class="ttname"><a href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">SVF::PTAStat::PTNumStatMap</a></div><div class="ttdeci">NUMStatMap PTNumStatMap</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00123">PTAStat.h:123</a></div></div>
527
- <div class="ttc" id="classSVF_1_1TCT_html_a49f0672760c29b9be7b6f99a4c82ab7e"><div class="ttname"><a href="classSVF_1_1TCT.html#a49f0672760c29b9be7b6f99a4c82ab7e">SVF::TCT::getMaxCxtSize</a></div><div class="ttdeci">u32_t getMaxCxtSize() const</div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00227">TCT.h:227</a></div></div>
527
+ <div class="ttc" id="classSVF_1_1TCT_html_a49f0672760c29b9be7b6f99a4c82ab7e"><div class="ttname"><a href="classSVF_1_1TCT.html#a49f0672760c29b9be7b6f99a4c82ab7e">SVF::TCT::getMaxCxtSize</a></div><div class="ttdeci">u32_t getMaxCxtSize() const</div><div class="ttdef"><b>Definition:</b> <a href="TCT_8h_source.html#l00249">TCT.h:249</a></div></div>
528
528
  </div><!-- fragment -->
529
529
  </div>
530
530
  </div>
@@ -547,8 +547,8 @@ Additional Inherited Members</h2></td></tr>
547
547
  <p>Statistics for thread call graph. </p>
548
548
  <p>Statistics for thread call graph </p>
549
549
 
550
- <p class="definition">Definition at line <a class="el" href="MTAStat_8cpp_source.html#l00024">24</a> of file <a class="el" href="MTAStat_8cpp_source.html">MTAStat.cpp</a>.</p>
551
- <div class="fragment"><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;{</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfForkEdge = 0;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfJoinEdge = 0;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfIndForksite = 0;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfIndForkEdge = 0;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">for</span> (ThreadCallGraph::CallSiteSet::const_iterator it = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a37f2e076713a9aeb0e4313fb05dfb92e">forksitesBegin</a>(), eit = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a1ebbd26c17cff1c1a1bee9caa9a8f825">forksitesEnd</a>(); it != eit; ++it)</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; {</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordtype">bool</span> indirectfork = <span class="keyword">false</span>;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* spawnee = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>&gt;(tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#adcad8524a53baf256cd45503ec568c10">getThreadAPI</a>()-&gt;<a class="code" href="classSVF_1_1ThreadAPI.html#a7ddc0c71aeae315af21972a4905b3456">getForkedFun</a>((*it)-&gt;getCallSite()));</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keywordflow">if</span>(spawnee==<span class="keyword">nullptr</span>)</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; numOfIndForksite++;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; indirectfork = <span class="keyword">true</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="keywordflow">for</span> (ThreadCallGraph::ForkEdgeSet::const_iterator cgIt = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a8721610a39212613ad55bbd46a35c576">getForkEdgeBegin</a>(*it), ecgIt =</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a8351e7ab445cb7faf0209d1fbc63fce1">getForkEdgeEnd</a>(*it); cgIt != ecgIt; ++cgIt)</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; {</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; numOfForkEdge++;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">if</span>(indirectfork)</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; numOfIndForkEdge++;</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; }</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"> 48</span>&#160; <span class="keywordflow">for</span> (ThreadCallGraph::CallSiteSet::const_iterator it = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a98ecfe14be2d38d292b5919716cdd29d">joinsitesBegin</a>(), eit = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a50502f398e5eac9c6da3e26ea6052057">joinsitesEnd</a>(); it != eit; ++it)</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; <span class="keywordflow">for</span> (ThreadCallGraph::JoinEdgeSet::const_iterator cgIt = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#af848d7cb8a9f756ff45cca45adbf3b84">getJoinEdgeBegin</a>(*it), ecgIt =</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a811d7d13c05c71bd816621a9a8765365">getJoinEdgeEnd</a>(*it); cgIt != ecgIt; ++cgIt)</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; numOfJoinEdge++;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</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"> 58</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfForkSite&quot;</span>] = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#aa847760765aae18bcb93b260a881441b">getNumOfForksite</a>();</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfForkEdge&quot;</span>] = numOfForkEdge;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfJoinEdge&quot;</span>] = numOfJoinEdge;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfJoinSite&quot;</span>] = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a733bf08c7a496435ad09a41e6b0343ff">getNumOfJoinsite</a>();</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfIndForkSite&quot;</span>] = numOfIndForksite;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfIndForkEdge&quot;</span>] = numOfIndForkEdge;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfIndCallEdge&quot;</span>] = tcg-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a12c899013f8a9ddd895bfb5027a84d4c">getNumOfResolvedIndCallEdge</a>();</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****Thread Call Graph Statistics****\n&quot;</span>;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;}</div><div class="ttc" id="classSVF_1_1ThreadCallGraph_html_aa847760765aae18bcb93b260a881441b"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#aa847760765aae18bcb93b260a881441b">SVF::ThreadCallGraph::getNumOfForksite</a></div><div class="ttdeci">u32_t getNumOfForksite() const</div><div class="ttdoc">Num of fork/join sites. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00309">ThreadCallGraph.h:309</a></div></div>
550
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8cpp_source.html#l00046">46</a> of file <a class="el" href="MTAStat_8cpp_source.html">MTAStat.cpp</a>.</p>
551
+ <div class="fragment"><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;{</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfForkEdge = 0;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfJoinEdge = 0;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfIndForksite = 0;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfIndForkEdge = 0;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">for</span> (ThreadCallGraph::CallSiteSet::const_iterator it = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a37f2e076713a9aeb0e4313fb05dfb92e">forksitesBegin</a>(), eit = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a1ebbd26c17cff1c1a1bee9caa9a8f825">forksitesEnd</a>(); it != eit; ++it)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; {</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">bool</span> indirectfork = <span class="keyword">false</span>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* spawnee = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a8182be247907420db00837cef9bcfa70">SVFUtil::dyn_cast</a>&lt;<a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>&gt;(tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#adcad8524a53baf256cd45503ec568c10">getThreadAPI</a>()-&gt;<a class="code" href="classSVF_1_1ThreadAPI.html#a7ddc0c71aeae315af21972a4905b3456">getForkedFun</a>((*it)-&gt;getCallSite()));</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span>(spawnee==<span class="keyword">nullptr</span>)</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"> 58</span>&#160; numOfIndForksite++;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; indirectfork = <span class="keyword">true</span>;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">for</span> (ThreadCallGraph::ForkEdgeSet::const_iterator cgIt = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a8721610a39212613ad55bbd46a35c576">getForkEdgeBegin</a>(*it), ecgIt =</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a8351e7ab445cb7faf0209d1fbc63fce1">getForkEdgeEnd</a>(*it); cgIt != ecgIt; ++cgIt)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; numOfForkEdge++;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span>(indirectfork)</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; numOfIndForkEdge++;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</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"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">for</span> (ThreadCallGraph::CallSiteSet::const_iterator it = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a98ecfe14be2d38d292b5919716cdd29d">joinsitesBegin</a>(), eit = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a50502f398e5eac9c6da3e26ea6052057">joinsitesEnd</a>(); it != eit; ++it)</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">for</span> (ThreadCallGraph::JoinEdgeSet::const_iterator cgIt = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#af848d7cb8a9f756ff45cca45adbf3b84">getJoinEdgeBegin</a>(*it), ecgIt =</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a811d7d13c05c71bd816621a9a8765365">getJoinEdgeEnd</a>(*it); cgIt != ecgIt; ++cgIt)</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; numOfJoinEdge++;</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; }</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"> 79</span>&#160;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfForkSite&quot;</span>] = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#aa847760765aae18bcb93b260a881441b">getNumOfForksite</a>();</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfForkEdge&quot;</span>] = numOfForkEdge;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfJoinEdge&quot;</span>] = numOfJoinEdge;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfJoinSite&quot;</span>] = tcg-&gt;<a class="code" href="classSVF_1_1ThreadCallGraph.html#a733bf08c7a496435ad09a41e6b0343ff">getNumOfJoinsite</a>();</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfIndForkSite&quot;</span>] = numOfIndForksite;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfIndForkEdge&quot;</span>] = numOfIndForkEdge;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NumOfIndCallEdge&quot;</span>] = tcg-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a12c899013f8a9ddd895bfb5027a84d4c">getNumOfResolvedIndCallEdge</a>();</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() &lt;&lt; <span class="stringliteral">&quot;\n****Thread Call Graph Statistics****\n&quot;</span>;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>();</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div><div class="ttc" id="classSVF_1_1ThreadCallGraph_html_aa847760765aae18bcb93b260a881441b"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#aa847760765aae18bcb93b260a881441b">SVF::ThreadCallGraph::getNumOfForksite</a></div><div class="ttdeci">u32_t getNumOfForksite() const</div><div class="ttdoc">Num of fork/join sites. </div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00309">ThreadCallGraph.h:309</a></div></div>
552
552
  <div class="ttc" id="classSVF_1_1ThreadCallGraph_html_a8721610a39212613ad55bbd46a35c576"><div class="ttname"><a href="classSVF_1_1ThreadCallGraph.html#a8721610a39212613ad55bbd46a35c576">SVF::ThreadCallGraph::getForkEdgeBegin</a></div><div class="ttdeci">ForkEdgeSet::const_iterator getForkEdgeBegin(const CallICFGNode *cs) const</div><div class="ttdef"><b>Definition:</b> <a href="ThreadCallGraph_8h_source.html#l00208">ThreadCallGraph.h:208</a></div></div>
553
553
  <div class="ttc" id="classSVF_1_1PTAStat_html_aca3e99ad83bddabee1dd565522691c78"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(std::string str=&quot;&quot;) override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00273">PTAStat.cpp:273</a></div></div>
554
554
  <div class="ttc" id="classSVF_1_1PTACallGraph_html_a12c899013f8a9ddd895bfb5027a84d4c"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a12c899013f8a9ddd895bfb5027a84d4c">SVF::PTACallGraph::getNumOfResolvedIndCallEdge</a></div><div class="ttdeci">u32_t getNumOfResolvedIndCallEdge() const</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00300">PTACallGraph.h:300</a></div></div>
@@ -583,7 +583,7 @@ Additional Inherited Members</h2></td></tr>
583
583
  </table>
584
584
  </div><div class="memdoc">
585
585
 
586
- <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00046">46</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
586
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00068">68</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
587
587
 
588
588
  </div>
589
589
  </div>
@@ -599,7 +599,7 @@ Additional Inherited Members</h2></td></tr>
599
599
  </table>
600
600
  </div><div class="memdoc">
601
601
 
602
- <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00045">45</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
602
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00067">67</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
603
603
 
604
604
  </div>
605
605
  </div>
@@ -615,7 +615,7 @@ Additional Inherited Members</h2></td></tr>
615
615
  </table>
616
616
  </div><div class="memdoc">
617
617
 
618
- <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00044">44</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
618
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00066">66</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
619
619
 
620
620
  </div>
621
621
  </div>
@@ -631,7 +631,7 @@ Additional Inherited Members</h2></td></tr>
631
631
  </table>
632
632
  </div><div class="memdoc">
633
633
 
634
- <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00043">43</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
634
+ <p class="definition">Definition at line <a class="el" href="MTAStat_8h_source.html#l00065">65</a> of file <a class="el" href="MTAStat_8h_source.html">MTAStat.h</a>.</p>
635
635
 
636
636
  </div>
637
637
  </div>