svf-tools 1.0.304 → 1.0.308

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 (449) hide show
  1. package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +1 -1
  2. package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +3 -3
  3. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +4 -4
  4. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +3 -3
  5. package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +4 -4
  6. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +5 -5
  7. package/SVF-doxygen/html/html/AndersenWaveDiffWithType_8cpp_source.html +4 -4
  8. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +2 -2
  9. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +20 -20
  10. package/SVF-doxygen/html/html/Andersen_8h_source.html +10 -10
  11. package/SVF-doxygen/html/html/BasicTypes_8h_source.html +8 -8
  12. package/SVF-doxygen/html/html/CHG_8cpp_source.html +6 -6
  13. package/SVF-doxygen/html/html/CHG_8h_source.html +2 -2
  14. package/SVF-doxygen/html/html/CSC_8cpp_source.html +2 -2
  15. package/SVF-doxygen/html/html/CSC_8h_source.html +3 -3
  16. package/SVF-doxygen/html/html/CommonCHG_8h_source.html +1 -1
  17. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +2 -2
  18. package/SVF-doxygen/html/html/Conditions_8cpp_source.html +2 -2
  19. package/SVF-doxygen/html/html/Conditions_8h_source.html +2 -2
  20. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +1 -1
  21. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +2 -2
  22. package/SVF-doxygen/html/html/ConsG_8h_source.html +2 -2
  23. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +10 -10
  24. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +7 -7
  25. package/SVF-doxygen/html/html/CoreBitVector_8h.html +2 -0
  26. package/SVF-doxygen/html/html/CoreBitVector_8h_source.html +3 -1
  27. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +1 -1
  28. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +5 -5
  29. package/SVF-doxygen/html/html/DCHG_8h_source.html +3 -3
  30. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +5 -5
  31. package/SVF-doxygen/html/html/DDAClient_8h_source.html +3 -3
  32. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +11 -11
  33. package/SVF-doxygen/html/html/DDAPass_8h_source.html +1 -1
  34. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +5 -5
  35. package/SVF-doxygen/html/html/DDAStat_8h_source.html +1 -1
  36. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +7 -7
  37. package/SVF-doxygen/html/html/DPItem_8h_source.html +1 -1
  38. package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +1 -1
  39. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +2 -2
  40. package/SVF-doxygen/html/html/ExternalPAG_8cpp_source.html +3 -3
  41. package/SVF-doxygen/html/html/ExternalPAG_8h_source.html +3 -3
  42. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +8 -8
  43. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +3 -3
  44. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +5 -5
  45. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +4 -4
  46. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +5 -5
  47. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +8 -8
  48. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +3 -3
  49. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +14 -14
  50. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +5 -5
  51. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +2 -2
  52. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
  53. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +1 -1
  54. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +1 -1
  55. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +4 -4
  56. package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
  57. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +3 -3
  58. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +1 -1
  59. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +1 -1
  60. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +1 -1
  61. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
  62. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +2 -2
  63. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
  64. package/SVF-doxygen/html/html/LocationSet_8h_source.html +2 -2
  65. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +7 -7
  66. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +6 -6
  67. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +3 -3
  68. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +3 -3
  69. package/SVF-doxygen/html/html/MHP_8cpp_source.html +11 -11
  70. package/SVF-doxygen/html/html/MHP_8h_source.html +4 -4
  71. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
  72. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +4 -4
  73. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +1 -1
  74. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +5 -5
  75. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +3 -3
  76. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +2 -2
  77. package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
  78. package/SVF-doxygen/html/html/MTA_8cpp_source.html +6 -6
  79. package/SVF-doxygen/html/html/MTA_8h_source.html +2 -2
  80. package/SVF-doxygen/html/html/MemModel_8h_source.html +1 -1
  81. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
  82. package/SVF-doxygen/html/html/MemPartition_8h_source.html +3 -3
  83. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +6 -6
  84. package/SVF-doxygen/html/html/MemRegion_8h_source.html +4 -4
  85. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +6 -6
  86. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  87. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +2 -2
  88. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +4 -4
  89. package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +2 -2
  90. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
  91. package/SVF-doxygen/html/html/OfflineConsG_8h_source.html +2 -2
  92. package/SVF-doxygen/html/html/Options_8cpp_source.html +97 -96
  93. package/SVF-doxygen/html/html/Options_8h_source.html +97 -96
  94. package/SVF-doxygen/html/html/PAGBuilder_8cpp_source.html +3 -3
  95. package/SVF-doxygen/html/html/PAGEdge_8h_source.html +1 -1
  96. package/SVF-doxygen/html/html/PAG_8cpp_source.html +7 -7
  97. package/SVF-doxygen/html/html/PAG_8h_source.html +5 -5
  98. package/SVF-doxygen/html/html/PCG_8cpp_source.html +3 -3
  99. package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
  100. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +2 -2
  101. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +3 -3
  102. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +11 -10
  103. package/SVF-doxygen/html/html/PTAStat_8h_source.html +2 -2
  104. package/SVF-doxygen/html/html/PTAType_8h_source.html +4 -4
  105. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +5 -5
  106. package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +3 -3
  107. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +27 -24
  108. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +3 -3
  109. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +21 -17
  110. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +72 -72
  111. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +18 -18
  112. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +5 -5
  113. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +3 -3
  114. package/SVF-doxygen/html/html/PointsTo_8h_source.html +2 -2
  115. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +4 -4
  116. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +2 -2
  117. package/SVF-doxygen/html/html/SCC_8h_source.html +3 -3
  118. package/SVF-doxygen/html/html/SVFBasicTypes_8h.html +33 -27
  119. package/SVF-doxygen/html/html/SVFBasicTypes_8h_source.html +52 -49
  120. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +6 -6
  121. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +2 -2
  122. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +3 -3
  123. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +7 -7
  124. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +3 -3
  125. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +4 -4
  126. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +3 -3
  127. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +3 -3
  128. package/SVF-doxygen/html/html/SVFG_8h_source.html +2 -2
  129. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +2 -2
  130. package/SVF-doxygen/html/html/SVFModule_8h_source.html +1 -1
  131. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +10 -9
  132. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +7 -7
  133. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
  134. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +4 -4
  135. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +2 -2
  136. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +7 -7
  137. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +3 -3
  138. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
  139. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +2 -2
  140. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +5 -5
  141. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +2 -2
  142. package/SVF-doxygen/html/html/TCT_8cpp_source.html +5 -5
  143. package/SVF-doxygen/html/html/TCT_8h_source.html +4 -4
  144. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +1 -1
  145. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +1 -1
  146. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
  147. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +2 -2
  148. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
  149. package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +1 -1
  150. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +3 -3
  151. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +2 -2
  152. package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
  153. package/SVF-doxygen/html/html/VFG_8cpp_source.html +4 -4
  154. package/SVF-doxygen/html/html/VFG_8h_source.html +3 -3
  155. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +10 -8
  156. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp.html +3 -0
  157. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +77 -64
  158. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h.html +3 -2
  159. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +78 -69
  160. package/SVF-doxygen/html/html/WPAFSSolver_8h_source.html +2 -2
  161. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +5 -5
  162. package/SVF-doxygen/html/html/WPASolver_8h_source.html +2 -2
  163. package/SVF-doxygen/html/html/WorkList_8h_source.html +1 -1
  164. package/SVF-doxygen/html/html/annotated.html +189 -186
  165. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  166. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  167. package/SVF-doxygen/html/html/classSVF_1_1AddrPE.html +2 -2
  168. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +22 -22
  169. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +14 -14
  170. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +3 -3
  171. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +9 -9
  172. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +2 -2
  173. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +6 -6
  174. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +3 -3
  175. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType.html +6 -6
  176. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +1 -1
  177. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +86 -83
  178. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE.html +2 -2
  179. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
  180. package/SVF-doxygen/html/html/classSVF_1_1BranchCondManager.html +4 -4
  181. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +12 -12
  182. package/SVF-doxygen/html/html/classSVF_1_1CSC.html +3 -3
  183. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +2 -2
  184. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +2 -2
  185. package/SVF-doxygen/html/html/classSVF_1_1CmpPE.html +2 -2
  186. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
  187. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +116 -116
  188. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +22 -22
  189. package/SVF-doxygen/html/html/classSVF_1_1CopyPE.html +2 -2
  190. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
  191. package/SVF-doxygen/html/html/classSVF_1_1CxtThreadProc.html +1 -1
  192. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +7 -7
  193. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +3 -3
  194. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +11 -11
  195. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +6 -6
  196. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +25 -25
  197. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +3 -3
  198. package/SVF-doxygen/html/html/classSVF_1_1ExternalPAG.html +4 -4
  199. package/SVF-doxygen/html/html/classSVF_1_1FIObjPN.html +2 -2
  200. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +13 -13
  201. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +48 -48
  202. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +5 -5
  203. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +26 -26
  204. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +13 -13
  205. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
  206. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
  207. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
  208. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
  209. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +1 -1
  210. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +1 -1
  211. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
  212. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.html +2 -2
  213. package/SVF-doxygen/html/html/classSVF_1_1GepPE.html +2 -2
  214. package/SVF-doxygen/html/html/classSVF_1_1GepValPN.html +2 -2
  215. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
  216. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  218. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +2 -2
  220. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +3 -3
  221. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
  222. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  223. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +8 -8
  224. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +3 -3
  225. package/SVF-doxygen/html/html/classSVF_1_1LoadPE.html +2 -2
  226. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +3 -3
  227. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +33 -33
  228. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +4 -4
  229. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +29 -29
  230. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +22 -22
  231. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
  232. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +8 -8
  233. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +9 -9
  234. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +12 -12
  235. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +18 -18
  236. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +5 -5
  237. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  238. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +17 -17
  239. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +2 -2
  240. package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +1 -1
  241. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +8 -8
  242. package/SVF-doxygen/html/html/classSVF_1_1NormalGepPE.html +2 -2
  243. package/SVF-doxygen/html/html/classSVF_1_1ObjPN.html +2 -2
  244. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +2 -2
  245. package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +3 -2
  246. package/SVF-doxygen/html/html/classSVF_1_1Options.html +125 -96
  247. package/SVF-doxygen/html/html/classSVF_1_1PAG.html +6 -6
  248. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilder.html +29 -29
  249. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +3 -3
  250. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
  251. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +2 -2
  252. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +2 -2
  253. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +21 -20
  254. package/SVF-doxygen/html/html/classSVF_1_1PathCondAllocator.html +8 -8
  255. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +4 -4
  256. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +3 -3
  257. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +7 -7
  258. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache-members.html +19 -16
  259. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +194 -101
  260. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +22 -22
  261. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +8 -7
  262. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +5 -5
  263. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +2 -2
  264. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +2 -2
  265. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +2 -2
  266. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +8 -8
  267. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +7 -7
  268. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +8 -8
  269. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +13 -13
  270. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +7 -7
  271. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +2 -2
  272. package/SVF-doxygen/html/html/classSVF_1_1SVFInstruction.html +2 -2
  273. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +2 -2
  274. package/SVF-doxygen/html/html/classSVF_1_1SVFValue.html +33 -33
  275. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +4 -4
  276. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +12 -12
  277. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +1 -1
  278. package/SVF-doxygen/html/html/classSVF_1_1StorePE.html +2 -2
  279. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +17 -17
  280. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +16 -16
  281. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +2 -2
  282. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +2 -2
  283. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +1 -1
  284. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
  285. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
  286. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +6 -6
  287. package/SVF-doxygen/html/html/classSVF_1_1TypeSystem.html +1 -1
  288. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPPE.html +2 -2
  289. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  290. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +3 -3
  291. package/SVF-doxygen/html/html/classSVF_1_1ValPN.html +2 -2
  292. package/SVF-doxygen/html/html/classSVF_1_1VariantGepPE.html +2 -2
  293. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +161 -162
  294. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +571 -532
  295. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +20 -21
  296. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC-members.html +83 -0
  297. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +297 -0
  298. package/SVF-doxygen/html/html/classSVF_1_1WPAFSSolver.html +2 -2
  299. package/SVF-doxygen/html/html/classSVF_1_1WPAMinimumSolver.html +2 -2
  300. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +12 -12
  301. package/SVF-doxygen/html/html/classSVF_1_1WPASCCSolver.html +2 -2
  302. package/SVF-doxygen/html/html/classSVF_1_1WPASolver.html +1 -1
  303. package/SVF-doxygen/html/html/classes.html +96 -95
  304. package/SVF-doxygen/html/html/functions_b.html +11 -5
  305. package/SVF-doxygen/html/html/functions_c.html +13 -14
  306. package/SVF-doxygen/html/html/functions_d.html +13 -4
  307. package/SVF-doxygen/html/html/functions_e.html +3 -0
  308. package/SVF-doxygen/html/html/functions_f.html +1 -1
  309. package/SVF-doxygen/html/html/functions_func_b.html +6 -0
  310. package/SVF-doxygen/html/html/functions_func_d.html +7 -4
  311. package/SVF-doxygen/html/html/functions_func_f.html +1 -1
  312. package/SVF-doxygen/html/html/functions_func_g.html +15 -9
  313. package/SVF-doxygen/html/html/functions_func_i.html +11 -11
  314. package/SVF-doxygen/html/html/functions_func_m.html +0 -3
  315. package/SVF-doxygen/html/html/functions_func_n.html +1 -4
  316. package/SVF-doxygen/html/html/functions_func_o.html +6 -4
  317. package/SVF-doxygen/html/html/functions_func_p.html +1 -1
  318. package/SVF-doxygen/html/html/functions_func_r.html +4 -1
  319. package/SVF-doxygen/html/html/functions_func_s.html +1 -1
  320. package/SVF-doxygen/html/html/functions_func_v.html +2 -1
  321. package/SVF-doxygen/html/html/functions_g.html +15 -9
  322. package/SVF-doxygen/html/html/functions_i.html +26 -19
  323. package/SVF-doxygen/html/html/functions_l.html +6 -9
  324. package/SVF-doxygen/html/html/functions_m.html +1 -16
  325. package/SVF-doxygen/html/html/functions_n.html +3 -3
  326. package/SVF-doxygen/html/html/functions_o.html +17 -16
  327. package/SVF-doxygen/html/html/functions_p.html +26 -16
  328. package/SVF-doxygen/html/html/functions_r.html +9 -7
  329. package/SVF-doxygen/html/html/functions_s.html +10 -10
  330. package/SVF-doxygen/html/html/functions_t.html +5 -5
  331. package/SVF-doxygen/html/html/functions_type_l.html +1 -4
  332. package/SVF-doxygen/html/html/functions_type_m.html +1 -1
  333. package/SVF-doxygen/html/html/functions_type_n.html +3 -0
  334. package/SVF-doxygen/html/html/functions_type_o.html +0 -3
  335. package/SVF-doxygen/html/html/functions_type_v.html +0 -3
  336. package/SVF-doxygen/html/html/functions_v.html +8 -10
  337. package/SVF-doxygen/html/html/functions_vars_c.html +0 -3
  338. package/SVF-doxygen/html/html/functions_vars_d.html +6 -0
  339. package/SVF-doxygen/html/html/functions_vars_e.html +3 -0
  340. package/SVF-doxygen/html/html/functions_vars_i.html +7 -0
  341. package/SVF-doxygen/html/html/functions_vars_l.html +3 -3
  342. package/SVF-doxygen/html/html/functions_vars_m.html +0 -12
  343. package/SVF-doxygen/html/html/functions_vars_o.html +3 -3
  344. package/SVF-doxygen/html/html/functions_vars_p.html +12 -0
  345. package/SVF-doxygen/html/html/functions_vars_r.html +0 -3
  346. package/SVF-doxygen/html/html/functions_vars_v.html +3 -3
  347. package/SVF-doxygen/html/html/functions_vars_y.html +0 -3
  348. package/SVF-doxygen/html/html/functions_w.html +1 -3
  349. package/SVF-doxygen/html/html/functions_y.html +0 -3
  350. package/SVF-doxygen/html/html/globals_f.html +3 -3
  351. package/SVF-doxygen/html/html/globals_func_i.html +8 -8
  352. package/SVF-doxygen/html/html/globals_func_s.html +6 -6
  353. package/SVF-doxygen/html/html/globals_r.html +3 -3
  354. package/SVF-doxygen/html/html/globals_s.html +12 -14
  355. package/SVF-doxygen/html/html/hierarchy.html +176 -173
  356. package/SVF-doxygen/html/html/namespaceSVF.html +70 -32
  357. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +13 -12
  358. package/SVF-doxygen/html/html/namespacemembers_type_v.html +6 -0
  359. package/SVF-doxygen/html/html/namespacemembers_v.html +6 -0
  360. package/SVF-doxygen/html/html/search/all_10.js +11 -7
  361. package/SVF-doxygen/html/html/search/all_12.js +4 -4
  362. package/SVF-doxygen/html/html/search/all_13.js +8 -8
  363. package/SVF-doxygen/html/html/search/all_14.js +5 -5
  364. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  365. package/SVF-doxygen/html/html/search/all_16.js +5 -4
  366. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  367. package/SVF-doxygen/html/html/search/all_19.js +0 -1
  368. package/SVF-doxygen/html/html/search/all_2.js +2 -0
  369. package/SVF-doxygen/html/html/search/all_3.js +1 -2
  370. package/SVF-doxygen/html/html/search/all_4.js +5 -2
  371. package/SVF-doxygen/html/html/search/all_5.js +1 -0
  372. package/SVF-doxygen/html/html/search/all_6.js +2 -2
  373. package/SVF-doxygen/html/html/search/all_7.js +5 -3
  374. package/SVF-doxygen/html/html/search/all_8.js +2 -0
  375. package/SVF-doxygen/html/html/search/all_9.js +7 -5
  376. package/SVF-doxygen/html/html/search/all_c.js +2 -3
  377. package/SVF-doxygen/html/html/search/all_d.js +1 -6
  378. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  379. package/SVF-doxygen/html/html/search/all_f.js +2 -3
  380. package/SVF-doxygen/html/html/search/classes_12.js +0 -1
  381. package/SVF-doxygen/html/html/search/classes_7.js +2 -0
  382. package/SVF-doxygen/html/html/search/classes_b.js +1 -0
  383. package/SVF-doxygen/html/html/search/classes_f.js +1 -0
  384. package/SVF-doxygen/html/html/search/functions_1.js +2 -0
  385. package/SVF-doxygen/html/html/search/functions_10.js +2 -2
  386. package/SVF-doxygen/html/html/search/functions_13.js +1 -1
  387. package/SVF-doxygen/html/html/search/functions_3.js +3 -2
  388. package/SVF-doxygen/html/html/search/functions_5.js +1 -1
  389. package/SVF-doxygen/html/html/search/functions_6.js +5 -3
  390. package/SVF-doxygen/html/html/search/functions_8.js +3 -3
  391. package/SVF-doxygen/html/html/search/functions_b.js +0 -1
  392. package/SVF-doxygen/html/html/search/functions_c.js +0 -1
  393. package/SVF-doxygen/html/html/search/functions_d.js +1 -1
  394. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  395. package/SVF-doxygen/html/html/search/functions_f.js +1 -0
  396. package/SVF-doxygen/html/html/search/typedefs_14.js +2 -1
  397. package/SVF-doxygen/html/html/search/typedefs_b.js +1 -2
  398. package/SVF-doxygen/html/html/search/typedefs_c.js +1 -1
  399. package/SVF-doxygen/html/html/search/typedefs_d.js +1 -0
  400. package/SVF-doxygen/html/html/search/typedefs_e.js +0 -1
  401. package/SVF-doxygen/html/html/search/variables_10.js +4 -0
  402. package/SVF-doxygen/html/html/search/variables_12.js +0 -1
  403. package/SVF-doxygen/html/html/search/variables_14.js +1 -1
  404. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  405. package/SVF-doxygen/html/html/search/variables_16.js +1 -1
  406. package/SVF-doxygen/html/html/search/variables_19.js +0 -1
  407. package/SVF-doxygen/html/html/search/variables_3.js +0 -1
  408. package/SVF-doxygen/html/html/search/variables_4.js +2 -0
  409. package/SVF-doxygen/html/html/search/variables_5.js +1 -0
  410. package/SVF-doxygen/html/html/search/variables_9.js +3 -1
  411. package/SVF-doxygen/html/html/search/variables_c.js +1 -1
  412. package/SVF-doxygen/html/html/search/variables_d.js +0 -4
  413. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  414. package/SVF-doxygen/html/html/search/variables_f.js +1 -1
  415. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01CoreBitVector_01_4-members.html +81 -0
  416. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01CoreBitVector_01_4.html +126 -0
  417. package/SVF-doxygen/html/html/structSVF_1_1Hash_3_01NodePair_01_4.html +3 -3
  418. package/SVF-doxygen/html/html/structSVF_1_1VersionedFlowSensitive_1_1SCC_1_1NodeData-members.html +83 -0
  419. package/SVF-doxygen/html/html/structSVF_1_1VersionedFlowSensitive_1_1SCC_1_1NodeData.html +145 -0
  420. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  421. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +1 -1
  422. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +3 -3
  423. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SmallVector_3_01T_00_01N_01_4_01_4.html +3 -3
  424. package/SVF-doxygen/html/html/structstd_1_1hash_3_01llvm_1_1SparseBitVector_3_01N_01_4_01_4.html +3 -3
  425. package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4-members.html +81 -0
  426. package/SVF-doxygen/html/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +129 -0
  427. package/SVF-doxygen/html/html/svf-ex_8cpp.html +2 -2
  428. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  429. package/SVF-doxygen/html/html/tools_2DDA_2CMakeLists_8txt.html +1 -1
  430. package/SVF-doxygen/html/html/tools_2Example_2CMakeLists_8txt.html +1 -1
  431. package/SVF-doxygen/html/html/tools_2MTA_2CMakeLists_8txt.html +1 -1
  432. package/SVF-doxygen/html/html/tools_2SABER_2CMakeLists_8txt.html +1 -1
  433. package/SVF-doxygen/html/html/tools_2WPA_2CMakeLists_8txt.html +9 -9
  434. package/include/MemoryModel/PersistentPointsToCache.h +43 -34
  435. package/include/MemoryModel/PointerAnalysisImpl.h +1 -5
  436. package/include/Util/CoreBitVector.h +8 -0
  437. package/include/Util/Options.h +3 -0
  438. package/include/Util/SVFBasicTypes.h +22 -2
  439. package/include/WPA/VersionedFlowSensitive.h +96 -65
  440. package/lib/MemoryModel/PointerAnalysisImpl.cpp +7 -0
  441. package/lib/MemoryModel/PointsTo.cpp +3 -3
  442. package/lib/Util/Options.cpp +6 -0
  443. package/lib/Util/PTAStat.cpp +3 -4
  444. package/lib/Util/SVFUtil.cpp +1 -0
  445. package/lib/WPA/FlowSensitive.cpp +1 -1
  446. package/lib/WPA/VersionedFlowSensitive.cpp +503 -229
  447. package/lib/WPA/VersionedFlowSensitiveStat.cpp +23 -38
  448. package/package.json +1 -1
  449. package/tools/WPA/CMakeLists.txt +3 -1
