svf-tools 1.0.558 → 1.0.561

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/README.md +1 -1
  2. package/SVF-doxygen/html/html/AbstractPointsToDS_8h_source.html +43 -43
  3. package/SVF-doxygen/html/html/AndersenPWC_8h_source.html +2 -2
  4. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +16 -16
  6. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +2 -2
  7. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +18 -18
  8. package/SVF-doxygen/html/html/Andersen_8h_source.html +56 -56
  9. package/SVF-doxygen/html/html/CFLGrammar_8txt.html +8 -8
  10. package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +10 -1
  11. package/SVF-doxygen/html/html/CFLGraphBuilder_8h_source.html +3 -1
  12. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
  13. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +44 -44
  14. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +43 -43
  15. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +12 -12
  16. package/SVF-doxygen/html/html/DDAClient_8h_source.html +36 -36
  17. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +19 -19
  18. package/SVF-doxygen/html/html/DDAPass_8h_source.html +21 -21
  19. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +51 -51
  20. package/SVF-doxygen/html/html/DDAStat_8h_source.html +51 -51
  21. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +111 -111
  22. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
  23. package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +2 -2
  24. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +5 -2
  25. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +3 -2
  26. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +40 -40
  27. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +52 -52
  28. package/SVF-doxygen/html/html/FileChecker_8cpp_source.html +2 -2
  29. package/SVF-doxygen/html/html/FileChecker_8h_source.html +2 -2
  30. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
  31. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +42 -42
  32. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +3 -3
  33. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +6 -6
  34. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +4 -4
  35. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +3 -3
  36. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +1 -1
  37. package/SVF-doxygen/html/html/LocationSet_8h_source.html +1 -1
  38. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +34 -34
  39. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +114 -114
  40. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +2 -2
  41. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +7 -7
  42. package/SVF-doxygen/html/html/MHP_8cpp.html +2 -2
  43. package/SVF-doxygen/html/html/MHP_8cpp_source.html +94 -94
  44. package/SVF-doxygen/html/html/MHP_8h_source.html +135 -135
  45. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +6 -6
  46. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +2 -2
  47. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +2 -2
  48. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +10 -10
  49. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +6 -6
  50. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +33 -33
  51. package/SVF-doxygen/html/html/MTAStat_8h_source.html +14 -14
  52. package/SVF-doxygen/html/html/MTA_8cpp_source.html +28 -28
  53. package/SVF-doxygen/html/html/MTA_8h_source.html +24 -24
  54. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +6 -6
  55. package/SVF-doxygen/html/html/MemPartition_8h_source.html +4 -4
  56. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +50 -50
  57. package/SVF-doxygen/html/html/MemRegion_8h_source.html +93 -93
  58. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +59 -59
  59. package/SVF-doxygen/html/html/MemSSA_8h_source.html +103 -103
  60. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +185 -185
  61. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +1 -1
  62. package/SVF-doxygen/html/html/PAGBuilderFromFile_8h_source.html +1 -1
  63. package/SVF-doxygen/html/html/PCG_8cpp_source.html +14 -14
  64. package/SVF-doxygen/html/html/PCG_8h_source.html +52 -52
  65. package/SVF-doxygen/html/html/PEGGrammar_8txt.html +14 -32
  66. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +40 -40
  67. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +181 -181
  68. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +15 -15
  69. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +30 -30
  70. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +1 -1
  71. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
  72. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +2 -2
  73. package/SVF-doxygen/html/html/ProgSlice_8h_source.html +60 -60
  74. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +2 -2
  75. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
  76. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
  77. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +1 -1
  78. package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +2 -2
  79. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +19 -19
  80. package/SVF-doxygen/html/html/SVFGStat_8h_source.html +1 -1
  81. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +12 -12
  82. package/SVF-doxygen/html/html/SVFG_8h_source.html +5 -5
  83. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +1 -1
  84. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +1 -1
  85. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +3 -3
  86. package/SVF-doxygen/html/html/SaberAnnotator_8h_source.html +2 -2
  87. package/SVF-doxygen/html/html/SaberCheckerAPI_8cpp_source.html +1 -1
  88. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +1 -1
  89. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +1 -1
  90. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +1 -1
  91. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +3 -3
  92. package/SVF-doxygen/html/html/SaberSVFGBuilder_8h_source.html +1 -1
  93. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +13 -13
  94. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +66 -66
  95. package/SVF-doxygen/html/html/SrcSnkSolver_8h_source.html +1 -1
  96. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +4 -4
  97. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +6 -6
  98. package/SVF-doxygen/html/html/TCT_8cpp_source.html +44 -44
  99. package/SVF-doxygen/html/html/TCT_8h_source.html +93 -93
  100. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +1 -1
  101. package/SVF-doxygen/html/html/TypeAnalysis_8h_source.html +2 -2
  102. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +2 -2
  103. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +25 -25
  104. package/SVF-doxygen/html/html/VersionedFlowSensitive_8h_source.html +38 -38
  105. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +5 -5
  106. package/SVF-doxygen/html/html/WPAStat_8h_source.html +2 -2
  107. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +2 -2
  108. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +2 -2
  109. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder-members.html +13 -10
  110. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder.html +190 -2
  111. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +22 -22
  112. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +102 -102
  113. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +43 -43
  114. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +20 -20
  115. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +6 -6
  116. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +16 -16
  117. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +19 -19
  118. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +39 -39
  119. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +1 -1
  120. package/SVF-doxygen/html/html/classSVF_1_1CallCHI.html +2 -2
  121. package/SVF-doxygen/html/html/classSVF_1_1CallMU.html +2 -2
  122. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +1 -1
  123. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +100 -100
  124. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +51 -51
  125. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +58 -58
  126. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +165 -165
  127. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +286 -286
  128. package/SVF-doxygen/html/html/classSVF_1_1DFPTData.html +26 -26
  129. package/SVF-doxygen/html/html/classSVF_1_1DiffPTData.html +11 -11
  130. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +4 -4
  131. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +4 -4
  132. package/SVF-doxygen/html/html/classSVF_1_1EntryCHI.html +2 -2
  133. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI-members.html +5 -4
  134. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +40 -5
  135. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +30 -30
  136. package/SVF-doxygen/html/html/classSVF_1_1FileChecker.html +3 -3
  137. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +71 -71
  138. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +7 -7
  139. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
  140. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +218 -218
  141. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +2 -2
  142. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +2 -2
  143. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +19 -19
  144. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  145. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +7 -7
  146. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +17 -17
  147. package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +2 -2
  148. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +334 -334
  149. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +9 -9
  150. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +246 -246
  151. package/SVF-doxygen/html/html/classSVF_1_1MHPValidator.html +7 -7
  152. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +200 -200
  153. package/SVF-doxygen/html/html/classSVF_1_1MSSACHI.html +2 -2
  154. package/SVF-doxygen/html/html/classSVF_1_1MSSADEF.html +1 -1
  155. package/SVF-doxygen/html/html/classSVF_1_1MSSAMU.html +2 -2
  156. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHI.html +1 -1
  157. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +2 -2
  158. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +53 -53
  159. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +4 -4
  160. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +22 -22
  161. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +181 -181
  162. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +44 -44
  163. package/SVF-doxygen/html/html/classSVF_1_1MemRegion.html +23 -23
  164. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +267 -267
  165. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +18 -18
  166. package/SVF-doxygen/html/html/classSVF_1_1MutableDFPTData.html +128 -128
  167. package/SVF-doxygen/html/html/classSVF_1_1MutableDiffPTData.html +55 -55
  168. package/SVF-doxygen/html/html/classSVF_1_1MutableIncDFPTData.html +88 -88
  169. package/SVF-doxygen/html/html/classSVF_1_1MutablePTData.html +78 -78
  170. package/SVF-doxygen/html/html/classSVF_1_1MutableVersionedPTData.html +77 -77
  171. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +131 -131
  172. package/SVF-doxygen/html/html/classSVF_1_1PTData.html +32 -32
  173. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +107 -107
  174. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +66 -66
  175. package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +84 -84
  176. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +77 -77
  177. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +134 -134
  178. package/SVF-doxygen/html/html/classSVF_1_1PersistentVersionedPTData.html +77 -77
  179. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +3 -3
  180. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +161 -161
  181. package/SVF-doxygen/html/html/classSVF_1_1RaceValidator.html +7 -7
  182. package/SVF-doxygen/html/html/classSVF_1_1RetMU.html +2 -2
  183. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +22 -22
  184. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +4 -4
  185. package/SVF-doxygen/html/html/classSVF_1_1SVFGNodeLockSpan.html +23 -23
  186. package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +5 -5
  187. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +2 -2
  188. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +157 -157
  189. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +15 -15
  190. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +2 -2
  191. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +264 -264
  192. package/SVF-doxygen/html/html/classSVF_1_1TCTEdge.html +13 -13
  193. package/SVF-doxygen/html/html/classSVF_1_1TCTNode.html +20 -20
  194. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +1 -1
  195. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +100 -100
  196. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +8 -8
  197. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +1 -1
  198. package/SVF-doxygen/html/html/classSVF_1_1VersionedPTData.html +11 -11
  199. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +6 -6
  200. package/SVF-doxygen/html/html/dda_8cpp.html +2 -2
  201. package/SVF-doxygen/html/html/dda_8cpp_source.html +2 -2
  202. package/SVF-doxygen/html/html/functions_a.html +11 -5
  203. package/SVF-doxygen/html/html/functions_c.html +21 -18
  204. package/SVF-doxygen/html/html/functions_f.html +6 -6
  205. package/SVF-doxygen/html/html/functions_func.html +16 -10
  206. package/SVF-doxygen/html/html/functions_func_c.html +19 -16
  207. package/SVF-doxygen/html/html/functions_func_i.html +11 -8
  208. package/SVF-doxygen/html/html/functions_i.html +11 -8
  209. package/SVF-doxygen/html/html/functions_l.html +5 -5
  210. package/SVF-doxygen/html/html/functions_p.html +6 -6
  211. package/SVF-doxygen/html/html/functions_r.html +3 -7
  212. package/SVF-doxygen/html/html/functions_s.html +16 -14
  213. package/SVF-doxygen/html/html/functions_v.html +6 -6
  214. package/SVF-doxygen/html/html/functions_w.html +11 -11
  215. package/SVF-doxygen/html/html/globals_g.html +3 -3
  216. package/SVF-doxygen/html/html/globals_v.html +1 -2
  217. package/SVF-doxygen/html/html/globals_vars.html +3 -4
  218. package/SVF-doxygen/html/html/mta_8cpp.html +2 -2
  219. package/SVF-doxygen/html/html/mta_8cpp_source.html +2 -2
  220. package/SVF-doxygen/html/html/namespaceSVF.html +11 -11
  221. package/SVF-doxygen/html/html/search/all_1.js +2 -0
  222. package/SVF-doxygen/html/html/search/all_10.js +5 -5
  223. package/SVF-doxygen/html/html/search/all_11.js +2 -2
  224. package/SVF-doxygen/html/html/search/all_12.js +8 -8
  225. package/SVF-doxygen/html/html/search/all_13.js +2 -2
  226. package/SVF-doxygen/html/html/search/all_14.js +1 -1
  227. package/SVF-doxygen/html/html/search/all_15.js +4 -4
  228. package/SVF-doxygen/html/html/search/all_16.js +2 -2
  229. package/SVF-doxygen/html/html/search/all_3.js +1 -0
  230. package/SVF-doxygen/html/html/search/all_6.js +2 -2
  231. package/SVF-doxygen/html/html/search/all_7.js +2 -2
  232. package/SVF-doxygen/html/html/search/all_9.js +2 -1
  233. package/SVF-doxygen/html/html/search/all_c.js +3 -3
  234. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  235. package/SVF-doxygen/html/html/search/functions_0.js +2 -0
  236. package/SVF-doxygen/html/html/search/functions_2.js +1 -0
  237. package/SVF-doxygen/html/html/search/functions_8.js +1 -0
  238. package/SVF-doxygen/html/html/search/variables_13.js +1 -1
  239. package/SVF-doxygen/html/html/search/variables_14.js +1 -1
  240. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  241. package/SVF-doxygen/html/html/search/variables_7.js +2 -2
  242. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  243. package/SVF-doxygen/html/html/structSVF_1_1MemRegion_1_1equalMemRegion.html +3 -3
  244. package/SVF-doxygen/html/html/structSVF_1_1VersionedFlowSensitive_1_1SCC_1_1NodeData.html +4 -4
  245. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +15 -15
  246. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1TCTNode_01_5_01_4_01_4.html +1 -1
  247. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1TCTNode_01_5_01_4.html +1 -1
  248. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1TCT_01_5_01_4.html +2 -2
  249. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1SVFGNodeLockSpan_01_4.html +3 -3
  250. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  251. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  252. package/include/CFL/CFLGraphBuilder.h +9 -0
  253. package/include/CFL/PEGGrammar.txt +4 -8
  254. package/include/DDA/ContextDDA.h +29 -0
  255. package/include/DDA/DDAClient.h +23 -0
  256. package/include/DDA/DDAPass.h +22 -0
  257. package/include/DDA/DDAStat.h +22 -0
  258. package/include/DDA/DDAVFSolver.h +22 -0
  259. package/include/DDA/FlowDDA.h +29 -0
  260. package/include/MSSA/MSSAMuChi.h +1 -1
  261. package/include/MSSA/MemPartition.h +1 -1
  262. package/include/MSSA/MemRegion.h +5 -1
  263. package/include/MSSA/MemSSA.h +7 -1
  264. package/include/MSSA/SVFGBuilder.h +1 -1
  265. package/include/MTA/FSMPTA.h +26 -0
  266. package/include/MTA/LockAnalysis.h +22 -0
  267. package/include/MTA/MHP.h +22 -0
  268. package/include/MTA/MTA.h +27 -1
  269. package/include/MTA/MTAStat.h +22 -0
  270. package/include/MTA/PCG.h +22 -0
  271. package/include/MTA/TCT.h +22 -0
  272. package/include/MemoryModel/AbstractPointsToDS.h +34 -0
  273. package/include/MemoryModel/ConditionalPT.h +1 -1
  274. package/include/MemoryModel/LocationSet.h +1 -1
  275. package/include/MemoryModel/MutablePointsToDS.h +32 -0
  276. package/include/MemoryModel/PAGBuilderFromFile.h +2 -2
  277. package/include/MemoryModel/PersistentPointsToCache.h +3 -1
  278. package/include/MemoryModel/PersistentPointsToDS.h +10 -0
  279. package/include/MemoryModel/PointerAnalysis.h +1 -1
  280. package/include/MemoryModel/PointerAnalysisImpl.h +1 -1
  281. package/include/MemoryModel/SVFStatements.h +1 -1
  282. package/include/SABER/DoubleFreeChecker.h +1 -1
  283. package/include/SABER/FileChecker.h +1 -1
  284. package/include/SABER/LeakChecker.h +1 -1
  285. package/include/SABER/ProgSlice.h +8 -1
  286. package/include/SABER/SaberAnnotator.h +1 -1
  287. package/include/SABER/SaberCheckerAPI.h +1 -1
  288. package/include/SABER/SaberCondAllocator.h +1 -1
  289. package/include/SABER/SaberSVFGBuilder.h +1 -1
  290. package/include/SABER/SrcSnkDDA.h +8 -1
  291. package/include/SABER/SrcSnkSolver.h +1 -1
  292. package/include/Util/ExtAPI.h +3 -0
  293. package/include/Util/ExtAPI.json +1456 -44
  294. package/include/WPA/Andersen.h +5 -0
  295. package/include/WPA/TypeAnalysis.h +1 -1
  296. package/include/WPA/VersionedFlowSensitive.h +4 -0
  297. package/lib/CFL/CFLGraphBuilder.cpp +44 -0
  298. package/lib/DDA/ContextDDA.cpp +22 -0
  299. package/lib/DDA/DDAClient.cpp +22 -0
  300. package/lib/DDA/DDAPass.cpp +23 -0
  301. package/lib/DDA/DDAStat.cpp +22 -0
  302. package/lib/DDA/FlowDDA.cpp +22 -0
  303. package/lib/MTA/FSMPTA.cpp +22 -0
  304. package/lib/MTA/LockAnalysis.cpp +22 -0
  305. package/lib/MTA/MHP.cpp +23 -1
  306. package/lib/MTA/MTA.cpp +23 -0
  307. package/lib/MTA/MTAStat.cpp +22 -0
  308. package/lib/MTA/PCG.cpp +22 -0
  309. package/lib/MTA/TCT.cpp +23 -0
  310. package/lib/MemoryModel/LocationSet.cpp +1 -1
  311. package/lib/MemoryModel/PAGBuilderFromFile.cpp +1 -1
  312. package/lib/MemoryModel/PointerAnalysis.cpp +1 -1
  313. package/lib/MemoryModel/PointerAnalysisImpl.cpp +23 -0
  314. package/lib/SABER/DoubleFreeChecker.cpp +1 -1
  315. package/lib/SABER/FileChecker.cpp +1 -1
  316. package/lib/SABER/LeakChecker.cpp +1 -1
  317. package/lib/SABER/ProgSlice.cpp +1 -1
  318. package/lib/SABER/SaberAnnotator.cpp +1 -1
  319. package/lib/SABER/SaberCheckerAPI.cpp +1 -1
  320. package/lib/SABER/SaberCondAllocator.cpp +1 -1
  321. package/lib/SABER/SaberSVFGBuilder.cpp +1 -1
  322. package/lib/SABER/SrcSnkDDA.cpp +1 -1
  323. package/lib/Util/ExtAPI.cpp +42 -4
  324. package/lib/WPA/Steensgaard.cpp +22 -0
  325. package/lib/WPA/TypeAnalysis.cpp +1 -1
  326. package/lib/WPA/WPAPass.cpp +1 -1
  327. package/package.json +1 -1