@@ -341,17 +341,17 @@ Protected Attributes</h2></td></tr>
341
341
  <div class="ttc" id="classSVF_1_1VFG_html_a0c0a7c8f0bd27bc9e88ce54c0809b11b"><div class="ttname"><a href="classSVF_1_1VFG.html#a0c0a7c8f0bd27bc9e88ce54c0809b11b">SVF::VFG::updateCallGraph</a></div><div class="ttdeci">void updateCallGraph(PointerAnalysis *pta)</div><div class="ttdoc">Update VFG based on pointer analysis results. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8cpp_source.html#l00770">VFG.cpp:770</a></div></div>
342
342
  <div class="ttc" id="classSVF_1_1SVFGBuilder_html_a49cee21be46d6a3f65eec638714038ed"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a49cee21be46d6a3f65eec638714038ed">SVF::SVFGBuilder::buildMSSA</a></div><div class="ttdeci">virtual MemSSA * buildMSSA(BVDataPTAImpl *pta, bool ptrOnlyMSSA)</div><div class="ttdoc">Build Memory SSA. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8cpp_source.html#l00122">SVFGBuilder.cpp:122</a></div></div>
343
343
  <div class="ttc" id="classSVF_1_1MemSSA_html"><div class="ttname"><a href="classSVF_1_1MemSSA.html">SVF::MemSSA</a></div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00046">MemSSA.h:46</a></div></div>
344
- <div class="ttc" id="classSVF_1_1Options_html_a982b4cd71ccafd07d94f10a0a2e953c2"><div class="ttname"><a href="classSVF_1_1Options.html#a982b4cd71ccafd07d94f10a0a2e953c2">SVF::Options::SVFGWithIndirectCall</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SVFGWithIndirectCall</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00154">Options.h:154</a></div></div>
344
+ <div class="ttc" id="classSVF_1_1Options_html_a982b4cd71ccafd07d94f10a0a2e953c2"><div class="ttname"><a href="classSVF_1_1Options.html#a982b4cd71ccafd07d94f10a0a2e953c2">SVF::Options::SVFGWithIndirectCall</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SVFGWithIndirectCall</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00157">Options.h:157</a></div></div>
345
345
  <div class="ttc" id="classSVF_1_1VFG_html_ac2e2f555975063da3fa1932ac35802c6a8ed0b9aea88fbbbe91f33301bea0c9dd"><div class="ttname"><a href="classSVF_1_1VFG.html#ac2e2f555975063da3fa1932ac35802c6a8ed0b9aea88fbbbe91f33301bea0c9dd">SVF::VFG::PTRONLYSVFG_OPT</a></div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00057">VFG.h:57</a></div></div>
346
- <div class="ttc" id="classSVF_1_1Options_html_a3061c75f7491dd737222b1b877721070"><div class="ttname"><a href="classSVF_1_1Options.html#a3061c75f7491dd737222b1b877721070">SVF::Options::DumpVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00118">Options.h:118</a></div></div>
347
- <div class="ttc" id="classSVF_1_1Options_html_a78ce4bd2e80e7b87ff0ee52edd1db403"><div class="ttname"><a href="classSVF_1_1Options.html#a78ce4bd2e80e7b87ff0ee52edd1db403">SVF::Options::SingleVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SingleVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00155">Options.h:155</a></div></div>
346
+ <div class="ttc" id="classSVF_1_1Options_html_a3061c75f7491dd737222b1b877721070"><div class="ttname"><a href="classSVF_1_1Options.html#a3061c75f7491dd737222b1b877721070">SVF::Options::DumpVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00121">Options.h:121</a></div></div>
347
+ <div class="ttc" id="classSVF_1_1Options_html_a78ce4bd2e80e7b87ff0ee52edd1db403"><div class="ttname"><a href="classSVF_1_1Options.html#a78ce4bd2e80e7b87ff0ee52edd1db403">SVF::Options::SingleVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; SingleVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00158">Options.h:158</a></div></div>
348
348
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_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>
349
- <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
349
+ <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00152">SVFBasicTypes.h:152</a></div></div>
350
350
  <div class="ttc" id="classSVF_1_1SVFGBuilder_html_ae2d84f7527de200a2f269dc1c056a305"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#ae2d84f7527de200a2f269dc1c056a305">SVF::SVFGBuilder::buildSVFG</a></div><div class="ttdeci">virtual void buildSVFG()</div><div class="ttdoc">Can be rewritten by subclasses. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8cpp_source.html#l00068">SVFGBuilder.cpp:68</a></div></div>
351
351
  <div class="ttc" id="classSVF_1_1SVFG_html"><div class="ttname"><a href="classSVF_1_1SVFG.html">SVF::SVFG</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00065">SVFG.h:65</a></div></div>
352
352
  <div class="ttc" id="classSVF_1_1SVFGBuilder_html_a70de38086437635d2e44d2a0c9fdded9"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a70de38086437635d2e44d2a0c9fdded9">SVF::SVFGBuilder::SVFGWithIndCall</a></div><div class="ttdeci">bool SVFGWithIndCall</div><div class="ttdoc">SVFG with precomputed indirect call edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00121">SVFGBuilder.h:121</a></div></div>
353
353
  <div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00119">SVFGBuilder.h:119</a></div></div>
354
- <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00144">SVFBasicTypes.h:144</a></div></div>
354
+ <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
355
355
  <div class="ttc" id="classSVF_1_1SVFGOPT_html"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html">SVF::SVFGOPT</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00056">SVFGOPT.h:56</a></div></div>
356
356
  </div><!-- fragment -->
357
357
  </div>
@@ -449,13 +449,13 @@ Protected Attributes</h2></td></tr>
449
449
  <div class="ttc" id="classSVF_1_1MemSSA_html"><div class="ttname"><a href="classSVF_1_1MemSSA.html">SVF::MemSSA</a></div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00046">MemSSA.h:46</a></div></div>
450
450
  <div class="ttc" id="classSVF_1_1MemSSA_html_a89c40c8fad70f3aead6531261e5a3cc3"><div class="ttname"><a href="classSVF_1_1MemSSA.html#a89c40c8fad70f3aead6531261e5a3cc3">SVF::MemSSA::performStat</a></div><div class="ttdeci">void performStat()</div><div class="ttdoc">Perform statistics. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8cpp_source.html#l00468">MemSSA.cpp:468</a></div></div>
451
451
  <div class="ttc" id="namespaceSVF_html_aecbb42b8e9d17fa0189c50dda9fd5fdd"><div class="ttname"><a href="namespaceSVF.html#aecbb42b8e9d17fa0189c50dda9fd5fdd">SVF::DominatorTree</a></div><div class="ttdeci">llvm::DominatorTree DominatorTree</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00197">BasicTypes.h:197</a></div></div>
452
- <div class="ttc" id="classSVF_1_1Options_html_a097255cb1373feaaaf2fe60c998862d5"><div class="ttname"><a href="classSVF_1_1Options.html#a097255cb1373feaaaf2fe60c998862d5">SVF::Options::DumpMSSA</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpMSSA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00148">Options.h:148</a></div></div>
452
+ <div class="ttc" id="classSVF_1_1Options_html_a097255cb1373feaaaf2fe60c998862d5"><div class="ttname"><a href="classSVF_1_1Options.html#a097255cb1373feaaaf2fe60c998862d5">SVF::Options::DumpMSSA</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpMSSA</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00151">Options.h:151</a></div></div>
453
453
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_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>
454
- <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
454
+ <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00152">SVFBasicTypes.h:152</a></div></div>
455
455
  <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="BasicTypes_8h_source.html#l00249">BasicTypes.h:249</a></div></div>
456
456
  <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#l00144">SVFModule.h:144</a></div></div>
457
457
  <div class="ttc" id="classSVF_1_1MemSSA_html_ad40617a1907b9a6b8cc24888ce54a0ac"><div class="ttname"><a href="classSVF_1_1MemSSA.html#ad40617a1907b9a6b8cc24888ce54a0ac">SVF::MemSSA::getPTA</a></div><div class="ttdeci">BVDataPTAImpl * getPTA() const</div><div class="ttdoc">Return PTA. </div><div class="ttdef"><b>Definition:</b> <a href="MemSSA_8h_source.html#l00315">MemSSA.h:315</a></div></div>
458
- <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00144">SVFBasicTypes.h:144</a></div></div>
458
+ <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
459
459
  <div class="ttc" id="classSVF_1_1SVFModule_html_afcf2978f32e15127fb093405dc17d7f1"><div class="ttname"><a href="classSVF_1_1SVFModule.html#afcf2978f32e15127fb093405dc17d7f1">SVF::SVFModule::const_iterator</a></div><div class="ttdeci">FunctionSetType::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00049">SVFModule.h:49</a></div></div>
460
460
  <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="LLVMUtil_8h_source.html#l00063">LLVMUtil.h:63</a></div></div>
461
461
  </div><!-- fragment -->
@@ -135,7 +135,7 @@ Public Member Functions</h2></td></tr>
135
135
  <tr class="memitem:a8e7a945f4266e8dc7dcfff2ad6494bfb inherit pub_methods_classSVF_1_1SVFG"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespaceSVF.html#a5dfa3fa5129bacdc0be0c051ccf386df">SVFGNode</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFG.html#a8e7a945f4266e8dc7dcfff2ad6494bfb">getDefSVFGNode</a> (const <a class="el" href="classSVF_1_1PAGNode.html">PAGNode</a> *pagNode) const</td></tr>
136
136
  <tr class="memdesc:a8e7a945f4266e8dc7dcfff2ad6494bfb inherit pub_methods_classSVF_1_1SVFG"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given a pagNode, return its definition site. <a href="classSVF_1_1SVFG.html#a8e7a945f4266e8dc7dcfff2ad6494bfb">More...</a><br /></td></tr>