@@ -229,7 +229,7 @@ class SVF::DFPTData&lt; Key, KeySet, Data, DataSet &gt;</h3>
229
229
 
230
230
  <p>Data-flow points-to data structure for flow-sensitive analysis as defined by Hardekopf and Lin (CGO 11). Points-to information is maintained at each program point (statement). For address-taken variables, every program point has two sets: IN and OUT points-to sets. For top-level variables, points-to sets are maintained flow-insensitively via getPts(var). </p>
231
231
 
232
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00160">160</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
232
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00194">194</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
233
233
  </div><h2 class="groupheader">Member Typedef Documentation</h2>
234
234
  <a id="a6d5193ea9e77b3945cb0716978dc75be"></a>
235
235
  <h2 class="memtitle"><span class="permalink"><a href="#a6d5193ea9e77b3945cb0716978dc75be">&#9670;&nbsp;</a></span>BasePTData</h2>
@@ -245,7 +245,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
245
245
  </table>
246
246
  </div><div class="memdoc">
247
247
 
248
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00163">163</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
248
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00197">197</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
249
249
 
250
250
  </div>
251
251
  </div>
@@ -263,7 +263,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
263
263
  </table>
264
264
  </div><div class="memdoc">
265
265
 
266
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00166">166</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
266
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00200">200</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
267
267
 