137
137
  <tr class="separator:a8e7a945f4266e8dc7dcfff2ad6494bfb inherit pub_methods_classSVF_1_1SVFG"><td class="memSeparator" colspan="2">&#160;</td></tr>
138
- <tr class="memitem:ac9807bb37148459fe928cd67a7517c16 inherit pub_methods_classSVF_1_1SVFG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="lib_2CUDD_2CMakeLists_8txt.html#a97d8d30dc013aa2acba4c146fdcb1acf">std::set</a>&lt; const <a class="el" href="namespaceSVF.html#a5dfa3fa5129bacdc0be0c051ccf386df">SVFGNode</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFG.html#ac9807bb37148459fe928cd67a7517c16">fromValue</a> (const llvm::Value *value) const</td></tr>
138
+ <tr class="memitem:ac9807bb37148459fe928cd67a7517c16 inherit pub_methods_classSVF_1_1SVFG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tools_2WPA_2CMakeLists_8txt.html#ae7f9c126d87731a942268db0cad0ac75">std::set</a>&lt; const <a class="el" href="namespaceSVF.html#a5dfa3fa5129bacdc0be0c051ccf386df">SVFGNode</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFG.html#ac9807bb37148459fe928cd67a7517c16">fromValue</a> (const llvm::Value *value) const</td></tr>
139
139
  <tr class="separator:ac9807bb37148459fe928cd67a7517c16 inherit pub_methods_classSVF_1_1SVFG"><td class="memSeparator" colspan="2">&#160;</td></tr>
140
140
  <tr class="memitem:adc9fbb4553472b238d6c3bb5062279cb inherit pub_methods_classSVF_1_1SVFG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFG.html#adc9fbb4553472b238d6c3bb5062279cb">performStat</a> ()</td></tr>
141
141
  <tr class="memdesc:adc9fbb4553472b238d6c3bb5062279cb inherit pub_methods_classSVF_1_1SVFG"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform statistics. <a href="classSVF_1_1SVFG.html#adc9fbb4553472b238d6c3bb5062279cb">More...</a><br /></td></tr>
@@ -1092,7 +1092,7 @@ Additional Inherited Members</h2></td></tr>
1092
1092
 
1093
1093
  <p class="definition">Definition at line <a class="el" href="SVFGOPT_8cpp_source.html#l00068">68</a> of file <a class="el" href="SVFGOPT_8cpp_source.html">SVFGOPT.cpp</a>.</p>
1094
1094
  <div class="fragment"><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">if</span> (<a class="code" href="classSVF_1_1Options.html#ac3ad7d0cf734e867b91a081aad1faff2">Options::ContextInsensitive</a>)</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFG.html#ad03f0064d3a1ff397b35a606304a9c80">addIntraIndirectVFEdge</a>(srcId, dstId, cpts);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFG.html#af8ceb1ebf745e6803c606c41f7a482ac">addCallIndirectVFEdge</a>(srcId, dstId, cpts, csid);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFG_html_af8ceb1ebf745e6803c606c41f7a482ac"><div class="ttname"><a href="classSVF_1_1SVFG.html#af8ceb1ebf745e6803c606c41f7a482ac">SVF::SVFG::addCallIndirectVFEdge</a></div><div class="ttdeci">SVFGEdge * addCallIndirectVFEdge(NodeID srcId, NodeID dstId, const NodeBS &amp;cpts, CallSiteID csId)</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00468">SVFG.cpp:468</a></div></div>
1095
- <div class="ttc" id="classSVF_1_1Options_html_ac3ad7d0cf734e867b91a081aad1faff2"><div class="ttname"><a href="classSVF_1_1Options.html#ac3ad7d0cf734e867b91a081aad1faff2">SVF::Options::ContextInsensitive</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ContextInsensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00113">Options.h:113</a></div></div>
1095
+ <div class="ttc" id="classSVF_1_1Options_html_ac3ad7d0cf734e867b91a081aad1faff2"><div class="ttname"><a href="classSVF_1_1Options.html#ac3ad7d0cf734e867b91a081aad1faff2">SVF::Options::ContextInsensitive</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ContextInsensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00116">Options.h:116</a></div></div>
1096
1096
  <div class="ttc" id="classSVF_1_1SVFG_html_ad03f0064d3a1ff397b35a606304a9c80"><div class="ttname"><a href="classSVF_1_1SVFG.html#ad03f0064d3a1ff397b35a606304a9c80">SVF::SVFG::addIntraIndirectVFEdge</a></div><div class="ttdeci">SVFGEdge * addIntraIndirectVFEdge(NodeID srcId, NodeID dstId, const NodeBS &amp;cpts)</div><div class="ttdoc">Add indirect def-use edges of a memory region between two statements,. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00426">SVFG.cpp:426</a></div></div>
1097
1097
  </div><!-- fragment -->
1098
1098
  </div>
@@ -1299,7 +1299,7 @@ Additional Inherited Members</h2></td></tr>
1299
1299
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
1300
1300
  <div class="ttc" id="classSVF_1_1CallIndSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1CallIndSVFGEdge.html">SVF::CallIndSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00138">SVFGEdge.h:138</a></div></div>
1301
1301
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a11dc712bf74ba61160fed7a5c3efaeee"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a11dc712bf74ba61160fed7a5c3efaeee">SVF::SVFGOPT::addCallIndirectSVFGEdge</a></div><div class="ttdeci">SVFGEdge * addCallIndirectSVFGEdge(NodeID srcId, NodeID dstId, CallSiteID csid, const NodeBS &amp;cpts)</div><div class="ttdoc">Add inter-procedural value flow edge. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00068">SVFGOPT.cpp:68</a></div></div>
1302
- <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00087">SVFBasicTypes.h:87</a></div></div>
1302
+ <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
1303
1303
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_afa99da68ef756d968d39a85f0fac3649"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#afa99da68ef756d968d39a85f0fac3649">SVF::SVFGOPT::addRetIndirectSVFGEdge</a></div><div class="ttdeci">SVFGEdge * addRetIndirectSVFGEdge(NodeID srcId, NodeID dstId, CallSiteID csid, const NodeBS &amp;cpts)</div><div class="ttdoc">Add indirect ret edge from src to dst with one call site ID. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00079">SVFGOPT.cpp:79</a></div></div>
1304
1304
  <div class="ttc" id="classSVF_1_1SVFG_html_ad03f0064d3a1ff397b35a606304a9c80"><div class="ttname"><a href="classSVF_1_1SVFG.html#ad03f0064d3a1ff397b35a606304a9c80">SVF::SVFG::addIntraIndirectVFEdge</a></div><div class="ttdeci">SVFGEdge * addIntraIndirectVFEdge(NodeID srcId, NodeID dstId, const NodeBS &amp;cpts)</div><div class="ttdoc">Add indirect def-use edges of a memory region between two statements,. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00426">SVFG.cpp:426</a></div></div>
1305
1305
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a6d5cdb3b78e4ed482b0da4c64323b463"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a6d5cdb3b78e4ed482b0da4c64323b463">SVF::SVFGOPT::bothInterEdges</a></div><div class="ttdeci">bool bothInterEdges(const SVFGEdge *edge1, const SVFGEdge *edge2) const</div><div class="ttdoc">Return TRUE if both edges are indirect call/ret edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00230">SVFGOPT.h:230</a></div></div>
@@ -1358,7 +1358,7 @@ Additional Inherited Members</h2></td></tr>
1358
1358
 
1359
1359
  <p class="definition">Definition at line <a class="el" href="SVFGOPT_8cpp_source.html#l00079">79</a> of file <a class="el" href="SVFGOPT_8cpp_source.html">SVFGOPT.cpp</a>.</p>
1360
1360
  <div class="fragment"><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#ac3ad7d0cf734e867b91a081aad1faff2">Options::ContextInsensitive</a>)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFG.html#ad03f0064d3a1ff397b35a606304a9c80">addIntraIndirectVFEdge</a>(srcId, dstId, cpts);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFG.html#a8ebf0e285c69db8332a1f8914d6190f6">addRetIndirectVFEdge</a>(srcId, dstId, cpts, csid);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFG_html_a8ebf0e285c69db8332a1f8914d6190f6"><div class="ttname"><a href="classSVF_1_1SVFG.html#a8ebf0e285c69db8332a1f8914d6190f6">SVF::SVFG::addRetIndirectVFEdge</a></div><div class="ttdeci">SVFGEdge * addRetIndirectVFEdge(NodeID srcId, NodeID dstId, const NodeBS &amp;cpts, CallSiteID csId)</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00488">SVFG.cpp:488</a></div></div>
1361
- <div class="ttc" id="classSVF_1_1Options_html_ac3ad7d0cf734e867b91a081aad1faff2"><div class="ttname"><a href="classSVF_1_1Options.html#ac3ad7d0cf734e867b91a081aad1faff2">SVF::Options::ContextInsensitive</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ContextInsensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00113">Options.h:113</a></div></div>
1361
+ <div class="ttc" id="classSVF_1_1Options_html_ac3ad7d0cf734e867b91a081aad1faff2"><div class="ttname"><a href="classSVF_1_1Options.html#ac3ad7d0cf734e867b91a081aad1faff2">SVF::Options::ContextInsensitive</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; ContextInsensitive</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00116">Options.h:116</a></div></div>
1362
1362
  <div class="ttc" id="classSVF_1_1SVFG_html_ad03f0064d3a1ff397b35a606304a9c80"><div class="ttname"><a href="classSVF_1_1SVFG.html#ad03f0064d3a1ff397b35a606304a9c80">SVF::SVFG::addIntraIndirectVFEdge</a></div><div class="ttdeci">SVFGEdge * addIntraIndirectVFEdge(NodeID srcId, NodeID dstId, const NodeBS &amp;cpts)</div><div class="ttdoc">Add indirect def-use edges of a memory region between two statements,. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00426">SVFG.cpp:426</a></div></div>
1363
1363
  </div><!-- fragment -->
1364
1364
  </div>
@@ -1437,15 +1437,15 @@ Additional Inherited Members</h2></td></tr>
1437
1437
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a7e57ca56a587a5b59543b5bab7fe794d"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a7e57ca56a587a5b59543b5bab7fe794d">SVF::SVFGOPT::keepActualOutFormalIn</a></div><div class="ttdeci">bool keepActualOutFormalIn</div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00354">SVFGOPT.h:354</a></div></div>
1438
1438
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a21429d8c3fba209d9cdc22e3623c5573"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a21429d8c3fba209d9cdc22e3623c5573">SVF::SVFGOPT::handleIntraValueFlow</a></div><div class="ttdeci">void handleIntraValueFlow()</div><div class="ttdoc">Remove MSSAPHI SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00393">SVFGOPT.cpp:393</a></div></div>
1439
1439
  <div class="ttc" id="classSVF_1_1SVFG_html_a0920e9f9896531959d74ae61013d96d6"><div class="ttname"><a href="classSVF_1_1SVFG.html#a0920e9f9896531959d74ae61013d96d6">SVF::SVFG::buildSVFG</a></div><div class="ttdeci">virtual void buildSVFG()</div><div class="ttdoc">Start building SVFG. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00199">SVFG.cpp:199</a></div></div>
1440
- <div class="ttc" id="classSVF_1_1Options_html_a3061c75f7491dd737222b1b877721070"><div class="ttname"><a href="classSVF_1_1Options.html#a3061c75f7491dd737222b1b877721070">SVF::Options::DumpVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00118">Options.h:118</a></div></div>
1440
+ <div class="ttc" id="classSVF_1_1Options_html_a3061c75f7491dd737222b1b877721070"><div class="ttname"><a href="classSVF_1_1Options.html#a3061c75f7491dd737222b1b877721070">SVF::Options::DumpVFG</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; DumpVFG</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00121">Options.h:121</a></div></div>
1441
1441
  <div class="ttc" id="classSVF_1_1SVFG_html_ad5c1415f488ec4412d5457262269eff3"><div class="ttname"><a href="classSVF_1_1SVFG.html#ad5c1415f488ec4412d5457262269eff3">SVF::SVFG::stat</a></div><div class="ttdeci">SVFGStat * stat</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00104">SVFG.h:104</a></div></div>
1442
1442
  <div class="ttc" id="classSVF_1_1SVFGStat_html_aaec3a7f29b3ded0c971d57376d2779ff"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#aaec3a7f29b3ded0c971d57376d2779ff">SVF::SVFGStat::sfvgOptEnd</a></div><div class="ttdeci">void sfvgOptEnd()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00154">SVFGStat.h:154</a></div></div>
1443
1443
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_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>
1444
- <div class="ttc" id="classSVF_1_1Options_html_acd687c31bb6662940ab8a1c3d17dc1ef"><div class="ttname"><a href="classSVF_1_1Options.html#acd687c31bb6662940ab8a1c3d17dc1ef">SVF::Options::KeepAOFI</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; KeepAOFI</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00114">Options.h:114</a></div></div>
1445
- <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
1444
+ <div class="ttc" id="classSVF_1_1Options_html_acd687c31bb6662940ab8a1c3d17dc1ef"><div class="ttname"><a href="classSVF_1_1Options.html#acd687c31bb6662940ab8a1c3d17dc1ef">SVF::Options::KeepAOFI</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; KeepAOFI</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00117">Options.h:117</a></div></div>
1445
+ <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00152">SVFBasicTypes.h:152</a></div></div>
1446
1446
  <div class="ttc" id="classSVF_1_1SVFGStat_html_acb80953b39ce247679242df4f042ab79"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#acb80953b39ce247679242df4f042ab79">SVF::SVFGStat::sfvgOptStart</a></div><div class="ttdeci">void sfvgOptStart()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00149">SVFGStat.h:149</a></div></div>
1447
1447
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a4c698184cc23730fb44904d4048958da"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a4c698184cc23730fb44904d4048958da">SVF::SVFGOPT::handleInterValueFlow</a></div><div class="ttdeci">void handleInterValueFlow()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00090">SVFGOPT.cpp:90</a></div></div>
1448
- <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00144">SVFBasicTypes.h:144</a></div></div>
1448
+ <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
1449
1449
  </div><!-- fragment -->
1450
1450
  </div>
1451
1451
  </div>