268
268
  </div>
269
269
  </div>
@@ -281,7 +281,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
281
281
  </table>
282
282
  </div><div class="memdoc">
283
283
 
284
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00164">164</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
284
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00198">198</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
285
285
 
286
286
  </div>
287
287
  </div>
@@ -324,8 +324,8 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
324
324
 
325
325
  <p>Constructor. </p>
326
326
 
327
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00169">169</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
328
- <div class="fragment"><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;: <a class="code" href="classSVF_1_1DFPTData.html#a6d5193ea9e77b3945cb0716978dc75be">BasePTData</a>(reversePT, ty) { }</div><div class="ttc" id="classSVF_1_1DFPTData_html_a6d5193ea9e77b3945cb0716978dc75be"><div class="ttname"><a href="classSVF_1_1DFPTData.html#a6d5193ea9e77b3945cb0716978dc75be">SVF::DFPTData::BasePTData</a></div><div class="ttdeci">PTData&lt; Key, KeySet, Data, DataSet &gt; BasePTData</div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00163">AbstractPointsToDS.h:163</a></div></div>
327
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00203">203</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
328
+ <div class="fragment"><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;: <a class="code" href="classSVF_1_1DFPTData.html#a6d5193ea9e77b3945cb0716978dc75be">BasePTData</a>(reversePT, ty) { }</div><div class="ttc" id="classSVF_1_1DFPTData_html_a6d5193ea9e77b3945cb0716978dc75be"><div class="ttname"><a href="classSVF_1_1DFPTData.html#a6d5193ea9e77b3945cb0716978dc75be">SVF::DFPTData::BasePTData</a></div><div class="ttdeci">PTData&lt; Key, KeySet, Data, DataSet &gt; BasePTData</div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00197">AbstractPointsToDS.h:197</a></div></div>
329
329
  </div><!-- fragment -->