@@ -1642,7 +1642,7 @@ Additional Inherited Members</h2></td></tr>
1642
1642
  <div class="fragment"><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; <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> intersection = actualIn-&gt;getPointsTo();</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; intersection &amp;= formalIn-&gt;getPointsTo();</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (intersection.empty() == <span class="keyword">false</span>)</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> aiDef = <a class="code" href="classSVF_1_1SVFGOPT.html#a550f93b640a6fd68773fbafd2944d7df">getActualINDef</a>(actualIn-&gt;getId());</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="namespaceSVF.html#aa4745cf70b26e17d59752356f0b19dd9">SVFGEdge</a>* edge = <a class="code" href="classSVF_1_1SVFGOPT.html#a11dc712bf74ba61160fed7a5c3efaeee">addCallIndirectSVFGEdge</a>(aiDef,formalIn-&gt;getId(),csId,intersection);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span> (edge != <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; edges.insert(edge);</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="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
1643
1643
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a11dc712bf74ba61160fed7a5c3efaeee"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a11dc712bf74ba61160fed7a5c3efaeee">SVF::SVFGOPT::addCallIndirectSVFGEdge</a></div><div class="ttdeci">SVFGEdge * addCallIndirectSVFGEdge(NodeID srcId, NodeID dstId, CallSiteID csid, const NodeBS &amp;cpts)</div><div class="ttdoc">Add inter-procedural value flow edge. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00068">SVFGOPT.cpp:68</a></div></div>
1644
1644
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a550f93b640a6fd68773fbafd2944d7df"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a550f93b640a6fd68773fbafd2944d7df">SVF::SVFGOPT::getActualINDef</a></div><div class="ttdeci">NodeID getActualINDef(NodeID ai) const</div><div class="ttdoc">Get def-site of actual-in/formal-out. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00148">SVFGOPT.h:148</a></div></div>
1645
- <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00087">SVFBasicTypes.h:87</a></div></div>
1645
+ <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
1646
1646
  <div class="ttc" id="namespaceSVF_html_aa4745cf70b26e17d59752356f0b19dd9"><div class="ttname"><a href="namespaceSVF.html#aa4745cf70b26e17d59752356f0b19dd9">SVF::SVFGEdge</a></div><div class="ttdeci">VFGEdge SVFGEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00040">SVFG.h:40</a></div></div>
1647
1647
  </div><!-- fragment -->
1648
1648
  </div>
@@ -1767,7 +1767,7 @@ Additional Inherited Members</h2></td></tr>
1767
1767
  <p class="definition">Definition at line <a class="el" href="SVFGOPT_8h_source.html#l00132">132</a> of file <a class="el" href="SVFGOPT_8h_source.html">SVFGOPT.h</a>.</p>
1768
1768
  <div class="fragment"><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="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> intersection = formalOut-&gt;getPointsTo();</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; intersection &amp;= actualOut-&gt;getPointsTo();</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">if</span> (intersection.empty() == <span class="keyword">false</span>)</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; {</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> foDef = <a class="code" href="classSVF_1_1SVFGOPT.html#a8d0b44ba9f3e6f9344a10d085d7be2b4">getFormalOUTDef</a>(formalOut-&gt;getId());</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="namespaceSVF.html#aa4745cf70b26e17d59752356f0b19dd9">SVFGEdge</a>* edge = <a class="code" href="classSVF_1_1SVFGOPT.html#afa99da68ef756d968d39a85f0fac3649">addRetIndirectSVFGEdge</a>(foDef,actualOut-&gt;getId(),csId,intersection);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span> (edge != <span class="keyword">nullptr</span>)</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; edges.insert(edge);</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="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
1769
1769
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a8d0b44ba9f3e6f9344a10d085d7be2b4"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a8d0b44ba9f3e6f9344a10d085d7be2b4">SVF::SVFGOPT::getFormalOUTDef</a></div><div class="ttdeci">NodeID getFormalOUTDef(NodeID fo) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00154">SVFGOPT.h:154</a></div></div>
1770
- <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00087">SVFBasicTypes.h:87</a></div></div>
1770
+ <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
1771
1771
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_afa99da68ef756d968d39a85f0fac3649"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#afa99da68ef756d968d39a85f0fac3649">SVF::SVFGOPT::addRetIndirectSVFGEdge</a></div><div class="ttdeci">SVFGEdge * addRetIndirectSVFGEdge(NodeID srcId, NodeID dstId, CallSiteID csid, const NodeBS &amp;cpts)</div><div class="ttdoc">Add indirect ret edge from src to dst with one call site ID. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00079">SVFGOPT.cpp:79</a></div></div>
1772
1772
  <div class="ttc" id="namespaceSVF_html_aa4745cf70b26e17d59752356f0b19dd9"><div class="ttname"><a href="namespaceSVF.html#aa4745cf70b26e17d59752356f0b19dd9">SVF::SVFGEdge</a></div><div class="ttdeci">VFGEdge SVFGEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00040">SVFG.h:40</a></div></div>
1773
1773
  </div><!-- fragment -->
@@ -2182,7 +2182,7 @@ Additional Inherited Members</h2></td></tr>
2182
2182
 
2183
2183
  <p class="definition">Definition at line <a class="el" href="SVFGOPT_8cpp_source.html#l00374">374</a> of file <a class="el" href="SVFGOPT_8cpp_source.html">SVFGOPT.cpp</a>.</p>
2184
2184
  <div class="fragment"><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;{</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; std::string choice = (<a class="code" href="classSVF_1_1Options.html#a3ed96242ac56a05d057ebd11b23cf053">Options::SelfCycle</a>.getValue().empty()) ? <span class="stringliteral">&quot;&quot;</span> : <a class="code" href="classSVF_1_1Options.html#a3ed96242ac56a05d057ebd11b23cf053">Options::SelfCycle</a>.getValue();</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">if</span> (choice.empty() || choice == <a class="code" href="SVFGOPT_8cpp.html#af213fe89264a55a8ff44872905524f2f">KeepAllSelfCycle</a>)</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <a class="code" href="classSVF_1_1SVFGOPT.html#a65bba62d9b62bf2bdbbda69540eeb38d">keepAllSelfCycle</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (choice == <a class="code" href="SVFGOPT_8cpp.html#a88c73f6d9c8ac75497c2e520a7d41935">KeepContextSelfCycle</a>)</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <a class="code" href="classSVF_1_1SVFGOPT.html#ac68a53c567929ba8b69c00e3e8d9d30f">keepContextSelfCycle</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (choice == <a class="code" href="SVFGOPT_8cpp.html#a644ce2ce8b3224e9cd4cfc8480941c6f">KeepNoneSelfCycle</a>)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <a class="code" href="classSVF_1_1SVFGOPT.html#a65bba62d9b62bf2bdbbda69540eeb38d">keepAllSelfCycle</a> = <a class="code" href="classSVF_1_1SVFGOPT.html#ac68a53c567929ba8b69c00e3e8d9d30f">keepContextSelfCycle</a> = <span class="keyword">false</span>;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; {</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#a077caa1b10ab84d101d79fc7ea50db2d">SVFUtil::writeWrnMsg</a>(<span class="stringliteral">&quot;Unrecognised option. All self cycle edges will be kept.&quot;</span>);</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <a class="code" href="classSVF_1_1SVFGOPT.html#a65bba62d9b62bf2bdbbda69540eeb38d">keepAllSelfCycle</a> = <span class="keyword">true</span>;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; }</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFGOPT_html_a65bba62d9b62bf2bdbbda69540eeb38d"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a65bba62d9b62bf2bdbbda69540eeb38d">SVF::SVFGOPT::keepAllSelfCycle</a></div><div class="ttdeci">bool keepAllSelfCycle</div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00355">SVFGOPT.h:355</a></div></div>
2185
- <div class="ttc" id="classSVF_1_1Options_html_a3ed96242ac56a05d057ebd11b23cf053"><div class="ttname"><a href="classSVF_1_1Options.html#a3ed96242ac56a05d057ebd11b23cf053">SVF::Options::SelfCycle</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; SelfCycle</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00115">Options.h:115</a></div></div>
2185
+ <div class="ttc" id="classSVF_1_1Options_html_a3ed96242ac56a05d057ebd11b23cf053"><div class="ttname"><a href="classSVF_1_1Options.html#a3ed96242ac56a05d057ebd11b23cf053">SVF::Options::SelfCycle</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; SelfCycle</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00118">Options.h:118</a></div></div>
2186
2186
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a077caa1b10ab84d101d79fc7ea50db2d"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a077caa1b10ab84d101d79fc7ea50db2d">SVF::SVFUtil::writeWrnMsg</a></div><div class="ttdeci">void writeWrnMsg(std::string msg)</div><div class="ttdoc">Writes a message run through wrnMsg. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00069">SVFUtil.cpp:69</a></div></div>
2187
2187
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_ac68a53c567929ba8b69c00e3e8d9d30f"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#ac68a53c567929ba8b69c00e3e8d9d30f">SVF::SVFGOPT::keepContextSelfCycle</a></div><div class="ttdeci">bool keepContextSelfCycle</div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00356">SVFGOPT.h:356</a></div></div>
2188
2188
  <div class="ttc" id="SVFGOPT_8cpp_html_af213fe89264a55a8ff44872905524f2f"><div class="ttname"><a href="SVFGOPT_8cpp.html#af213fe89264a55a8ff44872905524f2f">KeepAllSelfCycle</a></div><div class="ttdeci">static std::string KeepAllSelfCycle</div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00042">SVFGOPT.cpp:42</a></div></div>
@@ -2438,7 +2438,7 @@ Additional Inherited Members</h2></td></tr>
2438
2438
  <div class="ttc" id="classSVF_1_1VFGNode_html_a3c558955f60c237c558d8faafed781e8"><div class="ttname"><a href="classSVF_1_1VFGNode.html#a3c558955f60c237c558d8faafed781e8">SVF::VFGNode::const_iterator</a></div><div class="ttdeci">VFGEdge::VFGEdgeSetTy::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00061">VFGNode.h:61</a></div></div>
2439
2439
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_a3e2b811dd939c93bcf9fb94e91d553b1"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#a3e2b811dd939c93bcf9fb94e91d553b1">SVF::SVFGOPT::setFormalOUTDef</a></div><div class="ttdeci">void setFormalOUTDef(NodeID fo, NodeID def)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00275">SVFGOPT.h:275</a></div></div>
2440
2440
  <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00164">GenericGraph.h:164</a></div></div>
2441
- <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00087">SVFBasicTypes.h:87</a></div></div>
2441
+ <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
2442
2442
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_afa99da68ef756d968d39a85f0fac3649"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#afa99da68ef756d968d39a85f0fac3649">SVF::SVFGOPT::addRetIndirectSVFGEdge</a></div><div class="ttdeci">SVFGEdge * addRetIndirectSVFGEdge(NodeID srcId, NodeID dstId, CallSiteID csid, const NodeBS &amp;cpts)</div><div class="ttdoc">Add indirect ret edge from src to dst with one call site ID. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00079">SVFGOPT.cpp:79</a></div></div>
2443
2443
  <div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00042">SVFGEdge.h:42</a></div></div>
2444
2444
  <div class="ttc" id="classSVF_1_1GenericNode_html_a19a3366fd8a58290d0c740c46c3dcb3d"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a19a3366fd8a58290d0c740c46c3dcb3d">SVF::GenericNode::OutEdgeEnd</a></div><div class="ttdeci">iterator OutEdgeEnd()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00205">GenericGraph.h:205</a></div></div>
@@ -2485,7 +2485,7 @@ Additional Inherited Members</h2></td></tr>
2485
2485
  <div class="ttc" id="classSVF_1_1GenericNode_html_afe6a7b286d9af4992f41b59612fd2900"><div class="ttname"><a href="classSVF_1_1GenericNode.html#afe6a7b286d9af4992f41b59612fd2900">SVF::GenericNode::InEdgeEnd</a></div><div class="ttdeci">iterator InEdgeEnd()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00213">GenericGraph.h:213</a></div></div>
2486
2486
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_ac15b3c2cb127b17ebad3a30fc04b6f40"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#ac15b3c2cb127b17ebad3a30fc04b6f40">SVF::SVFGOPT::removeAllEdges</a></div><div class="ttdeci">void removeAllEdges(const SVFGNode *node)</div><div class="ttdoc">Remove edges of a SVFG node. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8h_source.html#l00329">SVFGOPT.h:329</a></div></div>
2487
2487
  <div class="ttc" id="classSVF_1_1VFGNode_html_a3c558955f60c237c558d8faafed781e8"><div class="ttname"><a href="classSVF_1_1VFGNode.html#a3c558955f60c237c558d8faafed781e8">SVF::VFGNode::const_iterator</a></div><div class="ttdeci">VFGEdge::VFGEdgeSetTy::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00061">VFGNode.h:61</a></div></div>
2488
- <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00087">SVFBasicTypes.h:87</a></div></div>
2488
+ <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
2489
2489
  <div class="ttc" id="classSVF_1_1SVFGOPT_html_afa99da68ef756d968d39a85f0fac3649"><div class="ttname"><a href="classSVF_1_1SVFGOPT.html#afa99da68ef756d968d39a85f0fac3649">SVF::SVFGOPT::addRetIndirectSVFGEdge</a></div><div class="ttdeci">SVFGEdge * addRetIndirectSVFGEdge(NodeID srcId, NodeID dstId, CallSiteID csid, const NodeBS &amp;cpts)</div><div class="ttdoc">Add indirect ret edge from src to dst with one call site ID. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGOPT_8cpp_source.html#l00079">SVFGOPT.cpp:79</a></div></div>
2490
2490
  <div class="ttc" id="classSVF_1_1SVFG_html_ad03f0064d3a1ff397b35a606304a9c80"><div class="ttname"><a href="classSVF_1_1SVFG.html#ad03f0064d3a1ff397b35a606304a9c80">SVF::SVFG::addIntraIndirectVFEdge</a></div><div class="ttdeci">SVFGEdge * addIntraIndirectVFEdge(NodeID srcId, NodeID dstId, const NodeBS &amp;cpts)</div><div class="ttdoc">Add indirect def-use edges of a memory region between two statements,. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8cpp_source.html#l00426">SVFG.cpp:426</a></div></div>
2491
2491
  <div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00042">SVFGEdge.h:42</a></div></div>
@@ -826,7 +826,7 @@ Additional Inherited Members</h2></td></tr>
826
826
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a0a39eb7aab584cc285c32545ddb57ad8"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a0a39eb7aab584cc285c32545ddb57ad8">SVF::SVFGStat::totalIndEdgeLabels</a></div><div class="ttdeci">int totalIndEdgeLabels</div><div class="ttdoc">Total number of l –o–&gt; lp. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00197">SVFGStat.h:197</a></div></div>
827
827
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a7929d8ba565ecb04efd236ccb19a4658"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a7929d8ba565ecb04efd236ccb19a4658">SVF::SVFGStat::totalInEdge</a></div><div class="ttdeci">int totalInEdge</div><div class="ttdoc">Total number of incoming SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00193">SVFGStat.h:193</a></div></div>
828
828
  <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00164">GenericGraph.h:164</a></div></div>
829
- <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00087">SVFBasicTypes.h:87</a></div></div>
829
+ <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
830
830
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a982ce49695344bcde4cbbb445de69c8d"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a982ce49695344bcde4cbbb445de69c8d">SVF::SVFGStat::totalIndOutEdge</a></div><div class="ttdeci">int totalIndOutEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00196">SVFGStat.h:196</a></div></div>
831
831
  <div class="ttc" id="classSVF_1_1IndirectSVFGEdge_html"><div class="ttname"><a href="classSVF_1_1IndirectSVFGEdge.html">SVF::IndirectSVFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFGEdge_8h_source.html#l00042">SVFGEdge.h:42</a></div></div>
832
832
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a1e93c866f3d780cb1cfdaf1dd143ea24"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a1e93c866f3d780cb1cfdaf1dd143ea24">SVF::SVFGStat::totalDirCallEdge</a></div><div class="ttdeci">int totalDirCallEdge</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00201">SVFGStat.h:201</a></div></div>
@@ -1229,7 +1229,7 @@ Additional Inherited Members</h2></td></tr>
1229
1229
 
1230
1230
  <p class="definition">Definition at line <a class="el" href="SVFGStat_8cpp_source.html#l00370">370</a> of file <a class="el" href="SVFGStat_8cpp_source.html">SVFGStat.cpp</a>.</p>
1231
1231
  <div class="fragment"><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;{</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>.clear();</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a>.clear();</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordtype">unsigned</span> totalNode = 0;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordtype">unsigned</span> totalCycle = 0;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordtype">unsigned</span> <a class="code" href="classSVF_1_1SVFGStat.html#a42b67371df87ba647166000912f53243">nodeInCycle</a> = 0;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordtype">unsigned</span> maxNodeInCycle = 0;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordtype">unsigned</span> totalEdge = 0;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordtype">unsigned</span> edgeInCycle = 0;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordtype">unsigned</span> totalDirectEdge = 0;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordtype">unsigned</span> directEdgeInCycle = 0;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordtype">unsigned</span> totalIndirectEdge = 0;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordtype">unsigned</span> indirectEdgeInCycle = 0;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordtype">unsigned</span> totalCallEdge = 0;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordtype">unsigned</span> callEdgeInCycle = 0;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordtype">unsigned</span> insensitiveCallEdge = 0;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordtype">unsigned</span> totalRetEdge = 0;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordtype">unsigned</span> retEdgeInCycle = 0;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordtype">unsigned</span> insensitiveRetEdge = 0;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <a class="code" href="classSVF_1_1SVFGStat.html#a149edd19cd5adafec13cbb49c590f0a8">SVFGSCC</a>* svfgSCC = <span class="keyword">new</span> <a class="code" href="classSVF_1_1SVFGStat.html#a149edd19cd5adafec13cbb49c590f0a8">SVFGSCC</a>(<a class="code" href="classSVF_1_1SVFGStat.html#a3d06ead4c3222ce8a0535d9f3d504c3d">graph</a>);</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; svfgSCC-&gt;find();</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> sccRepNodeSet;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; SVFG::SVFGNodeIDToNodeMapTy::iterator it = <a class="code" href="classSVF_1_1SVFGStat.html#a3d06ead4c3222ce8a0535d9f3d504c3d">graph</a>-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>();</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; SVFG::SVFGNodeIDToNodeMapTy::iterator eit = <a class="code" href="classSVF_1_1SVFGStat.html#a3d06ead4c3222ce8a0535d9f3d504c3d">graph</a>-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">for</span> (; it != eit; ++it)</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; {</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; totalNode++;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">if</span>(svfgSCC-&gt;isInCycle(it-&gt;first))</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; {</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; nodeInCycle++;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; sccRepNodeSet.insert(svfgSCC-&gt;repNode(it-&gt;first));</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a>&amp; subNodes = svfgSCC-&gt;subNodes(it-&gt;first);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">if</span>(subNodes.count() &gt; maxNodeInCycle)</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; maxNodeInCycle = subNodes.count();</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; }</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; SVFGEdge::SVFGEdgeSetTy::const_iterator edgeIt = it-&gt;second-&gt;InEdgeBegin();</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; SVFGEdge::SVFGEdgeSetTy::const_iterator edgeEit = it-&gt;second-&gt;InEdgeEnd();</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; {</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1VFGEdge.html">SVFGEdge</a> *edge = *edgeIt;</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; totalEdge++;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordtype">bool</span> eCycle = <span class="keyword">false</span>;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1SVFGStat.html#a947dcd586a9ccf8b60243153769aaf31">getSCCRep</a>(svfgSCC,edge-&gt;<a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>()) == <a class="code" href="classSVF_1_1SVFGStat.html#a947dcd586a9ccf8b60243153769aaf31">getSCCRep</a>(svfgSCC,edge-&gt;<a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>()))</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; {</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; edgeInCycle++;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; eCycle = <span class="keyword">true</span>;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; }</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">if</span> (edge-&gt;<a class="code" href="classSVF_1_1VFGEdge.html#a8777555f00696706de250159b920d14b">isDirectVFGEdge</a>())</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; {</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; totalDirectEdge++;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">if</span>(eCycle)</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; directEdgeInCycle++;</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; }</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordflow">if</span> (edge-&gt;<a class="code" href="classSVF_1_1VFGEdge.html#aa8f30d093d4950724a6688707326b57b">isIndirectVFGEdge</a>())</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; {</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; totalIndirectEdge++;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keywordflow">if</span>(eCycle)</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; indirectEdgeInCycle++;</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; }</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">if</span> (edge-&gt;<a class="code" href="classSVF_1_1VFGEdge.html#a4352297ef44c4eff1efe2f348cce6fe9">isCallVFGEdge</a>())</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; {</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; totalCallEdge++;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span>(eCycle)</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; {</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; callEdgeInCycle++;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">if</span>(insensitiveCalRetEdges.find(edge)!=insensitiveCalRetEdges.end())</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; {</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; insensitiveCallEdge++;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; }</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; }</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">if</span> (edge-&gt;<a class="code" href="classSVF_1_1VFGEdge.html#a3937eef974c3953f1d1e7d64c5a24ff3">isRetVFGEdge</a>())</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; {</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; totalRetEdge++;</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">if</span>(eCycle)</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; {</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; retEdgeInCycle++;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; }</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">if</span>(insensitiveCalRetEdges.find(edge)!=insensitiveCalRetEdges.end())</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; {</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; insensitiveRetEdge++;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; }</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; }</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; }</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; }</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; totalCycle = sccRepNodeSet.size();</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalNode&quot;</span>] = totalNode;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalCycle&quot;</span>] = totalCycle;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;NodeInCycle&quot;</span>] = <a class="code" href="classSVF_1_1SVFGStat.html#a42b67371df87ba647166000912f53243">nodeInCycle</a>;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;MaxNodeInCycle&quot;</span>] = maxNodeInCycle;</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalEdge&quot;</span>] = totalEdge;</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;EdgeInCycle&quot;</span>] = edgeInCycle;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalDirEdge&quot;</span>] = totalDirectEdge;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;DirEdgeInCycle&quot;</span>] = directEdgeInCycle;</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalIndEdge&quot;</span>] = totalIndirectEdge;</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;IndEdgeInCycle&quot;</span>] = indirectEdgeInCycle;</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalCallEdge&quot;</span>] = totalCallEdge;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;CallEdgeInCycle&quot;</span>] = callEdgeInCycle;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;InsenCallEdge&quot;</span>] = insensitiveCallEdge;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;TotalRetEdge&quot;</span>] = totalRetEdge;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;RetEdgeInCycle&quot;</span>] = retEdgeInCycle;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">&quot;InsenRetEdge&quot;</span>] = insensitiveRetEdge;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; std::cout &lt;&lt; <span class="stringliteral">&quot;\n****SVFG SCC Stat****\n&quot;</span>;</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">PTAStat::printStat</a>();</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keyword">delete</span> svfgSCC;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00365">GenericGraph.h:365</a></div></div>
1232
- <div class="ttc" id="namespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set&lt; NodeID &gt; NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00116">SVFBasicTypes.h:116</a></div></div>
1232
+ <div class="ttc" id="namespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set&lt; NodeID &gt; NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00114">SVFBasicTypes.h:114</a></div></div>
1233
1233
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
1234
1234
  <div class="ttc" id="classSVF_1_1VFGEdge_html_aa8f30d093d4950724a6688707326b57b"><div class="ttname"><a href="classSVF_1_1VFGEdge.html#aa8f30d093d4950724a6688707326b57b">SVF::VFGEdge::isIndirectVFGEdge</a></div><div class="ttdeci">bool isIndirectVFGEdge() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00080">VFGEdge.h:80</a></div></div>
1235
1235
  <div class="ttc" id="classSVF_1_1VFGEdge_html_a3937eef974c3953f1d1e7d64c5a24ff3"><div class="ttname"><a href="classSVF_1_1VFGEdge.html#a3937eef974c3953f1d1e7d64c5a24ff3">SVF::VFGEdge::isRetVFGEdge</a></div><div class="ttdeci">bool isRetVFGEdge() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00088">VFGEdge.h:88</a></div></div>
@@ -1242,11 +1242,11 @@ Additional Inherited Members</h2></td></tr>
1242
1242
  <div class="ttc" id="classSVF_1_1VFGEdge_html_a8777555f00696706de250159b920d14b"><div class="ttname"><a href="classSVF_1_1VFGEdge.html#a8777555f00696706de250159b920d14b">SVF::VFGEdge::isDirectVFGEdge</a></div><div class="ttdeci">bool isDirectVFGEdge() const</div><div class="ttdoc">Get methods of the components. </div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00076">VFGEdge.h:76</a></div></div>
1243
1243
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a3d06ead4c3222ce8a0535d9f3d504c3d"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a3d06ead4c3222ce8a0535d9f3d504c3d">SVF::SVFGStat::graph</a></div><div class="ttdeci">SVFG * graph</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00170">SVFGStat.h:170</a></div></div>
1244
1244
  <div class="ttc" id="classSVF_1_1VFGEdge_html_a4352297ef44c4eff1efe2f348cce6fe9"><div class="ttname"><a href="classSVF_1_1VFGEdge.html#a4352297ef44c4eff1efe2f348cce6fe9">SVF::VFGEdge::isCallVFGEdge</a></div><div class="ttdeci">bool isCallVFGEdge() const</div><div class="ttdef"><b>Definition:</b> <a href="VFGEdge_8h_source.html#l00084">VFGEdge.h:84</a></div></div>
1245
- <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00087">SVFBasicTypes.h:87</a></div></div>
1245
+ <div class="ttc" id="namespaceSVF_html_a740396763e377643790c8b803ab3e4ea"><div class="ttname"><a href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">SVF::NodeBS</a></div><div class="ttdeci">llvm::SparseBitVector NodeBS</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00086">SVFBasicTypes.h:86</a></div></div>
1246
1246
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a42b67371df87ba647166000912f53243"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a42b67371df87ba647166000912f53243">SVF::SVFGStat::nodeInCycle</a></div><div class="ttdeci">NodeID nodeInCycle(SVFGSCC *scc, NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00174">SVFGStat.cpp:174</a></div></div>
1247
1247
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a947dcd586a9ccf8b60243153769aaf31"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a947dcd586a9ccf8b60243153769aaf31">SVF::SVFGStat::getSCCRep</a></div><div class="ttdeci">NodeID getSCCRep(SVFGSCC *scc, NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00170">SVFGStat.cpp:170</a></div></div>
1248
1248
  <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#l00148">PTAStat.h:148</a></div></div>
1249
- <div class="ttc" id="classSVF_1_1PTAStat_html_aa5f455bfa79743b8e263431593d29bbf"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(string str=&quot;&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00291">PTAStat.cpp:291</a></div></div>
1249
+ <div class="ttc" id="classSVF_1_1PTAStat_html_aa5f455bfa79743b8e263431593d29bbf"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(string str=&quot;&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00290">PTAStat.cpp:290</a></div></div>
1250
1250
  </div><!-- fragment -->
1251
1251
  </div>
1252
1252
  </div>
@@ -1304,7 +1304,7 @@ Additional Inherited Members</h2></td></tr>
1304
1304
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a3c016e166b8e84eb3b98bc3717cba5d8"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a3c016e166b8e84eb3b98bc3717cba5d8">SVF::SVFGStat::processGraph</a></div><div class="ttdeci">void processGraph()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00245">SVFGStat.cpp:245</a></div></div>
1305
1305
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a4d15f2de3f226c26cb2af57176444ec9"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">SVF::SVFGStat::numOfStore</a></div><div class="ttdeci">int numOfStore</div><div class="ttdoc">number of store svfg nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00185">SVFGStat.h:185</a></div></div>
1306
1306
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a3210cc1283669129234aa2c3feb67654"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a3210cc1283669129234aa2c3feb67654">SVF::SVFGStat::connectIndSVFGEdgeTimeEnd</a></div><div class="ttdeci">double connectIndSVFGEdgeTimeEnd</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00226">SVFGStat.h:226</a></div></div>
1307
- <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00171">SVFBasicTypes.h:171</a></div></div>
1307
+ <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00174">SVFBasicTypes.h:174</a></div></div>
1308
1308
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a4328f75f379e692901b95bacdf8dd413"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a4328f75f379e692901b95bacdf8dd413">SVF::SVFGStat::avgInDegree</a></div><div class="ttdeci">int avgInDegree</div><div class="ttdoc">average in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00206">SVFGStat.h:206</a></div></div>
1309
1309
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a737352ac44d808c55a91e8bd5e9e0aac"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a737352ac44d808c55a91e8bd5e9e0aac">SVF::SVFGStat::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00149">SVFGStat.cpp:149</a></div></div>
1310
1310
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a364d684cbefed1793d7c4506fb1fa0fd"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a364d684cbefed1793d7c4506fb1fa0fd">SVF::SVFGStat::avgIndInDegree</a></div><div class="ttdeci">int avgIndInDegree</div><div class="ttdoc">average indirect in degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00211">SVFGStat.h:211</a></div></div>
@@ -1354,7 +1354,7 @@ Additional Inherited Members</h2></td></tr>
1354
1354
  </div><div class="memdoc">
1355
1355
 
1356
1356
  <p class="definition">Definition at line <a class="el" href="SVFGStat_8cpp_source.html#l00501">501</a> of file <a class="el" href="SVFGStat_8cpp_source.html">SVFGStat.cpp</a>.</p>
1357
- <div class="fragment"><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;{</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; std::cout &lt;&lt; <span class="stringliteral">&quot;\n****SVFG Statistics****\n&quot;</span>;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">PTAStat::printStat</a>();</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;}</div><div class="ttc" id="classSVF_1_1PTAStat_html_aa5f455bfa79743b8e263431593d29bbf"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(string str=&quot;&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00291">PTAStat.cpp:291</a></div></div>
1357
+ <div class="fragment"><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;{</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; std::cout &lt;&lt; <span class="stringliteral">&quot;\n****SVFG Statistics****\n&quot;</span>;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">PTAStat::printStat</a>();</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;}</div><div class="ttc" id="classSVF_1_1PTAStat_html_aa5f455bfa79743b8e263431593d29bbf"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(string str=&quot;&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00290">PTAStat.cpp:290</a></div></div>
1358
1358
  </div><!-- fragment -->
1359
1359
  </div>
1360
1360
  </div>
@@ -1386,7 +1386,7 @@ Additional Inherited Members</h2></td></tr>
1386
1386
  <div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00365">GenericGraph.h:365</a></div></div>
1387
1387
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a29807c066e60ef3905a5e01e0b86ffd2"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a29807c066e60ef3905a5e01e0b86ffd2">SVF::SVFGStat::numOfFormalRet</a></div><div class="ttdeci">int numOfFormalRet</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00177">SVFGStat.h:177</a></div></div>
1388
1388
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a123305ef02a5bfa127a1e172beb5e8cf"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a123305ef02a5bfa127a1e172beb5e8cf">SVF::SVFGStat::avgOutDegree</a></div><div class="ttdeci">int avgOutDegree</div><div class="ttdoc">average out degrees of SVFG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00207">SVFGStat.h:207</a></div></div>
1389
- <div class="ttc" id="namespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set&lt; NodeID &gt; NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00116">SVFBasicTypes.h:116</a></div></div>
1389
+ <div class="ttc" id="namespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set&lt; NodeID &gt; NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00114">SVFBasicTypes.h:114</a></div></div>
1390
1390
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a8cd6254435994d9aea27b5519491fc6a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a8cd6254435994d9aea27b5519491fc6a">SVF::SVFGStat::totalIndInEdge</a></div><div class="ttdeci">int totalIndInEdge</div><div class="ttdoc">Total number of indirect SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00195">SVFGStat.h:195</a></div></div>
1391
1391
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a570b8466e99ce5f68e02546d1ef21971"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a570b8466e99ce5f68e02546d1ef21971">SVF::SVFGStat::calculateNodeDegrees</a></div><div class="ttdeci">void calculateNodeDegrees(SVFGNode *node, NodeSet &amp;nodeHasIndInEdge, NodeSet &amp;nodeHasIndOutEdge)</div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8cpp_source.html#l00303">SVFGStat.cpp:303</a></div></div>
1392
1392
  <div class="ttc" id="classSVF_1_1SVFGStat_html_a18211427d08f70d252512d387763ce4a"><div class="ttname"><a href="classSVF_1_1SVFGStat.html#a18211427d08f70d252512d387763ce4a">SVF::SVFGStat::totalOutEdge</a></div><div class="ttdeci">int totalOutEdge</div><div class="ttdoc">Total number of outgoing SVFG edges. </div><div class="ttdef"><b>Definition:</b> <a href="SVFGStat_8h_source.html#l00194">SVFGStat.h:194</a></div></div>
@@ -152,8 +152,8 @@ Additional Inherited Members</h2></td></tr>
152
152
  </div><div class="memdoc">
153
153
 
154
154
  <p class="definition">Definition at line <a class="el" href="BasicTypes_8h_source.html#l00287">287</a> of file <a class="el" href="BasicTypes_8h_source.html">BasicTypes.h</a>.</p>
155
- <div class="fragment"><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; : <a class="code" href="classSVF_1_1SVFValue.html#a2a85562586efde20be8ac1ccbd1a5ee6">SVFValue</a>(val,<a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860ea8a1159a8819de74d39e32aef1b415c2a">SVFValue::SVFGlob</a>)</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; {</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFValue_html_a2a85562586efde20be8ac1ccbd1a5ee6"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2a85562586efde20be8ac1ccbd1a5ee6">SVF::SVFValue::SVFValue</a></div><div class="ttdeci">SVFValue(const llvm::StringRef &amp;val, SVFValKind k)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00197">SVFBasicTypes.h:197</a></div></div>
156
- <div class="ttc" id="classSVF_1_1SVFValue_html_afb50ea5aeea7a0608a3c9335aea6860ea8a1159a8819de74d39e32aef1b415c2a"><div class="ttname"><a href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860ea8a1159a8819de74d39e32aef1b415c2a">SVF::SVFValue::SVFGlob</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00187">SVFBasicTypes.h:187</a></div></div>
155
+ <div class="fragment"><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; : <a class="code" href="classSVF_1_1SVFValue.html#a2a85562586efde20be8ac1ccbd1a5ee6">SVFValue</a>(val,<a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860ea8a1159a8819de74d39e32aef1b415c2a">SVFValue::SVFGlob</a>)</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; {</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFValue_html_a2a85562586efde20be8ac1ccbd1a5ee6"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2a85562586efde20be8ac1ccbd1a5ee6">SVF::SVFValue::SVFValue</a></div><div class="ttdeci">SVFValue(const llvm::StringRef &amp;val, SVFValKind k)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00200">SVFBasicTypes.h:200</a></div></div>
156
+ <div class="ttc" id="classSVF_1_1SVFValue_html_afb50ea5aeea7a0608a3c9335aea6860ea8a1159a8819de74d39e32aef1b415c2a"><div class="ttname"><a href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860ea8a1159a8819de74d39e32aef1b415c2a">SVF::SVFValue::SVFGlob</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00190">SVFBasicTypes.h:190</a></div></div>
157
157
  </div><!-- fragment -->
158
158
  </div>
159
159
  </div>
@@ -152,8 +152,8 @@ Additional Inherited Members</h2></td></tr>
152
152
  </div><div class="memdoc">
153
153
 
154
154
  <p class="definition">Definition at line <a class="el" href="BasicTypes_8h_source.html#l00307">307</a> of file <a class="el" href="BasicTypes_8h_source.html">BasicTypes.h</a>.</p>
155
- <div class="fragment"><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; : <a class="code" href="classSVF_1_1SVFValue.html#a2a85562586efde20be8ac1ccbd1a5ee6">SVFValue</a>(val,<a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eacb5f1f872986a8f8bccd9a3b3904e9dd">SVFValue::SVFInst</a>)</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; {</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFValue_html_a2a85562586efde20be8ac1ccbd1a5ee6"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2a85562586efde20be8ac1ccbd1a5ee6">SVF::SVFValue::SVFValue</a></div><div class="ttdeci">SVFValue(const llvm::StringRef &amp;val, SVFValKind k)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00197">SVFBasicTypes.h:197</a></div></div>
156
- <div class="ttc" id="classSVF_1_1SVFValue_html_afb50ea5aeea7a0608a3c9335aea6860eacb5f1f872986a8f8bccd9a3b3904e9dd"><div class="ttname"><a href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eacb5f1f872986a8f8bccd9a3b3904e9dd">SVF::SVFValue::SVFInst</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00189">SVFBasicTypes.h:189</a></div></div>
155
+ <div class="fragment"><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; : <a class="code" href="classSVF_1_1SVFValue.html#a2a85562586efde20be8ac1ccbd1a5ee6">SVFValue</a>(val,<a class="code" href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eacb5f1f872986a8f8bccd9a3b3904e9dd">SVFValue::SVFInst</a>)</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; {</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFValue_html_a2a85562586efde20be8ac1ccbd1a5ee6"><div class="ttname"><a href="classSVF_1_1SVFValue.html#a2a85562586efde20be8ac1ccbd1a5ee6">SVF::SVFValue::SVFValue</a></div><div class="ttdeci">SVFValue(const llvm::StringRef &amp;val, SVFValKind k)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00200">SVFBasicTypes.h:200</a></div></div>
156
+ <div class="ttc" id="classSVF_1_1SVFValue_html_afb50ea5aeea7a0608a3c9335aea6860eacb5f1f872986a8f8bccd9a3b3904e9dd"><div class="ttname"><a href="classSVF_1_1SVFValue.html#afb50ea5aeea7a0608a3c9335aea6860eacb5f1f872986a8f8bccd9a3b3904e9dd">SVF::SVFValue::SVFInst</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00192">SVFBasicTypes.h:192</a></div></div>
157
157
  </div><!-- fragment -->
158
158
  </div>
159
159
  </div>
@@ -719,9 +719,9 @@ Static Private Attributes</h2></td></tr>
719
719
  <div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00088">SymbolTableInfo.cpp:88</a></div></div>
720
720
  <div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a85ab6b592fefc45a0674d3295e01638f"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a85ab6b592fefc45a0674d3295e01638f">SVF::SVFUtil::outs</a></div><div class="ttdeci">raw_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>
721
721
  <div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a74481bb26d77d8c8bca91efd3e23c08e"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a74481bb26d77d8c8bca91efd3e23c08e">SVF::SymbolTableInfo::buildMemModel</a></div><div class="ttdeci">void buildMemModel(SVFModule *svfModule)</div><div class="ttdoc">Start building memory model. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00411">SymbolTableInfo.cpp:411</a></div></div>
722
- <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00149">SVFBasicTypes.h:149</a></div></div>
722
+ <div class="ttc" id="SVFBasicTypes_8h_html_a2c64190a065f342897573a3ef4973adb"><div class="ttname"><a href="SVFBasicTypes_8h.html#a2c64190a065f342897573a3ef4973adb">DGENERAL</a></div><div class="ttdeci">#define DGENERAL</div><div class="ttdoc">General debug flag is for each phase of a pass, it is often in a colorful output format. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00152">SVFBasicTypes.h:152</a></div></div>
723
723
  <div class="ttc" id="classSVF_1_1SVFModule_html_a1357c876eccedd58b3abe68875b3a570"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a1357c876eccedd58b3abe68875b3a570">SVF::SVFModule::pagReadFromTXT</a></div><div class="ttdeci">static bool pagReadFromTXT()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00082">SVFModule.h:82</a></div></div>
724
- <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00144">SVFBasicTypes.h:144</a></div></div>
724
+ <div class="ttc" id="SVFBasicTypes_8h_html_a173ce1b9b505fdadf5613b663749d3b0"><div class="ttname"><a href="SVFBasicTypes_8h.html#a173ce1b9b505fdadf5613b663749d3b0">DBOUT</a></div><div class="ttdeci">#define DBOUT(TYPE, X)</div><div class="ttdoc">LLVM debug macros, define type of your DEBUG model of each pass. </div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00147">SVFBasicTypes.h:147</a></div></div>
725
725
  <div class="ttc" id="classSVF_1_1SymbolTableInfo_html"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html">SVF::SymbolTableInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00042">SymbolTableInfo.h:42</a></div></div>
726
726
  </div><!-- fragment -->
727
727
  </div>