330
330
  </div>
331
331
  </div>
@@ -354,8 +354,8 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
354
354
  </table>
355
355
  </div><div class="memdoc">
356
356
 
357
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00171">171</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
358
- <div class="fragment"><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;{ }</div></div><!-- fragment -->
357
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00205">205</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
358
+ <div class="fragment"><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;{ }</div></div><!-- fragment -->
359
359
  </div>
360
360
  </div>
361
361
  <h2 class="groupheader">Member Function Documentation</h2>
@@ -386,8 +386,8 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
386
386
  </div><div class="memdoc">
387
387
  <p>Methods to support type inquiry through isa, cast, and dyn_cast: </p>
388
388
 
389
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00215">215</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
390
- <div class="fragment"><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; }</div></div><!-- fragment -->
389
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00249">249</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
390
+ <div class="fragment"><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; {</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div></div><!-- fragment -->
391
391
  </div>
392
392
  </div>
393
393
  <a id="abea003e1262f3e03967939e4028694a4"></a>
@@ -416,12 +416,12 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
416
416
  </table>
417
417
  </div><div class="memdoc">
418
418
 
419
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00220">220</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
420
- <div class="fragment"><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; {</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">return</span> ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848acb817cbf655c365c02af3675588f06cc">BasePTData::DataFlow</a></div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; || ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848a46777c0122829cc199bc911e585b4f62">BasePTData::MutDataFlow</a></div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; || ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848aa4e18dfa52aad741c91bcc78339e986c">BasePTData::MutIncDataFlow</a></div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; || ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848af7d68d3c87acd1e3169c09fbf855fd1f">BasePTData::PersDataFlow</a></div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; || ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848a3f0b959f73825d56c2aebcb699f3a08a">BasePTData::PersIncDataFlow</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; }</div><div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848a3f0b959f73825d56c2aebcb699f3a08a"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848a3f0b959f73825d56c2aebcb699f3a08a">SVF::PTData::PersIncDataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00058">AbstractPointsToDS.h:58</a></div></div>
421
- <div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848af7d68d3c87acd1e3169c09fbf855fd1f"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848af7d68d3c87acd1e3169c09fbf855fd1f">SVF::PTData::PersDataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00057">AbstractPointsToDS.h:57</a></div></div>
422
- <div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848a46777c0122829cc199bc911e585b4f62"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848a46777c0122829cc199bc911e585b4f62">SVF::PTData::MutDataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00051">AbstractPointsToDS.h:51</a></div></div>
423
- <div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848acb817cbf655c365c02af3675588f06cc"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848acb817cbf655c365c02af3675588f06cc">SVF::PTData::DataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00050">AbstractPointsToDS.h:50</a></div></div>
424
- <div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848aa4e18dfa52aad741c91bcc78339e986c"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848aa4e18dfa52aad741c91bcc78339e986c">SVF::PTData::MutIncDataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00052">AbstractPointsToDS.h:52</a></div></div>
419
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00254">254</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
420
+ <div class="fragment"><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; {</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">return</span> ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848acb817cbf655c365c02af3675588f06cc">BasePTData::DataFlow</a></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; || ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848a46777c0122829cc199bc911e585b4f62">BasePTData::MutDataFlow</a></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; || ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848aa4e18dfa52aad741c91bcc78339e986c">BasePTData::MutIncDataFlow</a></div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; || ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848af7d68d3c87acd1e3169c09fbf855fd1f">BasePTData::PersDataFlow</a></div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; || ptd-&gt;getPTDTY() == <a class="code" href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848a3f0b959f73825d56c2aebcb699f3a08a">BasePTData::PersIncDataFlow</a>;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; }</div><div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848a3f0b959f73825d56c2aebcb699f3a08a"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848a3f0b959f73825d56c2aebcb699f3a08a">SVF::PTData::PersIncDataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00092">AbstractPointsToDS.h:92</a></div></div>
421
+ <div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848af7d68d3c87acd1e3169c09fbf855fd1f"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848af7d68d3c87acd1e3169c09fbf855fd1f">SVF::PTData::PersDataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00091">AbstractPointsToDS.h:91</a></div></div>
422
+ <div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848a46777c0122829cc199bc911e585b4f62"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848a46777c0122829cc199bc911e585b4f62">SVF::PTData::MutDataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00085">AbstractPointsToDS.h:85</a></div></div>
423
+ <div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848acb817cbf655c365c02af3675588f06cc"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848acb817cbf655c365c02af3675588f06cc">SVF::PTData::DataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00084">AbstractPointsToDS.h:84</a></div></div>
424
+ <div class="ttc" id="classSVF_1_1PTData_html_a74ce29609c51f2be34a0b5b7650a9848aa4e18dfa52aad741c91bcc78339e986c"><div class="ttname"><a href="classSVF_1_1PTData.html#a74ce29609c51f2be34a0b5b7650a9848aa4e18dfa52aad741c91bcc78339e986c">SVF::PTData::MutIncDataFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00086">AbstractPointsToDS.h:86</a></div></div>
425
425
  </div><!-- fragment -->
426
426
  </div>
427
427
  </div>
@@ -491,7 +491,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
491
491
  </table>
492
492
  </div><div class="memdoc">
493
493
 
494
- <p>Implemented in <a class="el" href="classSVF_1_1PersistentDFPTData.html#a26ca6565c4766e3d6ea6bf435ae910a3">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#a44aad57ac0de594e404a6c4ceff0bd53">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
494
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableDFPTData.html#a44aad57ac0de594e404a6c4ceff0bd53">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#a26ca6565c4766e3d6ea6bf435ae910a3">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
495
495
 
496
496
  </div>
497
497
  </div>
@@ -531,7 +531,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
531
531
  </table>
532
532
  </div><div class="memdoc">
533
533
 
534
- <p>Implemented in <a class="el" href="classSVF_1_1PersistentDFPTData.html#aea89a705aed7e02ddbf73f861506536e">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#ab6b0496d0c34642ddd2707142334f4a2">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
534
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableDFPTData.html#ab6b0496d0c34642ddd2707142334f4a2">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#aea89a705aed7e02ddbf73f861506536e">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
535
535
 
536
536
  </div>
537
537
  </div>
@@ -562,7 +562,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
562
562
  </div><div class="memdoc">
563
563
  <p>Determine whether the DF IN/OUT sets have points-to sets. </p>
564
564
 
565
- <p>Implemented in <a class="el" href="classSVF_1_1PersistentDFPTData.html#a6e7d072fd2d420870bb959b68c200137">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#a9a9641305c9d670e09f02b71a3e384a9">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
565
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableDFPTData.html#a9a9641305c9d670e09f02b71a3e384a9">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#a6e7d072fd2d420870bb959b68c200137">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
566
566
 
567
567
  </div>
568
568
  </div>
@@ -602,7 +602,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
602
602
  </table>
603
603
  </div><div class="memdoc">
604
604
 
605
- <p>Implemented in <a class="el" href="classSVF_1_1PersistentDFPTData.html#ab490fd81739f2bd6dddabd5ce5beac3b">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#aa8b85dee2b70031a2f97e1a36c9b25de">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
605
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableDFPTData.html#aa8b85dee2b70031a2f97e1a36c9b25de">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#ab490fd81739f2bd6dddabd5ce5beac3b">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
606
606
 
607
607
  </div>
608
608
  </div>
@@ -632,7 +632,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
632
632
  </table>
633
633
  </div><div class="memdoc">
634
634
 
635
- <p>Implemented in <a class="el" href="classSVF_1_1PersistentDFPTData.html#a67c4dec1150bdd8458046696578e5069">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#ac6d487a4af529ecb30366be54b29260a">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
635
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableDFPTData.html#ac6d487a4af529ecb30366be54b29260a">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#a67c4dec1150bdd8458046696578e5069">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
636
636
 
637
637
  </div>
638
638
  </div>
@@ -673,7 +673,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
673
673
  </div><div class="memdoc">
674
674
  <p>Access points-to set from data-flow IN/OUT set. </p>
675
675
 
676
- <p>Implemented in <a class="el" href="classSVF_1_1PersistentDFPTData.html#ace47d00f778bc4a714fc4f9d0cbd063c">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#af6d234ae2b0aa91b510f3a2fba877340">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
676
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableDFPTData.html#af6d234ae2b0aa91b510f3a2fba877340">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#ace47d00f778bc4a714fc4f9d0cbd063c">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
677
677
 
678
678
  </div>
679
679
  </div>
@@ -877,7 +877,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
877
877
 
878
878
  <p>Update address-taken variables OUT[dstLoc:dstVar] with points-to of top-level pointers. </p>
879
879
 
880
- <p>Implemented in <a class="el" href="classSVF_1_1MutableIncDFPTData.html#aa8fdf0f82d3d94af34d5bc1386ed21f9">SVF::MutableIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentIncDFPTData.html#a002e6d234d0ad0c74a0976046e440f71">SVF::PersistentIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentDFPTData.html#a6761733754abf061e92125988a684fa3">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#a0ce585790bba942291bb7c7ffcaa3914">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
880
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableIncDFPTData.html#aa8fdf0f82d3d94af34d5bc1386ed21f9">SVF::MutableIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentIncDFPTData.html#a002e6d234d0ad0c74a0976046e440f71">SVF::PersistentIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1MutableDFPTData.html#a0ce585790bba942291bb7c7ffcaa3914">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#a6761733754abf061e92125988a684fa3">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
881
881
 
882
882
  </div>
883
883
  </div>
@@ -985,7 +985,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
985
985
 
986
986
  <p>Union (IN[dstLoc:dstVar], OUT[srcLoc:srcVar]). </p>
987
987
 
988
- <p>Implemented in <a class="el" href="classSVF_1_1MutableIncDFPTData.html#ad199b4b84f7aab48ff1510b118e2982f">SVF::MutableIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentIncDFPTData.html#a9191992b978b643f2d51633b2e330ec6">SVF::PersistentIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentDFPTData.html#abfacbe37d9e0b5f05eabec66c60c2e2b">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#a85c0d93ee01d2c93c255e5a369248d1b">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
988
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableIncDFPTData.html#ad199b4b84f7aab48ff1510b118e2982f">SVF::MutableIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentIncDFPTData.html#a9191992b978b643f2d51633b2e330ec6">SVF::PersistentIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1MutableDFPTData.html#a85c0d93ee01d2c93c255e5a369248d1b">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#abfacbe37d9e0b5f05eabec66c60c2e2b">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
989
989
 
990
990
  </div>
991
991
  </div>
@@ -1039,7 +1039,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
1039
1039
 
1040
1040
  <p>Union (OUT[dstLoc:dstVar], IN[srcLoc:srcVar]). </p>
1041
1041
 
1042
- <p>Implemented in <a class="el" href="classSVF_1_1MutableIncDFPTData.html#aa326ac77577a8a4a0ce3e29cc03a3989">SVF::MutableIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentIncDFPTData.html#a6a26ddacfd726c7078ae560a6b50ad6b">SVF::PersistentIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentDFPTData.html#a81e6d2d313d7f23fcc2a3d0f5344317f">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#ab3c517be91b4711ace581df075d4647a">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1042
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableIncDFPTData.html#aa326ac77577a8a4a0ce3e29cc03a3989">SVF::MutableIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentIncDFPTData.html#a6a26ddacfd726c7078ae560a6b50ad6b">SVF::PersistentIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1MutableDFPTData.html#ab3c517be91b4711ace581df075d4647a">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#a81e6d2d313d7f23fcc2a3d0f5344317f">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1043
1043
 
1044
1044
  </div>
1045
1045
  </div>
@@ -1087,7 +1087,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
1087
1087
 
1088
1088
  <p>Update points-to set of top-level pointers with IN[srcLoc:srcVar]. </p>
1089
1089
 
1090
- <p>Implemented in <a class="el" href="classSVF_1_1MutableIncDFPTData.html#a7778be60515fa3ff247b6d2cec138cfc">SVF::MutableIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentIncDFPTData.html#ae4732dd1897883fafa98454b46134bfb">SVF::PersistentIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentDFPTData.html#aa9d13ece84d5f519031b4f3cdb429d61">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1MutableDFPTData.html#a21b29c2d3e429017d910025e4ec73fc6">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1090
+ <p>Implemented in <a class="el" href="classSVF_1_1MutableIncDFPTData.html#a7778be60515fa3ff247b6d2cec138cfc">SVF::MutableIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1PersistentIncDFPTData.html#ae4732dd1897883fafa98454b46134bfb">SVF::PersistentIncDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, <a class="el" href="classSVF_1_1MutableDFPTData.html#a21b29c2d3e429017d910025e4ec73fc6">SVF::MutableDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>, and <a class="el" href="classSVF_1_1PersistentDFPTData.html#aa9d13ece84d5f519031b4f3cdb429d61">SVF::PersistentDFPTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1091
1091
 
1092
1092
  </div>
1093
1093
  </div>
@@ -194,7 +194,7 @@ class SVF::DiffPTData&lt; Key, KeySet, Data, DataSet &gt;</h3>
194
194
 
195
195
  <p>Abstract diff points-to data with cached information. This is an optimisation on top of the base points-to data structure. The points-to information is propagated incrementally only for the different parts. </p>
196
196
 
197
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00115">115</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
197
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00149">149</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
198
198
  </div><h2 class="groupheader">Member Typedef Documentation</h2>
199
199
  <a id="ae61c0f266f26a22077c1e8409f6ba991"></a>
200
200
  <h2 class="memtitle"><span class="permalink"><a href="#ae61c0f266f26a22077c1e8409f6ba991">&#9670;&nbsp;</a></span>BasePTData</h2>
@@ -210,7 +210,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
210
210
  </table>
211
211
  </div><div class="memdoc">
212
212
 
213
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00118">118</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
213
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00152">152</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
214
214
 
215
215
  </div>
216
216
  </div>
@@ -228,7 +228,7 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
228
228
  </table>
229
229
  </div><div class="memdoc">
230
230
 
231
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00119">119</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
231
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00153">153</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
232
232
 
233
233
  </div>
234
234
  </div>
@@ -269,8 +269,8 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
269
269
  </table>
270
270
  </div><div class="memdoc">
271
271
 
272
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00121">121</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
273
- <div class="fragment"><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;: <a class="code" href="classSVF_1_1DiffPTData.html#ae61c0f266f26a22077c1e8409f6ba991">BasePTData</a>(reversePT, ty) { }</div><div class="ttc" id="classSVF_1_1DiffPTData_html_ae61c0f266f26a22077c1e8409f6ba991"><div class="ttname"><a href="classSVF_1_1DiffPTData.html#ae61c0f266f26a22077c1e8409f6ba991">SVF::DiffPTData::BasePTData</a></div><div class="ttdeci">PTData&lt; Key, KeySet, Data, DataSet &gt; BasePTData</div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00118">AbstractPointsToDS.h:118</a></div></div>
272
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00155">155</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
273
+ <div class="fragment"><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;: <a class="code" href="classSVF_1_1DiffPTData.html#ae61c0f266f26a22077c1e8409f6ba991">BasePTData</a>(reversePT, ty) { }</div><div class="ttc" id="classSVF_1_1DiffPTData_html_ae61c0f266f26a22077c1e8409f6ba991"><div class="ttname"><a href="classSVF_1_1DiffPTData.html#ae61c0f266f26a22077c1e8409f6ba991">SVF::DiffPTData::BasePTData</a></div><div class="ttdeci">PTData&lt; Key, KeySet, Data, DataSet &gt; BasePTData</div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00152">AbstractPointsToDS.h:152</a></div></div>
274
274
  </div><!-- fragment -->
275
275
  </div>
276
276
  </div>
@@ -299,8 +299,8 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
299
299
  </table>
300
300
  </div><div class="memdoc">
301
301
 
302
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00123">123</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
303
- <div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;{ }</div></div><!-- fragment -->
302
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00157">157</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
303
+ <div class="fragment"><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;{ }</div></div><!-- fragment -->
304
304
  </div>
305
305
  </div>
306
306
  <h2 class="groupheader">Member Function Documentation</h2>
@@ -331,8 +331,8 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
331
331
  </div><div class="memdoc">
332
332
  <p>Methods to support type inquiry through isa, cast, and dyn_cast: </p>
333
333
 
334
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00142">142</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
335
- <div class="fragment"><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; {</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div></div><!-- fragment -->
334
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00176">176</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
335
+ <div class="fragment"><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div></div><!-- fragment -->
336
336
  </div>
337
337
  </div>
338
338
  <a id="af182fd3695fee155abac8c2f0c402a17"></a>
@@ -361,8 +361,8 @@ template&lt;typename Key , typename KeySet , typename Data , typename DataSet &g
361
361
  </table>
362
362
  </div><div class="memdoc">
363
363
 
364
- <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00146">146</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
365
- <div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> ptd-&gt;getPTDTY() == PTDataTy::Diff</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; || ptd-&gt;getPTDTY() == PTDataTy::MutDiff</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; || ptd-&gt;getPTDTY() == PTDataTy::PersDiff;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }</div></div><!-- fragment -->
364
+ <p class="definition">Definition at line <a class="el" href="AbstractPointsToDS_8h_source.html#l00180">180</a> of file <a class="el" href="AbstractPointsToDS_8h_source.html">AbstractPointsToDS.h</a>.</p>
365
+ <div class="fragment"><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; {</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">return</span> ptd-&gt;getPTDTY() == PTDataTy::Diff</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; || ptd-&gt;getPTDTY() == PTDataTy::MutDiff</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; || ptd-&gt;getPTDTY() == PTDataTy::PersDiff;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div></div><!-- fragment -->
366
366
  </div>
367
367
  </div>
368
368
  <a id="a7784c4a76aa41149975840af8b32c2a9"></a>
@@ -415,7 +415,7 @@ Additional Inherited Members</h2></td></tr>
415
415
  <div class="ttc" id="classSVF_1_1SparseBitVector_html_a1b5abe09fd0fcd337385653cb47343c1"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#a1b5abe09fd0fcd337385653cb47343c1">SVF::SparseBitVector::end</a></div><div class="ttdeci">iterator end() const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l01118">SparseBitVector.h:1118</a></div></div>
416
416
  <div class="ttc" id="classSVF_1_1SparseBitVector_html_abf76d8157c49ddba24bdc9dab3655772"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#abf76d8157c49ddba24bdc9dab3655772">SVF::SparseBitVector::begin</a></div><div class="ttdeci">iterator begin() const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l01113">SparseBitVector.h:1113</a></div></div>
417
417
  <div class="ttc" id="classSVF_1_1SparseBitVector_html"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html">SVF::SparseBitVector</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00460">SparseBitVector.h:460</a></div></div>
418
- <div class="ttc" id="classSVF_1_1MRGenerator_html_ab4d1ff0357d389a65ff1c2112ce631a1"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#ab4d1ff0357d389a65ff1c2112ce631a1">SVF::MRGenerator::cptsToRepCPtsMap</a></div><div class="ttdeci">PtsToRepPtsSetMap cptsToRepCPtsMap</div><div class="ttdoc">Map a condition pts to its rep conditional pts (super set points-to) </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00276">MemRegion.h:276</a></div></div>
418
+ <div class="ttc" id="classSVF_1_1MRGenerator_html_ab4d1ff0357d389a65ff1c2112ce631a1"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#ab4d1ff0357d389a65ff1c2112ce631a1">SVF::MRGenerator::cptsToRepCPtsMap</a></div><div class="ttdeci">PtsToRepPtsSetMap cptsToRepCPtsMap</div><div class="ttdoc">Map a condition pts to its rep conditional pts (super set points-to) </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00280">MemRegion.h:280</a></div></div>
419
419
  <div class="ttc" id="classSVF_1_1SparseBitVector_html_a61bd86909a141f9de873d92c0f904832"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">SVF::SparseBitVector::set</a></div><div class="ttdeci">void set(unsigned Idx)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00745">SparseBitVector.h:745</a></div></div>
420
420
  </div><!-- fragment -->
421
421
  </div>
@@ -526,12 +526,12 @@ Additional Inherited Members</h2></td></tr>
526
526
  <p class="definition">Definition at line <a class="el" href="MemPartition_8cpp_source.html#l00091">91</a> of file <a class="el" href="MemPartition_8cpp_source.html">MemPartition.cpp</a>.</p>
527
527
  <div class="fragment"><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;{</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classSVF_1_1SparseBitVector_1_1SparseBitVectorIterator.html">NodeBS::iterator</a> ptsIt = pts.<a class="code" href="classSVF_1_1SparseBitVector.html#abf76d8157c49ddba24bdc9dab3655772">begin</a>();</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classSVF_1_1SparseBitVector_1_1SparseBitVectorIterator.html">NodeBS::iterator</a> ptsEit = pts.<a class="code" href="classSVF_1_1SparseBitVector.html#a1b5abe09fd0fcd337385653cb47343c1">end</a>();</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">for</span> (; ptsIt != ptsEit; ++ptsIt)</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; {</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span> = *ptsIt;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// create new conditional points-to set with this single element.</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a> newPts;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; newPts.<a class="code" href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">set</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classSVF_1_1MemRegion.html">MemRegion</a> mr(newPts);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; MRSet::iterator mit = <a class="code" href="classSVF_1_1MRGenerator.html#af94bd8155a23273aab2396334d905119">memRegSet</a>.find(&amp;mr);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; assert(mit!=<a class="code" href="classSVF_1_1MRGenerator.html#af94bd8155a23273aab2396334d905119">memRegSet</a>.end() &amp;&amp; <span class="stringliteral">&quot;memory region not found!!&quot;</span>);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; mrs.insert(*mit);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div><div class="ttc" id="classSVF_1_1SparseBitVector_1_1SparseBitVectorIterator_html"><div class="ttname"><a href="classSVF_1_1SparseBitVector_1_1SparseBitVectorIterator.html">SVF::SparseBitVector::SparseBitVectorIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00534">SparseBitVector.h:534</a></div></div>
528
528
  <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#l00019">MTAResultValidator.h:19</a></div></div>
529
- <div class="ttc" id="classSVF_1_1MRGenerator_html_af94bd8155a23273aab2396334d905119"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#af94bd8155a23273aab2396334d905119">SVF::MRGenerator::memRegSet</a></div><div class="ttdeci">MRSet memRegSet</div><div class="ttdoc">A set of All memory regions. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00274">MemRegion.h:274</a></div></div>
529
+ <div class="ttc" id="classSVF_1_1MRGenerator_html_af94bd8155a23273aab2396334d905119"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#af94bd8155a23273aab2396334d905119">SVF::MRGenerator::memRegSet</a></div><div class="ttdeci">MRSet memRegSet</div><div class="ttdoc">A set of All memory regions. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00278">MemRegion.h:278</a></div></div>
530
530
  <div class="ttc" id="classSVF_1_1SparseBitVector_html_a1b5abe09fd0fcd337385653cb47343c1"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#a1b5abe09fd0fcd337385653cb47343c1">SVF::SparseBitVector::end</a></div><div class="ttdeci">iterator end() const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l01118">SparseBitVector.h:1118</a></div></div>
531
531
  <div class="ttc" id="classSVF_1_1SparseBitVector_html_abf76d8157c49ddba24bdc9dab3655772"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#abf76d8157c49ddba24bdc9dab3655772">SVF::SparseBitVector::begin</a></div><div class="ttdeci">iterator begin() const</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l01113">SparseBitVector.h:1113</a></div></div>
532
532
  <div class="ttc" id="classSVF_1_1SparseBitVector_html"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html">SVF::SparseBitVector</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00460">SparseBitVector.h:460</a></div></div>
533
533
  <div class="ttc" id="classSVF_1_1SparseBitVector_html_a61bd86909a141f9de873d92c0f904832"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">SVF::SparseBitVector::set</a></div><div class="ttdeci">void set(unsigned Idx)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00745">SparseBitVector.h:745</a></div></div>
534
- <div class="ttc" id="classSVF_1_1MemRegion_html"><div class="ttname"><a href="classSVF_1_1MemRegion.html">SVF::MemRegion</a></div><div class="ttdoc">Memory Region class. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00051">MemRegion.h:51</a></div></div>
534
+ <div class="ttc" id="classSVF_1_1MemRegion_html"><div class="ttname"><a href="classSVF_1_1MemRegion.html">SVF::MemRegion</a></div><div class="ttdoc">Memory Region class. </div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00055">MemRegion.h:55</a></div></div>
535
535
  </div><!-- fragment -->
536
536
  </div>
537
537
  </div>
@@ -567,7 +567,7 @@ Additional Inherited Members</h2></td></tr>
567
567
  <p class="definition">Definition at line <a class="el" href="MemPartition_8cpp_source.html#l00042">42</a> of file <a class="el" href="MemPartition_8cpp_source.html">MemPartition.cpp</a>.</p>
568
568
  <div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordflow">for</span>(FunToPointsTosMap::iterator it = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().begin(), eit = <a class="code" href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">getFunToPointsToList</a>().end();</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; it!=eit; ++it)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; {</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = it-&gt;first;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a> mergePts;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">for</span>(PointsToList::iterator cit = it-&gt;second.begin(), ecit = it-&gt;second.end(); cit!=ecit; ++cit)</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; {</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>&amp; pts = *cit;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; mergePts |= pts;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classSVF_1_1DistinctMRG.html#a7a6ffa1c8dc8e624e3b42f97e6e4b393">createDistinctMR</a>(fun, mergePts);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; }</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
569
569
  <div class="ttc" id="classSVF_1_1DistinctMRG_html_a7a6ffa1c8dc8e624e3b42f97e6e4b393"><div class="ttname"><a href="classSVF_1_1DistinctMRG.html#a7a6ffa1c8dc8e624e3b42f97e6e4b393">SVF::DistinctMRG::createDistinctMR</a></div><div class="ttdeci">void createDistinctMR(const SVFFunction *func, const NodeBS &amp;cpts)</div><div class="ttdoc">Create memory regions for each points-to target. </div><div class="ttdef"><b>Definition:</b> <a href="MemPartition_8cpp_source.html#l00064">MemPartition.cpp:64</a></div></div>
570
- <div class="ttc" id="classSVF_1_1MRGenerator_html_a1331e6f0941838064d77a5adaa5c6303"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">SVF::MRGenerator::getFunToPointsToList</a></div><div class="ttdeci">FunToPointsTosMap &amp; getFunToPointsToList()</div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00367">MemRegion.h:367</a></div></div>
570
+ <div class="ttc" id="classSVF_1_1MRGenerator_html_a1331e6f0941838064d77a5adaa5c6303"><div class="ttname"><a href="classSVF_1_1MRGenerator.html#a1331e6f0941838064d77a5adaa5c6303">SVF::MRGenerator::getFunToPointsToList</a></div><div class="ttdeci">FunToPointsTosMap &amp; getFunToPointsToList()</div><div class="ttdef"><b>Definition:</b> <a href="MemRegion_8h_source.html#l00371">MemRegion.h:371</a></div></div>
571
571
  <div class="ttc" id="classSVF_1_1SparseBitVector_html"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html">SVF::SparseBitVector</a></div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00460">SparseBitVector.h:460</a></div></div>
572
572
  </div><!-- fragment -->
573
573
  </div>